From 74d7992dda4353adaaf606e1a74336c392f77521 Mon Sep 17 00:00:00 2001 From: Zhi Guan Date: Thu, 13 Jun 2019 20:35:11 +0800 Subject: [PATCH] Remove some ciphers --- Configure | 16 +- apps/build.info | 2 +- apps/cpk.c | 87 - apps/fpe.c | 286 -- apps/gmssl.c | 3 - apps/progs.h | 6 - crypto/bb1ibe/bb1ibe_asn1.c | 101 - crypto/bb1ibe/bb1ibe_err.c | 68 - crypto/bb1ibe/bb1ibe_lcl.h | 93 - crypto/bb1ibe/bb1ibe_lib.c | 1015 ------ crypto/bb1ibe/build.info | 2 - crypto/bfibe/bfibe_asn1.c | 100 - crypto/bfibe/bfibe_err.c | 66 - crypto/bfibe/bfibe_lcl.h | 102 - crypto/bfibe/bfibe_lib.c | 712 ----- crypto/bfibe/build.info | 2 - crypto/ec/build.info | 2 +- crypto/ec/ecahe.c | 456 --- crypto/ec2/bn_gfp2.c | 490 --- crypto/ec2/bn_hash.c | 137 - crypto/ec2/bn_solinas.c | 218 -- crypto/ec2/build.info | 3 - crypto/ec2/ec_hash.c | 181 -- crypto/ec2/ec_type1.c | 817 ----- crypto/ec2/fppoint.c | 114 - crypto/ec2/pairing_lcl.h | 24 - crypto/err/err.c | 6 - crypto/err/err_all.c | 18 - crypto/err/openssl.ec | 3 - crypto/ffx/build.info | 2 - crypto/ffx/ffx.c | 351 --- crypto/ffx/ffx_err.c | 50 - crypto/include/internal/evp_int.h | 3 - crypto/serpent/build.info | 2 - crypto/serpent/serpent.c | 308 -- crypto/serpent/serpent_locl.h | 112 - crypto/sm3/asm/sm3-586.pl | 1 - crypto/sm3/asm/sm3-x86_64.pl | 288 ++ crypto/sm3/build.info | 13 +- crypto/sm9/sm9_keygen.c | 2 - crypto/sm9/sm9_lib.c | 86 +- crypto/sm9/sm9_sign.c | 2 - crypto/speck/build.info | 2 - crypto/speck/speck.c | 198 -- crypto/speck/speck_lcl.h | 74 - doc/gmssl/deterministic-sm2.md | 7 + include/openssl/bb1ibe.h | 148 - include/openssl/bfibe.h | 146 - include/openssl/bn_gfp2.h | 96 - include/openssl/bn_hash.h | 68 - include/openssl/bn_solinas.h | 94 - include/openssl/ec_hash.h | 67 - include/openssl/ec_type1.h | 99 - include/openssl/ecahe.h | 74 - include/openssl/err.h | 9 - include/openssl/ffx.h | 117 - include/openssl/fppoint.h | 77 - include/openssl/serpent.h | 119 - include/openssl/sof.h | 170 -- include/openssl/speck.h | 91 - test/bb1ibetest.c | 134 - test/bfibetest.c | 133 - test/build.info | 31 +- test/ec2test.c | 69 - test/ffxtest.c | 163 - test/recipes/05-test_serpent.t | 12 - test/recipes/05-test_speck.t | 12 - test/recipes/15-test_bb1ibe.t | 12 - test/recipes/15-test_bfibe.t | 12 - test/recipes/15-test_ec2.t | 12 - test/recipes/30-test_ffx.t | 12 - test/saftest.c | 203 -- test/serpenttest.c | 174 -- test/softest.c | 69 - test/specktest.c | 130 - util/libcrypto.num | 4751 +++++++++++++++++++++++++++++ util/libssl.num | 411 +++ util/mkdef.pl | 16 +- 78 files changed, 5565 insertions(+), 8797 deletions(-) delete mode 100644 apps/cpk.c delete mode 100644 apps/fpe.c delete mode 100644 crypto/bb1ibe/bb1ibe_asn1.c delete mode 100644 crypto/bb1ibe/bb1ibe_err.c delete mode 100644 crypto/bb1ibe/bb1ibe_lcl.h delete mode 100644 crypto/bb1ibe/bb1ibe_lib.c delete mode 100644 crypto/bb1ibe/build.info delete mode 100644 crypto/bfibe/bfibe_asn1.c delete mode 100644 crypto/bfibe/bfibe_err.c delete mode 100644 crypto/bfibe/bfibe_lcl.h delete mode 100644 crypto/bfibe/bfibe_lib.c delete mode 100644 crypto/bfibe/build.info delete mode 100644 crypto/ec/ecahe.c delete mode 100644 crypto/ec2/bn_gfp2.c delete mode 100644 crypto/ec2/bn_hash.c delete mode 100644 crypto/ec2/bn_solinas.c delete mode 100644 crypto/ec2/build.info delete mode 100644 crypto/ec2/ec_hash.c delete mode 100644 crypto/ec2/ec_type1.c delete mode 100644 crypto/ec2/fppoint.c delete mode 100644 crypto/ec2/pairing_lcl.h delete mode 100644 crypto/ffx/build.info delete mode 100644 crypto/ffx/ffx.c delete mode 100644 crypto/ffx/ffx_err.c delete mode 100755 crypto/serpent/build.info delete mode 100755 crypto/serpent/serpent.c delete mode 100755 crypto/serpent/serpent_locl.h delete mode 100644 crypto/sm3/asm/sm3-586.pl delete mode 100755 crypto/speck/build.info delete mode 100755 crypto/speck/speck.c delete mode 100644 crypto/speck/speck_lcl.h create mode 100644 doc/gmssl/deterministic-sm2.md delete mode 100644 include/openssl/bb1ibe.h delete mode 100644 include/openssl/bfibe.h delete mode 100644 include/openssl/bn_gfp2.h delete mode 100644 include/openssl/bn_hash.h delete mode 100644 include/openssl/bn_solinas.h delete mode 100644 include/openssl/ec_hash.h delete mode 100644 include/openssl/ec_type1.h delete mode 100644 include/openssl/ecahe.h delete mode 100644 include/openssl/ffx.h delete mode 100644 include/openssl/fppoint.h delete mode 100644 include/openssl/serpent.h delete mode 100644 include/openssl/sof.h delete mode 100644 include/openssl/speck.h delete mode 100644 test/bb1ibetest.c delete mode 100644 test/bfibetest.c delete mode 100644 test/ec2test.c delete mode 100644 test/ffxtest.c delete mode 100644 test/recipes/05-test_serpent.t delete mode 100644 test/recipes/05-test_speck.t delete mode 100644 test/recipes/15-test_bb1ibe.t delete mode 100644 test/recipes/15-test_bfibe.t delete mode 100644 test/recipes/15-test_ec2.t delete mode 100644 test/recipes/30-test_ffx.t delete mode 100644 test/saftest.c delete mode 100755 test/serpenttest.c delete mode 100644 test/softest.c delete mode 100644 test/specktest.c diff --git a/Configure b/Configure index fc952529..a8f7e50f 100755 --- a/Configure +++ b/Configure @@ -312,9 +312,9 @@ $config{sdirs} = [ "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", - "sm3", "base58", "sms4", "zuc", "serpent", "speck", "kdf2", "ffx", "otp", - "ecies", "sm2", "paillier", "ec2", "sm9", "bfibe", "bb1ibe", - "gmapi", "skf", "sdf", "saf", "sof" + "sm3", "base58", "sms4", "zuc", "kdf2", "otp", + "ecies", "sm2", "paillier", "sm9", + "gmapi", "skf", "sdf" ]; # Known TLS and DTLS protocols @@ -421,8 +421,6 @@ my @disablables = ( "otp", "gmapi", "ec2", - "bfibe", - "bb1ibe", "sm9", "sdf", "skf", @@ -433,8 +431,6 @@ my @disablables = ( "rsa", "pem", "pkcs7", - "serpent", - "speck", "base58", "java", "ca", @@ -480,7 +476,6 @@ our %disabled = ( # "what" => "comment" "skfeng" => "default", "sdfeng" => "default", "gmieng" => "default", - "speck" => "default", ); # Note: => pair form used for aesthetics, not to truly make a hash table @@ -499,15 +494,12 @@ my @disable_cascades = ( "dtls" => [ @dtls ], "sm3" => [ "sm2" ], - "sdf" => [ "saf" ], - "saf" => [ "sof" ], # SSL 3.0, (D)TLS 1.0 and TLS 1.1 require MD5 and SHA "md5" => [ "ssl", "tls1", "tls1_1", "dtls1", "engine" ], # current pkcs12 rfc only define sha1/des bag - "sha" => [ "ssl", "tls1", "tls1_1", "dtls1", "engine", "rsa", "dh", "dsa", "ocsp", "ct", "srp", "ts", "ec2"], + "sha" => [ "ssl", "tls1", "tls1_1", "dtls1", "engine", "rsa", "dh", "dsa", "ocsp", "ct", "srp", "ts"], "aes" => [ "engine" ], - "ec2" => [ "sm9", "bfibe", "bb1ibe" ], # Additionally, SSL 3.0 requires either RSA or DSA+DH sub { $disabled{rsa} diff --git a/apps/build.info b/apps/build.info index b0df7f05..37f8241f 100644 --- a/apps/build.info +++ b/apps/build.info @@ -11,7 +11,7 @@ IF[{- !$disabled{apps} -}] s_client.c s_server.c s_time.c sess_id.c smime.c speed.c spkac.c \ srp.c ts.c verify.c version.c x509.c rehash.c \ apps.c opt.c s_cb.c s_socket.c \ - app_rand.c cpk.c otp.c fpe.c paiutl.c \ + app_rand.c otp.c paiutl.c \ sm2.c sm2utl.c sdf.c skf.c \ sm9param.c gensm9.c sm9.c sm9utl.c \ {- $target{apps_aux_src} -} diff --git a/apps/cpk.c b/apps/cpk.c deleted file mode 100644 index 1c797814..00000000 --- a/apps/cpk.c +++ /dev/null @@ -1,87 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2017 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ -/* - * gmssl cpk -help - * gmssl cpk -genmsk -out - * gmssl cpk -params -text - * gmssl cpk -genkey -in -id - */ - -#include -#ifdef OPENSSL_NO_CPK -NON_EMPTY_TRANSLATION_UNIT -#else - -# include -# include -# include -# include "apps.h" -# include -# include -# include -# include -# include - -typedef enum OPTION_choice { - OPT_ERR = -1, - OPT_EOF = 0, - OPT_HELP -} OPTION_CHOICE; - -OPTIONS cpk_options[] = { - {"help", OPT_HELP, '-', "Display this summary"}, - {NULL} -}; - -int cpk_main(int argc, char **argv) -{ - printf("cpk not implemented\n"); - return 0; -} -#endif diff --git a/apps/fpe.c b/apps/fpe.c deleted file mode 100644 index 0b42d361..00000000 --- a/apps/fpe.c +++ /dev/null @@ -1,286 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2018 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#ifdef OPENSSL_NO_FPE -NON_EMPTY_TRANSLATION_UNIT -#else - -# include -# include -# include -# include -# include -# include -# include -# include "apps.h" - -typedef enum OPTION_choice { - OPT_ERR = -1, OPT_EOF = 0, OPT_HELP, - OPT_LIST, - OPT_E, OPT_D, - OPT_CIPHER, OPT_UPPER_K, OPT_TWEAK, - OPT_ENGINE, OPT_CONFIG -} OPTION_CHOICE; - -OPTIONS fpe_options[] = { - {"help", OPT_HELP, '-', "Display this summary"}, - {"ciphers", OPT_LIST, '-', "List ciphers"}, - {"e", OPT_E, '-', "Encrypt"}, - {"d", OPT_D, '-', "Decrypt"}, - {"K", OPT_UPPER_K, 's', "Raw key, in hex"}, - {"tweak", OPT_TWEAK, 's', "Tweak string"}, - {"", OPT_CIPHER, '-', "Any supported cipher"}, -#ifndef OPENSSL_NO_ENGINE - {"engine", OPT_ENGINE, 's', "Use engine, possibly a hardware device"}, - {"config", OPT_CONFIG, 's', "A config file"}, -#endif - {NULL} -}; - -static void show_ciphers(const OBJ_NAME *name, void *bio_); -static int set_hex(char *in, unsigned char *out, int size); - -int fpe_main(int argc, char **argv) -{ - int ret = 1; - BIO *in = NULL, *out = NULL; - char *prog; - OPTION_CHOICE o; - int enc = 1; - unsigned char key[32] = {0}; - char *hkey = NULL, *tweak = NULL; - const EVP_CIPHER *cipher = NULL; - CONF *conf = NULL; - char *configfile = default_config_file; - ENGINE *e = NULL; - char inbuf[32] = {0}; - char outbuf[32] = {0}; - FFX_CTX *ctx = NULL; - - - prog = opt_init(argc, argv, fpe_options); - while ((o = opt_next()) != OPT_EOF) { - switch (o) { - case OPT_EOF: - case OPT_ERR: -help: - BIO_printf(bio_err, "%s: Use -help for summary.\n", prog); - goto end; - case OPT_HELP: - opt_help(fpe_options); - ret = 0; - goto end; - case OPT_LIST: - BIO_printf(bio_err, "Supported ciphers:\n"); - OBJ_NAME_do_all_sorted(OBJ_NAME_TYPE_CIPHER_METH, - show_ciphers, bio_err); - BIO_printf(bio_err, "\n"); - goto end; - case OPT_E: - enc = 1; - break; - case OPT_D: - enc = 0; - break; - case OPT_UPPER_K: - hkey = opt_arg(); - break; - case OPT_TWEAK: - tweak = opt_arg(); - break; - case OPT_CIPHER: - if (!opt_cipher(opt_unknown(), &cipher)) - goto help; - break; - case OPT_ENGINE: - e = setup_engine(opt_arg(), 0); - break; - case OPT_CONFIG: - configfile = opt_arg(); - break; - } - } - argc = opt_num_rest(); - if (argc != 0) - goto help; - - in = BIO_new_fp(stdin, BIO_NOCLOSE); - out = BIO_new_fp(stdout, BIO_NOCLOSE); - - /* engine */ - if (e) - BIO_printf(bio_err, "Using configuration from %s\n", configfile); - - if ((conf = app_load_config(configfile)) == NULL) - goto end; - if (configfile != default_config_file && !app_load_modules(conf)) - goto end; - - /* get cipher */ - if (EVP_CIPHER_mode(cipher) != EVP_CIPH_ECB_MODE) { - BIO_printf(bio_err, "%s: Only block cipher with ECB mode is supported\n", prog); - goto end; - } - - /* get key */ - if (!hkey) { - BIO_printf(bio_err, "%s: no key given\n", prog); - goto end; - } - if (!set_hex(hkey, key, EVP_CIPHER_key_length(cipher))) { - BIO_printf(bio_err, "%s: invalid hex key value\n", prog); - goto end; - } - - /* get tweak */ - if (!tweak) { - BIO_printf(bio_err, "%s: `-tweak` required\n", prog); - goto end; - } - if (strlen(tweak) < FFX_MIN_TWEAKLEN || strlen(tweak) > FFX_MAX_TWEAKLEN) { - BIO_printf(bio_err, "%s: invalid tweak length, should be %d to %d\n", - prog, FFX_MIN_TWEAKLEN, FFX_MAX_TWEAKLEN); - goto end; - } - - /* get input digits */ - if (BIO_read(in, inbuf, sizeof(inbuf) - 1) <= 0) { - ERR_print_errors(bio_err); - goto end; - } - if (strlen(inbuf) < FFX_MIN_DIGITS || strlen(inbuf) > FFX_MAX_DIGITS) { - BIO_printf(bio_err, "%s: invalid digits length, should be %d to %d\n", - prog, FFX_MIN_DIGITS, FFX_MAX_DIGITS); - goto end; - } - - /* encrypt/decrypt */ - if (!(ctx = FFX_CTX_new()) - || !FFX_init(ctx, cipher, key, 0)) { - ERR_print_errors(bio_err); - goto end; - } - if (enc) { - if (!FFX_encrypt(ctx, inbuf, outbuf, strlen(inbuf), - (unsigned char *)tweak, strlen(tweak))) { - ERR_print_errors(bio_err); - goto end; - } - } else { - if (!FFX_decrypt(ctx, inbuf, outbuf, strlen(inbuf), - (unsigned char *)tweak, strlen(tweak))) { - ERR_print_errors(bio_err); - goto end; - } - } - - if (BIO_write(out, outbuf, strlen(outbuf)) != strlen(outbuf)) { - ERR_print_errors(bio_err); - goto end; - } - BIO_puts(out, "\n"); - - ret = 0; - -end: - BIO_free(in); - BIO_free(out); - OPENSSL_cleanse(key, sizeof(key)); - if (enc) - OPENSSL_cleanse(inbuf, sizeof(inbuf)); - FFX_CTX_free(ctx); - return ret; -} - -static void show_ciphers(const OBJ_NAME *name, void *bio_) -{ - BIO *bio = bio_; - static int n; - - if (!islower((unsigned char)*name->name)) - return; - - BIO_printf(bio, "-%-25s", name->name); - if (++n == 3) { - BIO_printf(bio, "\n"); - n = 0; - } else - BIO_printf(bio, " "); -} - -static int set_hex(char *in, unsigned char *out, int size) -{ - int i, n; - unsigned char j; - - n = strlen(in); - if (n > (size * 2)) { - BIO_printf(bio_err, "hex string is too long\n"); - return (0); - } - memset(out, 0, size); - for (i = 0; i < n; i++) { - j = (unsigned char)*in; - *(in++) = '\0'; - if (j == 0) - break; - if (!isxdigit(j)) { - BIO_printf(bio_err, "non-hex digit\n"); - return (0); - } - j = (unsigned char)OPENSSL_hexchar2int(j); - if (i & 1) - out[i / 2] |= j; - else - out[i / 2] = (j << 4); - } - return (1); -} -#endif diff --git a/apps/gmssl.c b/apps/gmssl.c index 40981f64..d1933846 100644 --- a/apps/gmssl.c +++ b/apps/gmssl.c @@ -545,9 +545,6 @@ static int SortFnByName(const void *_f1, const void *_f2) static void list_disabled(void) { BIO_puts(bio_out, "Disabled algorithms:\n"); -#ifdef OPENSSL_NO_CPK - BIO_puts(bio_out, "CPK\n"); -#endif #ifdef OPENSSL_NO_SM9 BIO_puts(bio_out, "SM9\n"); #endif diff --git a/apps/progs.h b/apps/progs.h index 141d33d2..5ff68c27 100644 --- a/apps/progs.h +++ b/apps/progs.h @@ -28,7 +28,6 @@ extern int asn1parse_main(int argc, char *argv[]); extern int ca_main(int argc, char *argv[]); extern int ciphers_main(int argc, char *argv[]); extern int cms_main(int argc, char *argv[]); -extern int cpk_main(int argc, char *argv[]); extern int crl_main(int argc, char *argv[]); extern int crl2pkcs7_main(int argc, char *argv[]); extern int dgst_main(int argc, char *argv[]); @@ -41,7 +40,6 @@ extern int enc_main(int argc, char *argv[]); extern int engine_main(int argc, char *argv[]); extern int errstr_main(int argc, char *argv[]); extern int exit_main(int argc, char *argv[]); -extern int fpe_main(int argc, char *argv[]); extern int gendsa_main(int argc, char *argv[]); extern int genpkey_main(int argc, char *argv[]); extern int genrsa_main(int argc, char *argv[]); @@ -89,7 +87,6 @@ extern OPTIONS asn1parse_options[]; extern OPTIONS ca_options[]; extern OPTIONS ciphers_options[]; extern OPTIONS cms_options[]; -extern OPTIONS cpk_options[]; extern OPTIONS crl_options[]; extern OPTIONS crl2pkcs7_options[]; extern OPTIONS dgst_options[]; @@ -102,7 +99,6 @@ extern OPTIONS enc_options[]; extern OPTIONS engine_options[]; extern OPTIONS errstr_options[]; extern OPTIONS exit_options[]; -extern OPTIONS fpe_options[]; extern OPTIONS gendsa_options[]; extern OPTIONS genpkey_options[]; extern OPTIONS genrsa_options[]; @@ -158,7 +154,6 @@ static FUNCTION functions[] = { #ifndef OPENSSL_NO_CMS { FT_general, "cms", cms_main, cms_options }, #endif - { FT_general, "cpk", cpk_main, cpk_options }, { FT_general, "crl", crl_main, crl_options }, { FT_general, "crl2pkcs7", crl2pkcs7_main, crl2pkcs7_options }, { FT_general, "dgst", dgst_main, dgst_options }, @@ -183,7 +178,6 @@ static FUNCTION functions[] = { #endif { FT_general, "errstr", errstr_main, errstr_options }, { FT_general, "exit", exit_main, exit_options }, - { FT_general, "fpe", fpe_main, fpe_options }, #ifndef OPENSSL_NO_DSA { FT_general, "gendsa", gendsa_main, gendsa_options }, #endif diff --git a/crypto/bb1ibe/bb1ibe_asn1.c b/crypto/bb1ibe/bb1ibe_asn1.c deleted file mode 100644 index 84254054..00000000 --- a/crypto/bb1ibe/bb1ibe_asn1.c +++ /dev/null @@ -1,101 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include "bb1ibe_lcl.h" - -ASN1_SEQUENCE(BB1PublicParameters) = { - ASN1_SIMPLE(BB1PublicParameters, version, LONG), - ASN1_SIMPLE(BB1PublicParameters, curve, ASN1_OBJECT), - ASN1_SIMPLE(BB1PublicParameters, p, BIGNUM), - ASN1_SIMPLE(BB1PublicParameters, q, BIGNUM), - ASN1_SIMPLE(BB1PublicParameters, pointP, FpPoint), - ASN1_SIMPLE(BB1PublicParameters, pointP1, FpPoint), - ASN1_SIMPLE(BB1PublicParameters, pointP2, FpPoint), - ASN1_SIMPLE(BB1PublicParameters, pointP3, FpPoint), - ASN1_SIMPLE(BB1PublicParameters, v, FpPoint), - ASN1_SIMPLE(BB1PublicParameters, hashfcn, ASN1_OBJECT) -} ASN1_SEQUENCE_END(BB1PublicParameters) -IMPLEMENT_ASN1_FUNCTIONS(BB1PublicParameters) -IMPLEMENT_ASN1_DUP_FUNCTION(BB1PublicParameters) - -ASN1_SEQUENCE(BB1MasterSecret) = { - ASN1_SIMPLE(BB1MasterSecret, version, LONG), - ASN1_SIMPLE(BB1MasterSecret, alpha, BIGNUM), - ASN1_SIMPLE(BB1MasterSecret, beta, BIGNUM), - ASN1_SIMPLE(BB1MasterSecret, gamma, BIGNUM) -} ASN1_SEQUENCE_END(BB1MasterSecret) -IMPLEMENT_ASN1_FUNCTIONS(BB1MasterSecret) -IMPLEMENT_ASN1_DUP_FUNCTION(BB1MasterSecret) - -ASN1_SEQUENCE(BB1PrivateKeyBlock) = { - ASN1_SIMPLE(BB1PrivateKeyBlock, version, LONG), - ASN1_SIMPLE(BB1PrivateKeyBlock, pointD0, FpPoint), - ASN1_SIMPLE(BB1PrivateKeyBlock, pointD1, FpPoint) -} ASN1_SEQUENCE_END(BB1PrivateKeyBlock) -IMPLEMENT_ASN1_FUNCTIONS(BB1PrivateKeyBlock) -IMPLEMENT_ASN1_DUP_FUNCTION(BB1PrivateKeyBlock) - -ASN1_SEQUENCE(BB1CiphertextBlock) = { - ASN1_SIMPLE(BB1CiphertextBlock, version, LONG), - ASN1_SIMPLE(BB1CiphertextBlock, pointChi0, FpPoint), - ASN1_SIMPLE(BB1CiphertextBlock, pointChi1, FpPoint), - ASN1_SIMPLE(BB1CiphertextBlock, nu, BIGNUM), - ASN1_SIMPLE(BB1CiphertextBlock, y, ASN1_OCTET_STRING) -} ASN1_SEQUENCE_END(BB1CiphertextBlock) -IMPLEMENT_ASN1_FUNCTIONS(BB1CiphertextBlock) -IMPLEMENT_ASN1_DUP_FUNCTION(BB1CiphertextBlock) - diff --git a/crypto/bb1ibe/bb1ibe_err.c b/crypto/bb1ibe/bb1ibe_err.c deleted file mode 100644 index 8a9da30f..00000000 --- a/crypto/bb1ibe/bb1ibe_err.c +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. - * - * 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 - -/* BEGIN ERROR CODES */ -#ifndef OPENSSL_NO_ERR - -# define ERR_FUNC(func) ERR_PACK(ERR_LIB_BB1IBE,func,0) -# define ERR_REASON(reason) ERR_PACK(ERR_LIB_BB1IBE,0,reason) - -static ERR_STRING_DATA BB1IBE_str_functs[] = { - {ERR_FUNC(BB1IBE_F_BB1CIPHERTEXTBLOCK_HASH_TO_RANGE), - "BB1CiphertextBlock_hash_to_range"}, - {ERR_FUNC(BB1IBE_F_BB1IBE_DECRYPT), "BB1IBE_decrypt"}, - {ERR_FUNC(BB1IBE_F_BB1IBE_DOUBLE_HASH), "BB1IBE_double_hash"}, - {ERR_FUNC(BB1IBE_F_BB1IBE_DO_DECRYPT), "BB1IBE_do_decrypt"}, - {ERR_FUNC(BB1IBE_F_BB1IBE_DO_ENCRYPT), "BB1IBE_do_encrypt"}, - {ERR_FUNC(BB1IBE_F_BB1IBE_ENCRYPT), "BB1IBE_encrypt"}, - {ERR_FUNC(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY), - "BB1IBE_extract_private_key"}, - {ERR_FUNC(BB1IBE_F_BB1IBE_SETUP), "BB1IBE_setup"}, - {0, NULL} -}; - -static ERR_STRING_DATA BB1IBE_str_reasons[] = { - {ERR_REASON(BB1IBE_R_BB1CIPHERTEXT_INVALID_MAC), - "bb1ciphertext invalid mac"}, - {ERR_REASON(BB1IBE_R_BB1IBE_HASH_FAILURE), "bb1ibe hash failure"}, - {ERR_REASON(BB1IBE_R_BUFFER_TOO_SMALL), "buffer too small"}, - {ERR_REASON(BB1IBE_R_COMPUTE_OUTLEN_FAILURE), "compute outlen failure"}, - {ERR_REASON(BB1IBE_R_COMPUTE_TATE_FAILURE), "compute tate failure"}, - {ERR_REASON(BB1IBE_R_D2I_FAILURE), "d2i failure"}, - {ERR_REASON(BB1IBE_R_DECRYPT_FAILURE), "decrypt failure"}, - {ERR_REASON(BB1IBE_R_DOUBLE_HASH_FAILURE), "double hash failure"}, - {ERR_REASON(BB1IBE_R_ENCRYPT_FAILURE), "encrypt failure"}, - {ERR_REASON(BB1IBE_R_I2D_FAILURE), "i2d failure"}, - {ERR_REASON(BB1IBE_R_INVALID_INPUT), "invalid input"}, - {ERR_REASON(BB1IBE_R_INVALID_MD), "invalid md"}, - {ERR_REASON(BB1IBE_R_INVALID_OUTPUT_BUFFER), "invalid output buffer"}, - {ERR_REASON(BB1IBE_R_INVALID_TYPE1CURVE), "invalid type1curve"}, - {ERR_REASON(BB1IBE_R_NOT_NAMED_CURVE), "not named curve"}, - {ERR_REASON(BB1IBE_R_PARSE_PAIRING), "parse pairing"}, - {0, NULL} -}; - -#endif - -int ERR_load_BB1IBE_strings(void) -{ -#ifndef OPENSSL_NO_ERR - - if (ERR_func_error_string(BB1IBE_str_functs[0].error) == NULL) { - ERR_load_strings(0, BB1IBE_str_functs); - ERR_load_strings(0, BB1IBE_str_reasons); - } -#endif - return 1; -} diff --git a/crypto/bb1ibe/bb1ibe_lcl.h b/crypto/bb1ibe/bb1ibe_lcl.h deleted file mode 100644 index 2cb3dbbb..00000000 --- a/crypto/bb1ibe/bb1ibe_lcl.h +++ /dev/null @@ -1,93 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include -#include -#include -#include -#include -#include - - -struct BB1PublicParameters_st { - long version; - ASN1_OBJECT *curve; - BIGNUM *p; - BIGNUM *q; - FpPoint *pointP; - FpPoint *pointP1; - FpPoint *pointP2; - FpPoint *pointP3; - FpPoint *v; - ASN1_OBJECT *hashfcn; -}; - -struct BB1MasterSecret_st { - long version; - BIGNUM *alpha; - BIGNUM *beta; - BIGNUM *gamma; -}; - -struct BB1PrivateKeyBlock_st { - long version; - FpPoint *pointD0; - FpPoint *pointD1; -}; - -struct BB1CiphertextBlock_st { - long version; - FpPoint *pointChi0; - FpPoint *pointChi1; - BIGNUM *nu; - ASN1_OCTET_STRING *y; -}; - diff --git a/crypto/bb1ibe/bb1ibe_lib.c b/crypto/bb1ibe/bb1ibe_lib.c deleted file mode 100644 index 439d11e0..00000000 --- a/crypto/bb1ibe/bb1ibe_lib.c +++ /dev/null @@ -1,1015 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include "bb1ibe_lcl.h" - - -int BB1IBE_setup(const EC_GROUP *group, const EVP_MD *md, - BB1PublicParameters **pmpk, BB1MasterSecret **pmsk) -{ - int ret = 0; - BB1PublicParameters *mpk = NULL; - BB1MasterSecret *msk = NULL; - BN_CTX *bn_ctx = NULL; - EC_POINT *point = NULL; - EC_POINT *point1 = NULL; - BN_GFP2 *theta = NULL; - BIGNUM *a; - BIGNUM *b; - - if (!group || !pmpk || !pmsk) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (!(bn_ctx = BN_CTX_new())) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, ERR_R_MALLOC_FAILURE); - goto end; - } - BN_CTX_start(bn_ctx); - - mpk = BB1PublicParameters_new(); - msk = BB1MasterSecret_new(); - point = EC_POINT_new(group); - point1 = EC_POINT_new(group); - theta = BN_GFP2_new(); - a = BN_CTX_get(bn_ctx); - b = BN_CTX_get(bn_ctx); - - if (!mpk || !msk || !a || !b || !point || !point1 || !theta) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, ERR_R_MALLOC_FAILURE); - goto end; - } - - /* - * set mpk->version - * set mpk->curve - * set mpk->p - * set mpk->q - * set mpk->pointP - * set mpk->hashfcn - */ - - mpk->version = BB1IBE_VERSION; - - OPENSSL_assert(mpk->curve); - ASN1_OBJECT_free(mpk->curve); - if (!(mpk->curve = OBJ_nid2obj(NID_type1curve))) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, BB1IBE_R_NOT_NAMED_CURVE); - goto end; - } - - if (!EC_GROUP_get_curve_GFp(group, mpk->p, a, b, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, BB1IBE_R_INVALID_TYPE1CURVE); - goto end; - } - - if (!EC_GROUP_get_order(group, mpk->q, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, BB1IBE_R_INVALID_TYPE1CURVE); - goto end; - } - - if (!EC_POINT_get_affine_coordinates_GFp(group, EC_GROUP_get0_generator(group), - mpk->pointP->x, mpk->pointP->y, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, BB1IBE_R_PARSE_PAIRING); - goto end; - } - - ASN1_OBJECT_free(mpk->hashfcn); - if (!(mpk->hashfcn = OBJ_nid2obj(EVP_MD_type(md)))) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, BB1IBE_R_PARSE_PAIRING); - goto end; - } - - /* - * set msk->version - * random msk->alpha in [1, q - 1] - * random msk->beta in [1, q - 1] - * random msk->gamma in [1, q - 1] - */ - - msk->version = BB1IBE_VERSION; - - do { - if (!BN_rand_range(msk->alpha, mpk->q)) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, ERR_R_BN_LIB); - goto end; - } - } while (BN_is_zero(msk->alpha)); - - do { - if (!BN_rand_range(msk->beta, mpk->q)) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, ERR_R_BN_LIB); - goto end; - } - } while (BN_is_zero(msk->beta)); - - do { - if (!BN_rand_range(msk->gamma, mpk->q)) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, ERR_R_BN_LIB); - goto end; - } - } while (BN_is_zero(msk->gamma)); - - /* - * mpk->pointP1 = msk->alpha * mpk->pointP - * mpk->pointP2 = msk->beta * mpk->pointP - */ - - if (!EC_POINT_mul(group, point, msk->alpha, NULL, NULL, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_get_affine_coordinates_GFp(group, point, - mpk->pointP1->x, mpk->pointP1->y, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, ERR_R_EC_LIB); - goto end; - } - - if (!EC_POINT_mul(group, point1, msk->beta, NULL, NULL, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_get_affine_coordinates_GFp(group, point1, - mpk->pointP2->x, mpk->pointP2->y, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, ERR_R_EC_LIB); - goto end; - } - - /* - * mpk->v = e(mpk->pointP1, mpk->pointP2) in GF(p^2) - * convert pairing result from BN_GFP2 to FpPoint - */ - - if (!EC_type1curve_tate(group, theta, point, point1, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, ERR_R_EC_LIB); - goto end; - } - - if (!BN_copy(mpk->v->x, theta->a0)) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, ERR_R_BN_LIB); - goto end; - } - if (!BN_copy(mpk->v->y, theta->a1)) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, ERR_R_BN_LIB); - goto end; - } - - /* - * mpk->pointP3 = msk->gamma * mpk->pointP - * (careful: re-use tmp variable `point1` for pointP3) - */ - - if (!EC_POINT_mul(group, point, msk->gamma, NULL, NULL, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_get_affine_coordinates_GFp(group, point, - mpk->pointP3->x, mpk->pointP3->y, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_SETUP, ERR_R_EC_LIB); - goto end; - } - - *pmpk = mpk; - *pmsk = msk; - ret = 1; - -end: - if (!ret) { - BB1PublicParameters_free(mpk); - BB1MasterSecret_free(msk); - *pmpk = NULL; - *pmsk = NULL; - } - if (bn_ctx) { - BN_CTX_end(bn_ctx); - } - BN_CTX_free(bn_ctx); - EC_POINT_free(point); - EC_POINT_free(point1); - BN_GFP2_free(theta); - return ret; -} - -BB1PrivateKeyBlock *BB1IBE_extract_private_key(BB1PublicParameters *mpk, - BB1MasterSecret *msk, const char *id, size_t idlen) -{ - int e = 1; - BB1PrivateKeyBlock *ret = NULL; - BN_CTX *bn_ctx = NULL; - EC_GROUP *group = NULL; - EC_POINT *point = NULL; - const EVP_MD *md; - BIGNUM *r; - BIGNUM *y; - BIGNUM *hid; - - if (!mpk || !msk || !id || idlen <= 0) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, ERR_R_PASSED_NULL_PARAMETER); - return NULL; - } - - if (!(bn_ctx = BN_CTX_new())) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, ERR_R_MALLOC_FAILURE); - goto end; - } - BN_CTX_start(bn_ctx); - - /* get group */ - if (!(group = EC_GROUP_new_type1curve(mpk->p, mpk->pointP->x, - mpk->pointP->y, mpk->q, bn_ctx))) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, BB1IBE_R_INVALID_TYPE1CURVE); - goto end; - } - - ret = BB1PrivateKeyBlock_new(); - point = EC_POINT_new(group); - r = BN_CTX_get(bn_ctx); - y = BN_CTX_get(bn_ctx); - hid = BN_CTX_get(bn_ctx); - - if (!ret || !point || !r || !y || !hid) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, ERR_R_MALLOC_FAILURE); - goto end; - } - - /* set ret->version */ - ret->version = BB1IBE_VERSION; - - /* random r in [1, q - 1] */ - do { - if (!BN_rand_range(r, mpk->q)) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, - ERR_R_BN_LIB); - goto end; - } - } while (BN_is_zero(r)); - - /* md = mpk->hashfcn */ - if (!(md = EVP_get_digestbyobj(mpk->hashfcn))) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, BB1IBE_R_INVALID_MD); - goto end; - } - - /* hid = HashToRange(id), hid in [0, q - 1] */ - if (!BN_hash_to_range(md, &hid, id, idlen, mpk->q, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, ERR_R_BN_LIB); - goto end; - } - - /* y = msk->alpha * msk->beta + r * (msk->alpha * hid + msk->gamma) in F_q - * hid = hid * msk->alpha - * hid = hid + msk->gamma - * hid = hid * r - * y = msk->alpha * msk->beta - * y = y + hid - */ - if (!BN_mod_mul(hid, hid, msk->alpha, mpk->q, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_add(hid, hid, msk->gamma, mpk->q, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_mul(hid, hid, r, mpk->q, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_mul(y, msk->alpha, msk->beta, mpk->q, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_add(y, y, hid, mpk->q, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, ERR_R_BN_LIB); - goto end; - } - - /* sk->pointD0 = y * mpk->pointP */ - if (!EC_POINT_mul(group, point, y, NULL, NULL, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_get_affine_coordinates_GFp(group, point, - ret->pointD0->x, ret->pointD0->y, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, ERR_R_EC_LIB); - goto end; - } - - /* sk->pointD1 = r * mpk->pointP */ - if (!EC_POINT_mul(group, point, r, NULL, NULL, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_get_affine_coordinates_GFp(group, point, - ret->pointD1->x, ret->pointD1->y, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY, ERR_R_EC_LIB); - goto end; - } - - e = 0; - -end: - if (e && ret) { - BB1PrivateKeyBlock_free(ret); - ret = NULL; - } - if (bn_ctx) { - BN_CTX_end(bn_ctx); - } - BN_CTX_free(bn_ctx); - EC_POINT_free(point); - return ret; -} - -/* - * return H(H(m)||m) || H(m), return length is 2*hashlen - */ -static int BB1IBE_double_hash(const EVP_MD *md, const unsigned char *in, size_t inlen, - unsigned char *out, size_t *outlen) -{ - int ret = 0; - EVP_MD_CTX *ctx = NULL; - unsigned int len = EVP_MD_size(md); - - if (!md || !in || inlen <= 0 || !outlen) { - BB1IBEerr(BB1IBE_F_BB1IBE_DOUBLE_HASH, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - if (in == out) { - BB1IBEerr(BB1IBE_F_BB1IBE_DOUBLE_HASH, BB1IBE_R_INVALID_OUTPUT_BUFFER); - return 0; - } - - if (!out) { - *outlen = EVP_MD_size(md) * 2; - return 1; - } - if (*outlen < EVP_MD_size(md) * 2) { - BB1IBEerr(BB1IBE_F_BB1IBE_DOUBLE_HASH, BB1IBE_R_BUFFER_TOO_SMALL); - return 0; - } - - if (!EVP_Digest(in, inlen, out + EVP_MD_size(md), &len, md, NULL)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DOUBLE_HASH, ERR_R_EVP_LIB); - goto end; - } - - if (!(ctx = EVP_MD_CTX_new())) { - BB1IBEerr(BB1IBE_F_BB1IBE_DOUBLE_HASH, ERR_R_MALLOC_FAILURE); - goto end; - } - if (!EVP_DigestInit_ex(ctx, md, NULL)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DOUBLE_HASH, ERR_R_EVP_LIB); - goto end; - } - if (!EVP_DigestUpdate(ctx, out + EVP_MD_size(md), EVP_MD_size(md))) { - BB1IBEerr(BB1IBE_F_BB1IBE_DOUBLE_HASH, ERR_R_EVP_LIB); - goto end; - } - if (!EVP_DigestUpdate(ctx, in, inlen)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DOUBLE_HASH, ERR_R_EVP_LIB); - goto end; - } - len = EVP_MD_size(md); - if (!EVP_DigestFinal_ex(ctx, out, &len)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DOUBLE_HASH, ERR_R_EVP_LIB); - goto end; - } - - *outlen = EVP_MD_size(md) * 2; - ret = 1; -end: - EVP_MD_CTX_free(ctx); - return ret; -} - -/* - * c->u = HashToRange(DoubleHash(c->Chi0, c->Chi1, y, wbuf)) - */ -int BB1CiphertextBlock_hash_to_range(BB1PublicParameters *mpk, - BB1CiphertextBlock *c, const unsigned char *wbuf, size_t wbuflen, - BIGNUM *bn, BN_CTX *bn_ctx) -{ - int ret = 0; - unsigned char *buf = NULL; - unsigned char *p; - size_t buflen; - unsigned char double_hash[EVP_MAX_MD_SIZE *2]; - int pbytes; - - const EVP_MD *md; - - if (!c || !wbuf || wbuflen <= 0 || !bn || !mpk || !bn_ctx) { - BB1IBEerr(BB1IBE_F_BB1CIPHERTEXTBLOCK_HASH_TO_RANGE, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (!(md = EVP_get_digestbyobj(mpk->hashfcn))) { - return 0; - } - - - /* prepare buffer */ - pbytes = BN_num_bytes(mpk->p); - buflen = pbytes * 4 + c->y->length + wbuflen; - - if (!(buf = OPENSSL_zalloc(buflen))) { - BB1IBEerr(BB1IBE_F_BB1CIPHERTEXTBLOCK_HASH_TO_RANGE, ERR_R_MALLOC_FAILURE); - goto end; - } - p = buf; - - /* buf += y1 */ - if (!BN_bn2bin(c->pointChi1->y, p + pbytes - BN_num_bytes(c->pointChi1->y))) { - BB1IBEerr(BB1IBE_F_BB1CIPHERTEXTBLOCK_HASH_TO_RANGE, ERR_R_BN_LIB); - goto end; - } - p += pbytes; - - /* buf += x1 */ - if (!BN_bn2bin(c->pointChi1->x, p + pbytes - BN_num_bytes(c->pointChi1->x))) { - BB1IBEerr(BB1IBE_F_BB1CIPHERTEXTBLOCK_HASH_TO_RANGE, ERR_R_BN_LIB); - goto end; - } - p += pbytes; - - /* buf += y0 */ - if (!BN_bn2bin(c->pointChi0->y, p + pbytes - BN_num_bytes(c->pointChi0->y))) { - BB1IBEerr(BB1IBE_F_BB1CIPHERTEXTBLOCK_HASH_TO_RANGE, ERR_R_BN_LIB); - goto end; - } - p += pbytes; - - /* buf += x0 */ - if (!BN_bn2bin(c->pointChi0->x, p + pbytes - BN_num_bytes(c->pointChi0->x))) { - BB1IBEerr(BB1IBE_F_BB1CIPHERTEXTBLOCK_HASH_TO_RANGE, ERR_R_BN_LIB); - goto end; - } - p += pbytes; - - /* buf += ret->y */ - memcpy(p, c->y->data, c->y->length); - p += c->y->length; - - /* buf += wbuf */ - memcpy(p, wbuf, wbuflen); - p += wbuflen; - - OPENSSL_assert(p - buf == buflen); - - /* ret->u = HashToRange(DoubleHash(c)) */ - if (!BB1IBE_double_hash(md, buf, buflen, double_hash, &buflen)) { - BB1IBEerr(BB1IBE_F_BB1CIPHERTEXTBLOCK_HASH_TO_RANGE, BB1IBE_R_DOUBLE_HASH_FAILURE); - goto end; - } - if (!BN_hash_to_range(md, &c->nu, double_hash, buflen, mpk->q, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1CIPHERTEXTBLOCK_HASH_TO_RANGE, ERR_R_BN_LIB); - goto end; - } - - ret = 1; - -end: - OPENSSL_free(buf); - return ret; -} - -/* - * random s in [1, q - 1] - * ret->pointChi0 = mpk->pointP *s - * ret->pointChi1 = mpk->pointP1 * (s * H(ID)) + mpk->pointP3 * s - * ret->nu = HashToRange(w || Chi0 || Chi1 || y) in Zq - * ret->y = s + rho (mod q) - */ -BB1CiphertextBlock *BB1IBE_do_encrypt(BB1PublicParameters *mpk, - const unsigned char *in, size_t inlen, - const char *id, size_t idlen) -{ - int e = 1; - BB1CiphertextBlock *ret = NULL; - BN_CTX *bn_ctx = NULL; - EC_GROUP *group = NULL; - EC_POINT *point = NULL; - EC_POINT *point1 = NULL; - BN_GFP2 *w = NULL; - BIGNUM *s; - BIGNUM *hid; - unsigned char *wbuf = NULL; - size_t wbuflen; - unsigned char *cbuf = NULL; - const EVP_MD *md; - int i; - - if (!mpk || !in || inlen <= 0 || !id || idlen <= 0) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_PASSED_NULL_PARAMETER); - goto end; - } - - if (!(bn_ctx = BN_CTX_new())) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_MALLOC_FAILURE); - goto end; - } - BN_CTX_start(bn_ctx); - - /* get group */ - if (!(group = EC_GROUP_new_type1curve(mpk->p, mpk->pointP->x, - mpk->pointP->y, mpk->q, bn_ctx))) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, BB1IBE_R_INVALID_TYPE1CURVE); - goto end; - } - - ret = BB1CiphertextBlock_new(); - point = EC_POINT_new(group); - point1 = EC_POINT_new(group); - w = BN_GFP2_new(); - s = BN_CTX_get(bn_ctx); - hid = BN_CTX_get(bn_ctx); - - if (!ret || !point || !point1 || !s || !hid || !w) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_MALLOC_FAILURE); - goto end; - } - - /* random s in [1, q - 1] */ - do { - if (!BN_rand_range(s, mpk->q)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_BN_LIB); - goto end; - } - } while (BN_is_zero(s)); - - /* ret->pointChi0 = mpk->pointP * s */ - if (!EC_POINT_mul(group, point, s, NULL, NULL, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_get_affine_coordinates_GFp(group, point, - ret->pointChi0->x, ret->pointChi0->y, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_EC_LIB); - goto end; - } - - /* get md */ - if (!(md = EVP_get_digestbyobj(mpk->hashfcn))) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, BB1IBE_R_INVALID_TYPE1CURVE); - goto end; - } - - /* hid = HashToRange(id) in F_q */ - if (!BN_hash_to_range(md, &hid, id, idlen, mpk->q, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_BN_LIB); - goto end; - } - - /* - * ret->pointChi1 = ((mpk->pointP1 * hid) + mpk->pointP3) * s - */ - if (!EC_POINT_set_affine_coordinates_GFp(group, point, - mpk->pointP1->x, mpk->pointP1->y, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_mul(group, point, NULL, point, hid, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_EC_LIB); - goto end; - } - - if (!EC_POINT_set_affine_coordinates_GFp(group, point1, - mpk->pointP3->x, mpk->pointP3->y, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_add(group, point, point, point1, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_EC_LIB); - goto end; - } - - if (!EC_POINT_mul(group, point, NULL, point, s, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_EC_LIB); - goto end; - } - - if (!EC_POINT_get_affine_coordinates_GFp(group, point, - ret->pointChi1->x, ret->pointChi1->y, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_EC_LIB); - goto end; - } - - /* - * w = (mpk->v)^s in F_p^2 - * w = mpk->v, convert from FpPoint to BN_GFP2 - * w = w^s - * wbuf = Canonical(w, order=1) - */ - - if (!BN_copy(w->a0, mpk->v->x)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_BN_LIB); - goto end; - } - if (!BN_copy(w->a1, mpk->v->y)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_BN_LIB); - goto end; - } - - if (!BN_GFP2_exp(w, w, s, mpk->p, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_BN_LIB); - goto end; - } - - if (!BN_GFP2_canonical(w, NULL, &wbuflen, 1, mpk->p, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_BN_LIB); - goto end; - } - if (!(wbuf = OPENSSL_malloc(wbuflen))) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_MALLOC_FAILURE); - goto end; - } - if (!BN_GFP2_canonical(w, wbuf, &wbuflen, 1, mpk->p, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_MALLOC_FAILURE); - goto end; - } - - /* - * ret->y = HashBytes(DoubleHash(wbuf)) xor in - * DoubleHash output length == hashlen * 2 - * HashBytes output length == inlen - */ - - if (!ASN1_OCTET_STRING_set(ret->y, NULL, inlen)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_MALLOC_FAILURE); - goto end; - } - /* - //FIXME: - if (!bb1ibe_hash(md, wbuf, wbuflen, ret->y->data, inlen)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, BB1IBE_R_BB1IBE_HASH_FAILURE); - goto end; - } - */ - for (i = 0; i < inlen; i++) { - ret->y->data[i] ^= in[i]; - } - - /* - * ret->u = s + HashToRange(DoubleHash(y1||x1||y0||x0||ret->y||wbuf)) (mod q) - * (x0, y0) = ret->pointChi0 - * (x1, y1) = ret->pointChi1 - */ - - - /* ret->u += s (mod q) */ - if (!BN_mod_add(ret->nu, ret->nu, s, mpk->q, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_ENCRYPT, ERR_R_BN_LIB); - goto end; - } - - e = 0; - -end: - if (e && ret) { - BB1CiphertextBlock_free(ret); - ret = NULL; - } - if (bn_ctx) { - BN_CTX_end(bn_ctx); - } - BN_CTX_free(bn_ctx); - EC_GROUP_free(group); - EC_POINT_free(point); - EC_POINT_free(point1); - BN_GFP2_free(w); - OPENSSL_free(wbuf); - OPENSSL_free(cbuf); - return ret; -} - -int BB1IBE_do_decrypt(BB1PublicParameters *mpk, - const BB1CiphertextBlock *in, unsigned char *out, size_t *outlen, - BB1PrivateKeyBlock *sk) -{ - int ret = 0; - EC_GROUP *group = NULL; - EC_POINT *point_c0 = NULL; - EC_POINT *point_c1 = NULL; - EC_POINT *point_d0 = NULL; - EC_POINT *point_d1 = NULL; - BN_CTX *bn_ctx = NULL; - BN_GFP2 *w = NULL; - BN_GFP2 *w1 = NULL; - BIGNUM *s = NULL; - BIGNUM *h = NULL; - unsigned char *wbuf = NULL; - size_t wbuflen; - size_t len; - int i; - - /* check arguments */ - if (!mpk || !in || !outlen || !sk) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, ERR_R_PASSED_NULL_PARAMETER); - goto end; - } - - /* check output buffer */ - len = in->y->length; - if (!out) { - *outlen = len; - return 1; - } - if (*outlen < len) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, BB1IBE_R_BUFFER_TOO_SMALL); - return 0; - } - - if (!(bn_ctx = BN_CTX_new())) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, ERR_R_MALLOC_FAILURE); - goto end; - } - BN_CTX_start(bn_ctx); - - /* init variables */ - if (!(group = EC_GROUP_new_type1curve(mpk->p, mpk->pointP->x, - mpk->pointP->y, mpk->q, bn_ctx))) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, BB1IBE_R_INVALID_TYPE1CURVE); - goto end; - } - - point_c0 = EC_POINT_new(group); - point_c1 = EC_POINT_new(group); - point_d0 = EC_POINT_new(group); - point_d1 = EC_POINT_new(group); - w = BN_GFP2_new(); - w1 = BN_GFP2_new(); - s = BN_CTX_get(bn_ctx); - h = BN_CTX_get(bn_ctx); - - if (!point_c0 || !point_c1 || !point_d0 || !point_d1 || !w || !w1 || !s || !h) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, ERR_R_MALLOC_FAILURE); - goto end; - } - - /* - * w = e(in->C0, sk->D0)/e(in->C1, sk->D1) - */ - if (!EC_POINT_set_affine_coordinates_GFp(group, point_c0, - in->pointChi0->x, in->pointChi0->y, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_set_affine_coordinates_GFp(group, point_c1, - in->pointChi1->x, in->pointChi1->y, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_set_affine_coordinates_GFp(group, point_d0, - sk->pointD0->x, sk->pointD0->y, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_set_affine_coordinates_GFp(group, point_d1, - sk->pointD1->x, sk->pointD1->y, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, ERR_R_EC_LIB); - goto end; - } - if (!EC_type1curve_tate_ratio(group, w, point_c0, point_d0, - point_c1, point_d1, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, BB1IBE_R_COMPUTE_TATE_FAILURE); - goto end; - } - - /* wbuf = Canonical(w, order=1) */ - if (!BN_GFP2_canonical(w, NULL, &wbuflen, 1, mpk->p, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, ERR_R_BN_LIB); - goto end; - } - if (!(wbuf = OPENSSL_malloc(wbuflen))) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, ERR_R_MALLOC_FAILURE); - goto end; - } - if (!BN_GFP2_canonical(w, wbuf, &wbuflen, 1, mpk->p, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, ERR_R_MALLOC_FAILURE); - goto end; - } - - /* h = H(ciphertext||w) */ -#if 0 - //remove warning - if (!BB1CiphertextBlock_hash_to_range(mpk, in, wbuf, wbuflen, h, bn_ctx)) { - goto end; - } -#endif - - /* s = in->nu - H(c) */ - if (!BN_mod_sub(s, in->nu, h, mpk->q, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, ERR_R_BN_LIB); - goto end; - } - - /* check if w == v^s */ - if (!BN_copy(w1->a0, mpk->v->x)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, ERR_R_BN_LIB); - goto end; - } - if (!BN_copy(w1->a1, mpk->v->y)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, ERR_R_BN_LIB); - goto end; - } - if (!BN_GFP2_exp(w1, w1, s, mpk->p, bn_ctx)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, ERR_R_BN_LIB); - goto end; - } - if (!BN_GFP2_equ(w, w1)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, BB1IBE_R_BB1CIPHERTEXT_INVALID_MAC); - goto end; - } - - /* - * out = HashBytes(DoubleHash(wbuf)) xor in->y - */ - /* - if (!bb1ibe_hash(md, wbuf, wbuflen, out, in->y->length)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DO_DECRYPT, BB1IBE_R_BB1IBE_HASH_FAILURE); - goto end; - } - */ - for (i = 0; i < in->y->length; i++) { - out[i] ^= in->y->data[i]; - } - - ret = 1; -end: - if (bn_ctx) { - BN_CTX_end(bn_ctx); - } - BN_CTX_free(bn_ctx); - EC_GROUP_free(group); - EC_POINT_free(point_c0); - EC_POINT_free(point_c1); - EC_POINT_free(point_d0); - EC_POINT_free(point_d1); - BN_GFP2_free(w); - BN_GFP2_free(w1); - OPENSSL_free(wbuf); - return ret; -} - -static int BB1PublicParameters_size(BB1PublicParameters *mpk, - size_t inlen, size_t *outlen) -{ - size_t len = 0; - len += (OPENSSL_ECC_MAX_FIELD_BITS/8) * 5; - len += inlen; - len += EVP_MAX_MD_SIZE; - len += 256; /* caused by version and DER encoding */ - *outlen = len; - return 1; -} - -int BB1IBE_encrypt(BB1PublicParameters *mpk, - const unsigned char *in, size_t inlen, - unsigned char *out, size_t *outlen, - const char *id, size_t idlen) -{ - int ret = 0; - BB1CiphertextBlock *c = NULL; - unsigned char *p; - size_t len; - - if (!mpk || !in || inlen <= 0 || !outlen || !id || idlen <= 0) { - BB1IBEerr(BB1IBE_F_BB1IBE_ENCRYPT, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (!BB1PublicParameters_size(mpk, inlen, &len)) { - BB1IBEerr(BB1IBE_F_BB1IBE_ENCRYPT, BB1IBE_R_COMPUTE_OUTLEN_FAILURE); - return 0; - } - if (!out) { - *outlen = len; - return 1; - } - if (*outlen < len) { - BB1IBEerr(BB1IBE_F_BB1IBE_ENCRYPT, BB1IBE_R_BUFFER_TOO_SMALL); - return 0; - } - - if (!(c = BB1IBE_do_encrypt(mpk, in, inlen, id, idlen))) { - BB1IBEerr(BB1IBE_F_BB1IBE_ENCRYPT, BB1IBE_R_ENCRYPT_FAILURE); - goto end; - } - - p = out; - if (!i2d_BB1CiphertextBlock(c, &p)) { - BB1IBEerr(BB1IBE_F_BB1IBE_ENCRYPT, BB1IBE_R_I2D_FAILURE); - goto end; - } - len = p - out; - - *outlen = len; - ret = 1; - -end: - BB1CiphertextBlock_free(c); - return ret; -} - -int BB1IBE_decrypt(BB1PublicParameters *mpk, - const unsigned char *in, size_t inlen, - unsigned char *out, size_t *outlen, - BB1PrivateKeyBlock *sk) -{ - int ret = 0; - BB1CiphertextBlock *c = NULL; - const unsigned char *p; - - if (!mpk || !in || inlen <= 0 || !outlen || !sk) { - BB1IBEerr(BB1IBE_F_BB1IBE_DECRYPT, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (!out) { - *outlen = inlen; - return 1; - } - if (*outlen < inlen) { - BB1IBEerr(BB1IBE_F_BB1IBE_DECRYPT, BB1IBE_R_BUFFER_TOO_SMALL); - return 0; - } - - p = in; - if (!(c = d2i_BB1CiphertextBlock(NULL, &p, inlen))) { - BB1IBEerr(BB1IBE_F_BB1IBE_DECRYPT, BB1IBE_R_D2I_FAILURE); - goto end; - } - - /* check that all input has been decoded */ - if (p - in != inlen) { - BB1IBEerr(BB1IBE_F_BB1IBE_DECRYPT, BB1IBE_R_INVALID_INPUT); - goto end; - } - - if (!BB1IBE_do_decrypt(mpk, c, out, outlen, sk)) { - BB1IBEerr(BB1IBE_F_BB1IBE_DECRYPT, BB1IBE_R_DECRYPT_FAILURE); - goto end; - } - - ret = 1; -end: - BB1CiphertextBlock_free(c); - return ret; -} - diff --git a/crypto/bb1ibe/build.info b/crypto/bb1ibe/build.info deleted file mode 100644 index eb25a88a..00000000 --- a/crypto/bb1ibe/build.info +++ /dev/null @@ -1,2 +0,0 @@ -LIBS=../../libcrypto -SOURCE[../../libcrypto]=bb1ibe_err.c bb1ibe_asn1.c bb1ibe_lib.c diff --git a/crypto/bfibe/bfibe_asn1.c b/crypto/bfibe/bfibe_asn1.c deleted file mode 100644 index 8abfa1f3..00000000 --- a/crypto/bfibe/bfibe_asn1.c +++ /dev/null @@ -1,100 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "bfibe_lcl.h" - -ASN1_SEQUENCE(BFPublicParameters) = { - ASN1_SIMPLE(BFPublicParameters, version, LONG), - ASN1_SIMPLE(BFPublicParameters, curve, ASN1_OBJECT), - ASN1_SIMPLE(BFPublicParameters, p, BIGNUM), - ASN1_SIMPLE(BFPublicParameters, q, BIGNUM), - ASN1_SIMPLE(BFPublicParameters, pointP, FpPoint), - ASN1_SIMPLE(BFPublicParameters, pointPpub, FpPoint), - ASN1_SIMPLE(BFPublicParameters, hashfcn, ASN1_OBJECT) -} ASN1_SEQUENCE_END(BFPublicParameters) -IMPLEMENT_ASN1_FUNCTIONS(BFPublicParameters) -IMPLEMENT_ASN1_DUP_FUNCTION(BFPublicParameters) - -ASN1_SEQUENCE(BFMasterSecret) = { - ASN1_SIMPLE(BFMasterSecret, version, LONG), - ASN1_SIMPLE(BFMasterSecret, masterSecret, BIGNUM) -} ASN1_SEQUENCE_END(BFMasterSecret) -IMPLEMENT_ASN1_FUNCTIONS(BFMasterSecret) -IMPLEMENT_ASN1_DUP_FUNCTION(BFMasterSecret) - -ASN1_SEQUENCE(BFPrivateKeyBlock) = { - ASN1_SIMPLE(BFPrivateKeyBlock, version, LONG), - ASN1_SIMPLE(BFPrivateKeyBlock, privateKey, FpPoint) -} ASN1_SEQUENCE_END(BFPrivateKeyBlock) -IMPLEMENT_ASN1_FUNCTIONS(BFPrivateKeyBlock) -IMPLEMENT_ASN1_DUP_FUNCTION(BFPrivateKeyBlock) - -ASN1_SEQUENCE(BFCiphertextBlock) = { - ASN1_SIMPLE(BFCiphertextBlock, version, LONG), - ASN1_SIMPLE(BFCiphertextBlock, u, FpPoint), - ASN1_SIMPLE(BFCiphertextBlock, v, ASN1_OCTET_STRING), - ASN1_SIMPLE(BFCiphertextBlock, w, ASN1_OCTET_STRING), -} ASN1_SEQUENCE_END(BFCiphertextBlock) -IMPLEMENT_ASN1_FUNCTIONS(BFCiphertextBlock) -IMPLEMENT_ASN1_DUP_FUNCTION(BFCiphertextBlock) - diff --git a/crypto/bfibe/bfibe_err.c b/crypto/bfibe/bfibe_err.c deleted file mode 100644 index 01057417..00000000 --- a/crypto/bfibe/bfibe_err.c +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. - * - * 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 - -/* BEGIN ERROR CODES */ -#ifndef OPENSSL_NO_ERR - -# define ERR_FUNC(func) ERR_PACK(ERR_LIB_BFIBE,func,0) -# define ERR_REASON(reason) ERR_PACK(ERR_LIB_BFIBE,0,reason) - -static ERR_STRING_DATA BFIBE_str_functs[] = { - {ERR_FUNC(BFIBE_F_BFIBE_DECRYPT), "BFIBE_decrypt"}, - {ERR_FUNC(BFIBE_F_BFIBE_DO_DECRYPT), "BFIBE_do_decrypt"}, - {ERR_FUNC(BFIBE_F_BFIBE_DO_ENCRYPT), "BFIBE_do_encrypt"}, - {ERR_FUNC(BFIBE_F_BFIBE_ENCRYPT), "BFIBE_encrypt"}, - {ERR_FUNC(BFIBE_F_BFIBE_EXTRACT_PRIVATE_KEY), - "BFIBE_extract_private_key"}, - {ERR_FUNC(BFIBE_F_BFIBE_SETUP), "BFIBE_setup"}, - {0, NULL} -}; - -static ERR_STRING_DATA BFIBE_str_reasons[] = { - {ERR_REASON(BFIBE_R_BFIBE_CIPHERTEXT_FAILURE), - "bfibe ciphertext failure"}, - {ERR_REASON(BFIBE_R_BUFFER_TOO_SMALL), "buffer too small"}, - {ERR_REASON(BFIBE_R_COMPUTE_OUTLEN_FAILURE), "compute outlen failure"}, - {ERR_REASON(BFIBE_R_D2I_FAILURE), "d2i failure"}, - {ERR_REASON(BFIBE_R_DECRYPT_FAILURE), "decrypt failure"}, - {ERR_REASON(BFIBE_R_ENCRYPT_FAILURE), "encrypt failure"}, - {ERR_REASON(BFIBE_R_HASH_BYTES_FAILURE), "hash bytes failure"}, - {ERR_REASON(BFIBE_R_I2D_FAILURE), "i2d failure"}, - {ERR_REASON(BFIBE_R_INVALID_BFIBE_HASHFUNC), "invalid bfibe hashfunc"}, - {ERR_REASON(BFIBE_R_INVALID_CIPHERTEXT), "invalid ciphertext"}, - {ERR_REASON(BFIBE_R_INVALID_TYPE1CURVE), "invalid type1curve"}, - {ERR_REASON(BFIBE_R_KDF_FAILURE), "kdf failure"}, - {ERR_REASON(BFIBE_R_NOT_NAMED_CURVE), "not named curve"}, - {ERR_REASON(BFIBE_R_PARSE_CURVE_FAILURE), "parse curve failure"}, - {ERR_REASON(BFIBE_R_PARSE_MPK_FAILURE), "parse mpk failure"}, - {ERR_REASON(BFIBE_R_PARSE_PAIRING), "parse pairing"}, - {ERR_REASON(BFIBE_R_RAND_FAILURE), "rand failure"}, - {0, NULL} -}; - -#endif - -int ERR_load_BFIBE_strings(void) -{ -#ifndef OPENSSL_NO_ERR - - if (ERR_func_error_string(BFIBE_str_functs[0].error) == NULL) { - ERR_load_strings(0, BFIBE_str_functs); - ERR_load_strings(0, BFIBE_str_reasons); - } -#endif - return 1; -} diff --git a/crypto/bfibe/bfibe_lcl.h b/crypto/bfibe/bfibe_lcl.h deleted file mode 100644 index 3aa268cc..00000000 --- a/crypto/bfibe/bfibe_lcl.h +++ /dev/null @@ -1,102 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * the `curve` attribute of BFPublicParameters is the OID present the - * `type1curve` which is E: y^2 = x^3 + 1 over prime field. It is not an - * elliptic curve domain parameters composed of (p, a, b, G, n, h). - * For type-1 curve, a = 0, b = 1. - * q (i.e. the n in ec params) is the order of generator G, is a prime. - * When q is a solinas prime, the scalar mulitiplication computation can - * be reduced. - * zeta (i.e. h in ec params) = (p + 1)/q. In normall ecc, h is very small - * such as 1 or 4. But in pairing, the zeta (or h) is very large. - */ -struct BFPublicParameters_st { - long version; - ASN1_OBJECT *curve; - BIGNUM *p; - BIGNUM *q; - FpPoint *pointP; - FpPoint *pointPpub; - ASN1_OBJECT *hashfcn; -}; - -struct BFMasterSecret_st { - long version; - BIGNUM *masterSecret; -}; - -struct BFPrivateKeyBlock_st { - long version; - FpPoint *privateKey; -}; - -struct BFCiphertextBlock_st { - long version; - FpPoint *u; - ASN1_OCTET_STRING *v; - ASN1_OCTET_STRING *w; -}; - diff --git a/crypto/bfibe/bfibe_lib.c b/crypto/bfibe/bfibe_lib.c deleted file mode 100644 index e3bc839d..00000000 --- a/crypto/bfibe/bfibe_lib.c +++ /dev/null @@ -1,712 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "bfibe_lcl.h" - - -int BFIBE_setup(const EC_GROUP *group, const EVP_MD *md, - BFPublicParameters **pmpk, BFMasterSecret **pmsk) -{ - int ret = 0; - BFPublicParameters *mpk = NULL; - BFMasterSecret *msk = NULL; - BN_CTX *bn_ctx = NULL; - EC_POINT *point = NULL; - BIGNUM *a; - BIGNUM *b; - - if (!group || !pmpk || !pmsk) { - BFIBEerr(BFIBE_F_BFIBE_SETUP, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (!(bn_ctx = BN_CTX_new())) { - BFIBEerr(BFIBE_F_BFIBE_SETUP, ERR_R_MALLOC_FAILURE); - goto end; - } - - BN_CTX_start(bn_ctx); - a = BN_CTX_get(bn_ctx); - b = BN_CTX_get(bn_ctx); - if (!b) { - BFIBEerr(BFIBE_F_BFIBE_SETUP, ERR_R_MALLOC_FAILURE); - goto end; - } - - mpk = BFPublicParameters_new(); - msk = BFMasterSecret_new(); - point = EC_POINT_new(group); - - if (!mpk || !msk || !point) { - BFIBEerr(BFIBE_F_BFIBE_SETUP, ERR_R_MALLOC_FAILURE); - goto end; - } - - /* - * set mpk->version - * set mpk->curve - */ - - mpk->version = BFIBE_VERSION; - - OPENSSL_assert(mpk->curve); - ASN1_OBJECT_free(mpk->curve); - if (!(mpk->curve = OBJ_nid2obj(NID_type1curve))) { - BFIBEerr(BFIBE_F_BFIBE_SETUP, BFIBE_R_NOT_NAMED_CURVE); - goto end; - } - - /* mpk->p = group->p */ - if (!EC_GROUP_get_curve_GFp(group, mpk->p, a, b, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_SETUP, ERR_R_EC_LIB); - goto end; - } - if (!BN_is_zero(a) || !BN_is_one(b)) { - BFIBEerr(BFIBE_F_BFIBE_SETUP, BFIBE_R_INVALID_TYPE1CURVE); - goto end; - } - - /* mpk->q = group->order */ - if (!EC_GROUP_get_order(group, mpk->q, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_SETUP, BFIBE_R_INVALID_TYPE1CURVE); - goto end; - } - - /* mpk->pointP = group->generator */ - if (!EC_POINT_get_affine_coordinates_GFp(group, EC_GROUP_get0_generator(group), - mpk->pointP->x, mpk->pointP->y, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_SETUP, ERR_R_EC_LIB); - goto end; - } - - /* set mpk->hashfcn from F_p^2 element bits */ - OPENSSL_assert(mpk->hashfcn); - ASN1_OBJECT_free(mpk->hashfcn); - if (!(mpk->hashfcn = OBJ_nid2obj(EVP_MD_type(md)))) { - BFIBEerr(BFIBE_F_BFIBE_SETUP, BFIBE_R_PARSE_PAIRING); - goto end; - } - - /* - * set msk->version - * random msk->masterSecret in [2, q - 1] - */ - - msk->version = BFIBE_VERSION; - - do { - if (!BN_rand_range(msk->masterSecret, mpk->q)) { - BFIBEerr(BFIBE_F_BFIBE_SETUP, ERR_R_BN_LIB); - goto end; - } - } while (BN_is_zero(msk->masterSecret) || BN_is_one(msk->masterSecret)); - - /* mpk->pointPpub = msk->masterSecret * mpk->pointP */ - - if (!EC_POINT_mul(group, point, msk->masterSecret, NULL, NULL, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_SETUP, ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_get_affine_coordinates_GFp(group, point, - mpk->pointPpub->x, mpk->pointPpub->y, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_SETUP, ERR_R_EC_LIB); - goto end; - } - - /* set return value */ - *pmpk = mpk; - *pmsk = msk; - ret = 1; - -end: - if (!ret) { - BFPublicParameters_free(mpk); - BFMasterSecret_free(msk); - *pmpk = NULL; - *pmsk = NULL; - } - if (bn_ctx) { - BN_CTX_end(bn_ctx); - } - BN_CTX_free(bn_ctx); - EC_POINT_free(point); - return ret; -} - -BFPrivateKeyBlock *BFIBE_extract_private_key(BFPublicParameters *mpk, - BFMasterSecret *msk, const char *id, size_t idlen) -{ - int e = 1; - BFPrivateKeyBlock *ret = NULL; - EC_GROUP *group = NULL; - EC_POINT *point = NULL; - BN_CTX *bn_ctx = NULL; - const EVP_MD *md; - - if (!mpk || !msk || !id || idlen <= 0) { - BFIBEerr(BFIBE_F_BFIBE_EXTRACT_PRIVATE_KEY, ERR_R_PASSED_NULL_PARAMETER); - return NULL; - } - - if (!(bn_ctx = BN_CTX_new())) { - BFIBEerr(BFIBE_F_BFIBE_EXTRACT_PRIVATE_KEY, - ERR_R_MALLOC_FAILURE); - goto end; - } - - /* - * get EC_GROUP from mpk->{p, q, pointP} - * get EVP_MD from mpk->hashfcn - */ - if (!(group = EC_GROUP_new_type1curve(mpk->p, mpk->pointP->x, - mpk->pointP->y, mpk->q, bn_ctx))) { - BFIBEerr(BFIBE_F_BFIBE_EXTRACT_PRIVATE_KEY, BFIBE_R_PARSE_CURVE_FAILURE); - goto end; - } - - if (!(md = EVP_get_digestbyobj(mpk->hashfcn))) { - BFIBEerr(BFIBE_F_BFIBE_EXTRACT_PRIVATE_KEY, - BFIBE_R_INVALID_BFIBE_HASHFUNC); - goto end; - } - - /* prepare tmp variables */ - point = EC_POINT_new(group); - if (!point) { - BFIBEerr(BFIBE_F_BFIBE_EXTRACT_PRIVATE_KEY, ERR_R_MALLOC_FAILURE); - goto end; - } - - /* - * set ret->version - * set ret->privateKey = msk->masterSecret * HashToPoint(ID) - */ - - if (!(ret = BFPrivateKeyBlock_new())) { - BFIBEerr(BFIBE_F_BFIBE_EXTRACT_PRIVATE_KEY, ERR_R_MALLOC_FAILURE); - return NULL; - } - - ret->version = BFIBE_VERSION; - - if (!EC_POINT_hash2point(group, md, id, idlen, point, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_EXTRACT_PRIVATE_KEY, ERR_R_EC_LIB); - goto end; - } - - if (!EC_POINT_mul(group, point, NULL, point, msk->masterSecret, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_EXTRACT_PRIVATE_KEY, ERR_R_EC_LIB); - goto end; - } - - if (!EC_POINT_get_affine_coordinates_GFp(group, point, - ret->privateKey->x, ret->privateKey->y, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_EXTRACT_PRIVATE_KEY, ERR_R_EC_LIB); - goto end; - } - - e = 0; -end: - if (e && ret) { - BFPrivateKeyBlock_free(ret); - ret = NULL; - } - EC_GROUP_free(group); - EC_POINT_free(point); - BN_CTX_free(bn_ctx); - return ret; -} - -/* - * r = rand(), |r| = hashlen - * k = HashToRange(r||Hash(m), q), k in [0, q-1] - * U = [k]P in E/F_p - * Q = HashToPoint(ID) in E/F_p - * v = Hash(e(Ppub, Q)^k) xor r, |v| == hashlen - * w = HashBytes(r) xor m - */ -BFCiphertextBlock *BFIBE_do_encrypt(BFPublicParameters *mpk, - const unsigned char *in, size_t inlen, - const char *id, size_t idlen) -{ - int e = 1; - BFCiphertextBlock *ret = NULL; - BN_CTX *bn_ctx = NULL; - EC_GROUP *group = NULL; - EC_POINT *Ppub = NULL; - EC_POINT *point = NULL; - BN_GFP2 *theta = NULL; - BIGNUM *k; - const EVP_MD *md; - KDF_FUNC hash_bytes; - unsigned char rho[EVP_MAX_MD_SIZE * 2]; - unsigned char buf[EVP_MAX_MD_SIZE]; - unsigned int len; - size_t size; - int i; - - if (!mpk || !in || inlen <= 0 || !id || idlen <= 0) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, ERR_R_PASSED_NULL_PARAMETER); - return NULL; - } - - /* BN_CTX */ - if (!(bn_ctx = BN_CTX_new())) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, ERR_R_MALLOC_FAILURE); - goto end; - } - BN_CTX_start(bn_ctx); - - /* EC_GROUP */ - if (!(group = EC_GROUP_new_type1curve(mpk->p, mpk->pointP->x, - mpk->pointP->y, mpk->q, bn_ctx))) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, BFIBE_R_PARSE_MPK_FAILURE); - goto end; - } - - ret = BFCiphertextBlock_new(); - Ppub = EC_POINT_new(group); - point = EC_POINT_new(group); - theta = BN_GFP2_new(); - k = BN_CTX_get(bn_ctx); - - if (!ret || !point || !Ppub || !k || !theta) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, ERR_R_MALLOC_FAILURE); - goto end; - } - - - /* get kdf from mpk->hashfcn */ - if (!(md = EVP_get_digestbyobj(mpk->hashfcn))) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, BFIBE_R_INVALID_BFIBE_HASHFUNC); - goto end; - } - - if (!(hash_bytes = KDF_get_ibcs(md))) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, - BFIBE_R_INVALID_BFIBE_HASHFUNC); - goto end; - } - - /* ret->version */ - ret->version = BFIBE_VERSION; - - /* rho = Rand(hashlen) */ - if (!RAND_bytes(rho, EVP_MD_size(md))) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, BFIBE_R_RAND_FAILURE); - goto end; - } - - /* k = HashToRange(rho||Hash(in), q) in [0, q - 1] */ - len = EVP_MD_size(md); - if (!EVP_Digest(in, inlen, rho + EVP_MD_size(md), &len, md, NULL)) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, ERR_R_EVP_LIB); - goto end; - } - if (!BN_hash_to_range(md, &k, rho, EVP_MD_size(md) * 2, mpk->q, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, ERR_R_BN_LIB); - goto end; - } - - /* ret->u = mpk->pointP * k in E/F_p, mpk->pointP is the generator */ - if (!EC_POINT_mul(group, point, k, NULL, NULL, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_get_affine_coordinates_GFp(group, point, - ret->u->x, ret->u->y, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, ERR_R_EC_LIB); - goto end; - } - - /* theta = e(mpk->pointPpub, HashToPoint(ID)) */ - if (!EC_POINT_set_affine_coordinates_GFp(group, Ppub, - mpk->pointPpub->x, mpk->pointPpub->y, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_hash2point(group, md, id, idlen, point, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, ERR_R_EC_LIB); - goto end; - } - if (!EC_type1curve_tate(group, theta, Ppub, point, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, ERR_R_EC_LIB); - goto end; - } - - /* theta = theta^k */ - if (!BN_GFP2_exp(theta, theta, k, mpk->p, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, ERR_R_EC_LIB); - goto end; - } - - /* ret->v = Hash(theta) xor rho */ - size = sizeof(buf); - if (!BN_GFP2_canonical(theta, buf, &size, 0, mpk->p, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, ERR_R_BN_LIB); - goto end; - } - len = sizeof(buf); - if (!EVP_Digest(buf, size, buf, &len, md, NULL)) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, ERR_R_EVP_LIB); - goto end; - } - for (i = 0; i < EVP_MD_size(md); i++) { - buf[i] ^= rho[i]; - } - if (!ASN1_OCTET_STRING_set(ret->v, buf, EVP_MD_size(md))) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, ERR_R_ASN1_LIB); - goto end; - } - - /* ret->w = HashBytes(rho) xor m */ - if (!ASN1_OCTET_STRING_set(ret->w, NULL, inlen)) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, ERR_R_MALLOC_FAILURE); - goto end; - } - size = inlen; - if (!hash_bytes(rho, EVP_MD_size(md), ret->w->data, &size)) { - BFIBEerr(BFIBE_F_BFIBE_DO_ENCRYPT, - BFIBE_R_HASH_BYTES_FAILURE); - goto end; - } - for (i = 0; i < inlen; i++) { - ret->w->data[i] ^= in[i]; - } - - e = 0; - -end: - if (e && ret) { - BFCiphertextBlock_free(ret); - ret = NULL; - } - if (bn_ctx) { - BN_CTX_end(bn_ctx); - } - BN_CTX_free(bn_ctx); - EC_GROUP_free(group); - EC_POINT_free(Ppub); - EC_POINT_free(point); - BN_GFP2_free(theta); - return ret; -} - -int BFIBE_do_decrypt(BFPublicParameters *mpk, - const BFCiphertextBlock *in, unsigned char *out, size_t *outlen, - BFPrivateKeyBlock *sk) -{ - int ret = 0; - BN_CTX *bn_ctx = NULL; - EC_GROUP *group = NULL; - EC_POINT *point = NULL; - EC_POINT *point1 = NULL; - BN_GFP2 *theta = NULL; - BIGNUM *k; - const EVP_MD *md; - KDF_FUNC hash_bytes; - unsigned char rho[EVP_MAX_MD_SIZE * 2]; - size_t size; - unsigned int len; - int i; - - if (!mpk || !in || !outlen || !sk) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (!out) { - *outlen = in->w->length; - return 1; - } - if (*outlen < in->w->length) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, - BFIBE_R_BUFFER_TOO_SMALL); - return 0; - } - - /* BN_CTX */ - if (!(bn_ctx = BN_CTX_new())) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, ERR_R_MALLOC_FAILURE); - goto end; - } - BN_CTX_start(bn_ctx); - - /* EC_GROUP */ - if (!(group = EC_GROUP_new_type1curve(mpk->p, mpk->pointP->x, - mpk->pointP->y, mpk->q, bn_ctx))) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, - BFIBE_R_INVALID_TYPE1CURVE); - goto end; - } - - point = EC_POINT_new(group); - point1 = EC_POINT_new(group); - theta = BN_GFP2_new(); - k = BN_CTX_get(bn_ctx); - - if (!point || !point1 || !theta || !k) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, ERR_R_MALLOC_FAILURE); - goto end; - } - - /* theta = e(ciphertext->u, sk->privateKey) */ - if (!EC_POINT_set_affine_coordinates_GFp(group, point, - in->u->x, in->u->y, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_set_affine_coordinates_GFp(group, point1, - sk->privateKey->x, sk->privateKey->y, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, ERR_R_EC_LIB); - goto end; - } - if (!EC_type1curve_tate(group, theta, point, point1, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, ERR_R_EC_LIB); - goto end; - } - - /* md = mpk->hashfcn */ - if (!(md = EVP_get_digestbyobj(mpk->hashfcn))) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, BFIBE_R_INVALID_BFIBE_HASHFUNC); - goto end; - } - - /* rho = Hash(Canoncial(theta)) xor ciphertext->v */ - size = sizeof(rho); - if (!BN_GFP2_canonical(theta, rho, &size, 0, mpk->p, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, ERR_R_EC_LIB); - goto end; - } - len = size; - if (!EVP_Digest(rho, size, rho, &len, md, NULL)) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, ERR_R_EVP_LIB); - goto end; - } - for (i = 0; i < EVP_MD_size(md); i++) { - rho[i] ^= in->v->data[i]; - } - - /* function hash_bytes() = kdf(md) */ - if (!(hash_bytes = KDF_get_ibcs(md))) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, - BFIBE_R_INVALID_BFIBE_HASHFUNC); - goto end; - } - - /* out = HashBytes(rho) xor ciphertext->w */ - size = in->w->length; - if (!hash_bytes(rho, EVP_MD_size(md), out, &size)) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, - BFIBE_R_KDF_FAILURE); - goto end; - } - for (i = 0; i < in->w->length; i++) { - out[i] ^= in->w->data[i]; - } - - /* k = HashToRange(rho || Hash(out)) in [0, mpk->q) */ - len = EVP_MD_size(md); - if (!EVP_Digest(out, in->w->length, rho + EVP_MD_size(md), &len, md, NULL)) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, ERR_R_EVP_LIB); - goto end; - } - if (!BN_hash_to_range(md, &k, rho, EVP_MD_size(md) * 2, mpk->q, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, ERR_R_BN_LIB); - goto end; - } - - /* Verify that in->u == mpk->pointP * k */ - if (!EC_POINT_mul(group, point, k, NULL, NULL, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, ERR_R_EC_LIB); - goto end; - } - if (1 != EC_POINT_cmp_fppoint(group, point, in->u, bn_ctx)) { - BFIBEerr(BFIBE_F_BFIBE_DO_DECRYPT, BFIBE_R_BFIBE_CIPHERTEXT_FAILURE); - goto end; - } - - *outlen = in->w->length; - ret = 1; - -end: - if (bn_ctx) { - BN_CTX_end(bn_ctx); - } - BN_CTX_free(bn_ctx); - EC_GROUP_free(group); - EC_POINT_free(point); - EC_POINT_free(point1); - BN_GFP2_free(theta); - return ret; -} - -/* estimation of the max length of DER encoded ciphertext */ -static int BFCiphertextBlock_size(BFPublicParameters *mpk, - size_t inlen, size_t *outlen) -{ - size_t len = 0; - len += (OPENSSL_ECC_MAX_FIELD_BITS/8) * 2; - len += inlen; - len += EVP_MAX_MD_SIZE; - len += 128; /* caused by version and DER encoding */ - *outlen = len; - return 1; -} - -int BFIBE_encrypt(BFPublicParameters *mpk, - const unsigned char *in, size_t inlen, - unsigned char *out, size_t *outlen, - const char *id, size_t idlen) -{ - int ret = 0; - BFCiphertextBlock *c = NULL; - unsigned char *p; - size_t len; - - if (!mpk || !in || inlen <= 0 || !outlen || !id || idlen <= 0) { - BFIBEerr(BFIBE_F_BFIBE_ENCRYPT, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (!BFCiphertextBlock_size(mpk, inlen, &len)) { - BFIBEerr(BFIBE_F_BFIBE_ENCRYPT, BFIBE_R_COMPUTE_OUTLEN_FAILURE); - return 0; - } - if (!out) { - *outlen = len; - return 1; - } - if (*outlen < len) { - BFIBEerr(BFIBE_F_BFIBE_ENCRYPT, BFIBE_R_BUFFER_TOO_SMALL); - return 0; - } - - if (!(c = BFIBE_do_encrypt(mpk, in, inlen, id, idlen))) { - BFIBEerr(BFIBE_F_BFIBE_ENCRYPT, BFIBE_R_ENCRYPT_FAILURE); - goto end; - } - - p = out; - if (!i2d_BFCiphertextBlock(c, &p)) { - BFIBEerr(BFIBE_F_BFIBE_ENCRYPT, BFIBE_R_I2D_FAILURE); - goto end; - } - len = p - out; - - *outlen = len; - ret = 1; - -end: - BFCiphertextBlock_free(c); - return ret; -} - -int BFIBE_decrypt(BFPublicParameters *mpk, - const unsigned char *in, size_t inlen, - unsigned char *out, size_t *outlen, - BFPrivateKeyBlock *sk) -{ - int ret = 0; - BFCiphertextBlock *c = NULL; - const unsigned char *p; - - if (!mpk || !in || inlen <= 0 || !outlen || !sk) { - BFIBEerr(BFIBE_F_BFIBE_DECRYPT, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (!out) { - *outlen = inlen; - return 1; - } - if (*outlen < inlen) { - BFIBEerr(BFIBE_F_BFIBE_DECRYPT, BFIBE_R_BUFFER_TOO_SMALL); - return 0; - } - - p = in; - if (!(c = d2i_BFCiphertextBlock(NULL, &p, inlen))) { - BFIBEerr(BFIBE_F_BFIBE_DECRYPT, BFIBE_R_D2I_FAILURE); - goto end; - } - - /* check no remaining ciphertext */ - if (p - in != inlen) { - BFIBEerr(BFIBE_F_BFIBE_DECRYPT, BFIBE_R_INVALID_CIPHERTEXT); - goto end; - } - - if (!BFIBE_do_decrypt(mpk, c, out, outlen, sk)) { - BFIBEerr(BFIBE_F_BFIBE_DECRYPT, BFIBE_R_DECRYPT_FAILURE); - goto end; - } - - ret = 1; -end: - BFCiphertextBlock_free(c); - return ret; -} - diff --git a/crypto/bfibe/build.info b/crypto/bfibe/build.info deleted file mode 100644 index 692d02c5..00000000 --- a/crypto/bfibe/build.info +++ /dev/null @@ -1,2 +0,0 @@ -LIBS=../../libcrypto -SOURCE[../../libcrypto]=bfibe_err.c bfibe_asn1.c bfibe_lib.c diff --git a/crypto/ec/build.info b/crypto/ec/build.info index 7ae2811e..863e4d6a 100644 --- a/crypto/ec/build.info +++ b/crypto/ec/build.info @@ -6,7 +6,7 @@ SOURCE[../../libcrypto]=\ 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 \ - {- $target{ec_asm_src} -} ecahe.c + {- $target{ec_asm_src} -} GENERATE[ecp_nistz256-x86.s]=asm/ecp_nistz256-x86.pl $(PERLASM_SCHEME) $(CFLAGS) $(LIB_CFLAGS) $(PROCESSOR) diff --git a/crypto/ec/ecahe.c b/crypto/ec/ecahe.c deleted file mode 100644 index c409fa54..00000000 --- a/crypto/ec/ecahe.c +++ /dev/null @@ -1,456 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 - 2019 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include -#include - -struct ECAHE_CIPHERTEXT_st { - EC_POINT *A; - EC_POINT *B; -}; - -ASN1_SEQUENCE(ECAHE_CIPHERTEXT) = { - ASN1_SIMPLE(ECAHE_CIPHERTEXT, A, ASN1_OCTET_STRING), - ASN1_SIMPLE(ECAHE_CIPHERTEXT, B, ASN1_OCTET_STRING) -} ASN1_SEQUENCE_END(ECAHE_CIPHERTEXT) -IMPLEMENT_ASN1_FUNCTIONS(ECAHE_CIPHERTEXT) -IMPLEMENT_ASN1_DUP_FUNCTION(ECAHE_CIPHERTEXT) - - -#define EC_MAX_PLAINTEXT (65536) - - -int ECAHE_ciphertext_size(EC_KEY *pk) -{ - ECerr(EC_F_ECAHE_CIPHERTEXT_SIZE, ERR_R_EC_LIB); - return 0; -} - -int ECAHE_encrypt(unsigned char *out, size_t *outlen, const BIGNUM *in, EC_KEY *pk) -{ - ECerr(EC_F_ECAHE_ENCRYPT, ERR_R_EC_LIB); - return 0; -} - -int ECAHE_decrypt(unsigned long *out, const unsigned char *in, size_t inlen, EC_KEY *sk) -{ - ECerr(EC_F_ECAHE_DECRYPT, ERR_R_EC_LIB); - return 0; -} - -int ECAHE_do_encrypt(ECAHE_CIPHERTEXT *c, const BIGNUM *m, EC_KEY *pk) -{ - int ret = -1; - const EC_GROUP *group; - const EC_POINT *point; - BIGNUM *order = NULL; - BN_CTX *ctx = NULL; - BIGNUM *r = NULL; - - OPENSSL_assert(c); - OPENSSL_assert(m); - OPENSSL_assert(pk); - - if (!(group = EC_KEY_get0_group(pk))) { - ERR_print_errors_fp(stderr); - goto end; - } - - if (!(order = BN_new())) { - ERR_print_errors_fp(stderr); - goto end; - } - - if (!(ctx = BN_CTX_new())) { - ERR_print_errors_fp(stderr); - goto end; - } - - if (!EC_GROUP_get_order(group, order, ctx)) { - ERR_print_errors_fp(stderr); - goto end; - } - - if (!(r = BN_new())) { - ERR_print_errors_fp(stderr); - goto end; - } - - do { - if (!BN_rand_range(r, order)) { - ERR_print_errors_fp(stderr); - goto end; - } - - } while (BN_is_zero(r)); - - if (c->A == NULL) { - if (!(c->A = EC_POINT_new(group))) { - ERR_print_errors_fp(stderr); - goto end; - } - } - - /* c->A = [r]G */ - if (!EC_POINT_mul(group, c->A, r, NULL, NULL, ctx)) { - ERR_print_errors_fp(stderr); - goto end; - } - - if (c->B == NULL) { - if (!(c->B = EC_POINT_new(group))) { - ERR_print_errors_fp(stderr); - goto end; - } - } - - if (!(point = EC_KEY_get0_public_key(pk))) { - ERR_print_errors_fp(stderr); - goto end; - } - - { - //EC_POINT *T = EC_POINT_new(group); - //EC_POINT_mul(group, T, m, NULL, NULL, ctx); - //printf("[m]G = %s\n", EC_POINT_point2hex(group, T, EC_PUBKEY_FORMAT, ctx)); - } - - /* c->b = [m]G + [r]P */ - if (!EC_POINT_mul(group, c->B, m, point, r, ctx)) { - ERR_print_errors_fp(stderr); - goto end; - } - - ret = 0; - -end: - if (r) BN_free(r); - if (order) BN_free(order); - if (ctx) BN_CTX_free(ctx); - - return ret; -} - -/* A == [r]G - * B == [m]G + [r]P == [m]G + [rd]G - * B - [d]A == B - [rd]G == [m]G - */ -int ECAHE_do_decrypt(BIGNUM *m, const ECAHE_CIPHERTEXT *c, EC_KEY *sk) -{ - int ret = -1; - - const EC_GROUP *group; - const EC_POINT *G; - const BIGNUM *d; - BN_CTX *ctx = NULL; - BIGNUM *order = NULL; - EC_POINT *point = NULL; - EC_POINT *point2 = NULL; - unsigned int i; - - OPENSSL_assert(m); - OPENSSL_assert(c && c->A && c->B); - OPENSSL_assert(sk); - - if (!(group = EC_KEY_get0_group(sk))) { - ERR_print_errors_fp(stderr); - goto end; - } - - if (!(G = EC_GROUP_get0_generator(group))) { - ERR_print_errors_fp(stderr); - goto end; - } - - if (!(d = EC_KEY_get0_private_key(sk))) { - ERR_print_errors_fp(stderr); - goto end; - } - - if (!(ctx = BN_CTX_new())) { - ERR_print_errors_fp(stderr); - goto end; - } - - if (!(order = BN_new())) { - ERR_print_errors_fp(stderr); - goto end; - } - - if (!EC_GROUP_get_order(group, order, ctx)) { - ERR_print_errors_fp(stderr); - goto end; - } - - if (!(point = EC_POINT_new(group))) { - ERR_print_errors_fp(stderr); - goto end; - } - - if (!BN_one(order)) { - ERR_print_errors_fp(stderr); - goto end; - } - - /* point = [d]A = [rd]G */ - if (!EC_POINT_mul(group, point, NULL, c->A, d, ctx)) { - ERR_print_errors_fp(stderr); - goto end; - } - - /* point = -[rd]G */ - if (!EC_POINT_invert(group, point, ctx)) { - ERR_print_errors_fp(stderr); - goto end; - } - - /* point = B - [rd]G = [m]G + [rd]G - [rd]G = [m]G */ - if (!EC_POINT_add(group, point, point, c->B, ctx)) { - ERR_print_errors_fp(stderr); - goto end; - } - - { - //printf("[m]G = %s\n", EC_POINT_point2hex(group, point, EC_PUBKEY_FORMAT, ctx)); - } - - if (!(point2 = EC_POINT_new(group))) { - ERR_print_errors_fp(stderr); - goto end; - } - - if (!EC_POINT_set_to_infinity(group, point2)) { - ERR_print_errors_fp(stderr); - goto end; - } - - for (i = 0; i < EC_MAX_PLAINTEXT; i++) { - - //printf("%03d ", i); - //printf(" %s\n", EC_POINT_point2hex(group, point, EC_PUBKEY_FORMAT, ctx)); - //printf(" %s\n", EC_POINT_point2hex(group, point2, EC_PUBKEY_FORMAT, ctx)); - - if (EC_POINT_cmp(group, point, point2, ctx) == 0) { - if (!BN_set_word(m, i)) { - ERR_print_errors_fp(stderr); - goto end; - } - - //printf("SUCCESS: %d\n", i+1); - ret = 0; - goto end; - } - - EC_POINT_add(group, point2, point2, EC_GROUP_get0_generator(group), ctx); - } - - -end: - if (ctx) BN_CTX_free(ctx); - if (order) BN_free(order); - if (point) EC_POINT_free(point); - if (point2) EC_POINT_free(point2); - - return ret; -} - -int ECAHE_ciphertext_add(ECAHE_CIPHERTEXT *r, - const ECAHE_CIPHERTEXT *a, const ECAHE_CIPHERTEXT *b, - EC_KEY *pk) -{ - const EC_GROUP *group = EC_KEY_get0_group(pk); - BN_CTX *ctx = NULL; - - if (!(group = EC_KEY_get0_group(pk))) { - ERR_print_errors_fp(stderr); - return -1; - } - - OPENSSL_assert(a->A); - OPENSSL_assert(b->A); - OPENSSL_assert(a->B); - OPENSSL_assert(b->B); - - if (r->A == NULL) { - if (!(r->A = EC_POINT_new(group))) { - ERR_print_errors_fp(stderr); - return -1; - } - } - - if (r->B == NULL) { - if (!(r->B = EC_POINT_new(group))) { - ERR_print_errors_fp(stderr); - return -1; - } - } - - if (!(ctx = BN_CTX_new())) { - ERR_print_errors_fp(stderr); - return -1; - } - - - if (!EC_POINT_add(group, r->A, a->A, b->A, ctx)) { - ERR_print_errors_fp(stderr); - BN_CTX_free(ctx); - return -1; - } - - - if (!EC_POINT_add(group, r->B, a->B, b->B, ctx)) { - ERR_print_errors_fp(stderr); - BN_CTX_free(ctx); - return -1; - } - - BN_CTX_free(ctx); - - return 0; -} - -int ECAHE_ciphertext_sub(ECAHE_CIPHERTEXT *r, - const ECAHE_CIPHERTEXT *a, const ECAHE_CIPHERTEXT *b, - EC_KEY *pk) -{ - const EC_GROUP *group = EC_KEY_get0_group(pk); - BN_CTX *ctx = NULL; - - if (!(group = EC_KEY_get0_group(pk))) { - ERR_print_errors_fp(stderr); - return -1; - } - - OPENSSL_assert(a->A); - OPENSSL_assert(b->A); - OPENSSL_assert(a->B); - OPENSSL_assert(b->B); - - if (ECAHE_ciphertext_neg(r, b, pk) < 0) { - fprintf(stderr, "%s (%s %d): ec_ciphertext_neg failed\n", - __FUNCTION__, __FILE__, __LINE__); - return -1; - } - - - if (!(ctx = BN_CTX_new())) { - ERR_print_errors_fp(stderr); - return -1; - } - - - if (!EC_POINT_add(group, r->A, r->A, a->A, ctx)) { - ERR_print_errors_fp(stderr); - BN_CTX_free(ctx); - return -1; - } - - if (!EC_POINT_add(group, r->B, r->B, a->B, ctx)) { - ERR_print_errors_fp(stderr); - BN_CTX_free(ctx); - return -1; - } - - BN_CTX_free(ctx); - - return 0; -} - -int ECAHE_ciphertext_neg(ECAHE_CIPHERTEXT *r, const ECAHE_CIPHERTEXT *a, - EC_KEY *pk) -{ - const EC_GROUP *group; - BN_CTX *ctx = NULL; - - OPENSSL_assert(r && a && pk); - OPENSSL_assert(a->A); - OPENSSL_assert(a->B); - - - if (!(group = EC_KEY_get0_group(pk))) { - ERR_print_errors_fp(stderr); - return -1; - } - - - if (r->A) - EC_POINT_free(r->A); - if (!(r->A = EC_POINT_dup(a->A, group))) { - ERR_print_errors_fp(stderr); - return -1; - } - - if (r->B) - EC_POINT_free(r->B); - if (!(r->B = EC_POINT_dup(a->B, group))) { - ERR_print_errors_fp(stderr); - return -1; - } - - if (!(ctx = BN_CTX_new())) { - ERR_print_errors_fp(stderr); - return -1; - } - if (!EC_POINT_invert(group, r->A, ctx)) { - ERR_print_errors_fp(stderr); - BN_CTX_free(ctx); - return -1; - } - if (!EC_POINT_invert(group, r->B, ctx)) { - ERR_print_errors_fp(stderr); - BN_CTX_free(ctx); - return -1; - } - - BN_CTX_free(ctx); - - return 0; -} diff --git a/crypto/ec2/bn_gfp2.c b/crypto/ec2/bn_gfp2.c deleted file mode 100644 index f4f77bc1..00000000 --- a/crypto/ec2/bn_gfp2.c +++ /dev/null @@ -1,490 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ -/* - * this file implement complex number over prime field - * a = a0 + a1 * i, i^2 == -1 - * most of the routines should be replaced by macros - */ - -#include -#include -#include -#include -#include -#include -#include - -/* - * to make it simple, currently both a0 and a1 will be inited - */ - -BN_GFP2 *BN_GFP2_new(void) -{ - int e = 1; - BN_GFP2 *ret = NULL; - - if (!(ret = OPENSSL_malloc(sizeof(BN_GFP2)))) { - BNerr(BN_F_BN_GFP2_NEW, ERR_R_MALLOC_FAILURE); - return NULL; - } - - ret->a0 = BN_new(); - ret->a1 = BN_new(); - if (!ret->a0 || !ret->a1) { - BNerr(BN_F_BN_GFP2_NEW, ERR_R_MALLOC_FAILURE); - goto end; - } - - BN_zero(ret->a0); - BN_zero(ret->a1); - - e = 0; -end: - if (e && ret) { - BN_GFP2_free(ret); - ret = NULL; - } - return ret; -} - -void BN_GFP2_free(BN_GFP2 *a) -{ - if (a) { - BN_free(a->a0); - BN_free(a->a1); - OPENSSL_free(a); - } -} - -int BN_GFP2_copy(BN_GFP2 *r, const BN_GFP2 *a) -{ - if (!r || !r->a0 || !r->a1 || !a || !a->a0 || !a->a1) { - BNerr(BN_F_BN_GFP2_COPY, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (!BN_copy(r->a0, a->a0)) { - BNerr(BN_F_BN_GFP2_COPY, ERR_R_BN_LIB); - return 0; - } - if (!BN_copy(r->a1, a->a1)) { - BNerr(BN_F_BN_GFP2_COPY, ERR_R_BN_LIB); - return 0; - } - - return 1; -} - -int BN_GFP2_one(BN_GFP2 *a) -{ - if (!a || !a->a0 || !a->a1) { - BNerr(BN_F_BN_GFP2_ONE, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - BN_one(a->a0); - BN_zero(a->a1); - return 1; -} - -int BN_GFP2_zero(BN_GFP2 *a) -{ - if (!a || !a->a0 || !a->a1) { - BNerr(BN_F_BN_GFP2_ZERO, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - BN_zero(a->a0); - BN_zero(a->a1); - return 1; -} - -/* return 1 on success, so dont use !BN_GFP2_is_zero() to check return value */ -int BN_GFP2_is_zero(const BN_GFP2 *a) -{ - if (!a || !a->a0 || !a->a1) { - BNerr(BN_F_BN_GFP2_IS_ZERO, ERR_R_PASSED_NULL_PARAMETER); - return -1; - } - - return (BN_is_zero(a->a0) && BN_is_zero(a->a1)); -} - -int BN_GFP2_equ(const BN_GFP2 *a, const BN_GFP2 *b) -{ - if (!a || !b || !a->a0 || !a->a1 || !b->a0 || !b->a1) { - BNerr(BN_F_BN_GFP2_EQU, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - return ((BN_cmp(a->a0, b->a0) == 0) && (BN_cmp(a->a1, b->a1) == 0)); -} - -int BN_GFP2_add(BN_GFP2 *r, const BN_GFP2 *a, const BN_GFP2 *b, - const BIGNUM *p, BN_CTX *ctx) -{ - if (!a || !b || !a->a0 || !a->a1 || !b->a0 || !b->a1 || !p || !ctx) { - BNerr(BN_F_BN_GFP2_ADD, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (!BN_mod_add(r->a0, a->a0, b->a0, p, ctx)) { - BNerr(BN_F_BN_GFP2_ADD, ERR_R_BN_LIB); - return 0; - } - if (!BN_mod_add(r->a1, a->a1, b->a1, p, ctx)) { - BNerr(BN_F_BN_GFP2_ADD, ERR_R_BN_LIB); - return 0; - } - - return 1; -} - -int BN_GFP2_sub(BN_GFP2 *r, const BN_GFP2 *a, const BN_GFP2 *b, - const BIGNUM *p, BN_CTX *ctx) -{ - if (!a || !b || !a->a0 || !a->a1 || !b->a0 || !b->a1 || !p || !ctx) { - BNerr(BN_F_BN_GFP2_SUB, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (!BN_mod_sub(r->a0, a->a0, b->a0, p, ctx)) { - BNerr(BN_F_BN_GFP2_SUB, ERR_R_BN_LIB); - return 0; - } - if (!BN_mod_sub(r->a1, a->a1, b->a1, p, ctx)) { - BNerr(BN_F_BN_GFP2_SUB, ERR_R_BN_LIB); - return 0; - } - - return 1; -} - -/* - * (a0 + a1 * i) * (b0 + b1 * i) - * = a0 * b0 + a1 * b1 * i^2 + (a0 * b1 + a1 * b0) * i - * = (a0 * b0 - a1 * b1) + (a0 * b1 + a1 * b0) * i - */ -int BN_GFP2_mul(BN_GFP2 *r, const BN_GFP2 *a, const BN_GFP2 *b, - const BIGNUM *p, BN_CTX *ctx) -{ - int ret = 0; - BIGNUM *t = NULL; - - BN_CTX_start(ctx); - - if (!(t = BN_CTX_get(ctx))) { - BNerr(BN_F_BN_GFP2_MUL, ERR_R_BN_LIB); - goto end; - } - - /* r->a0 = a->a0 * b->a0 - a->a1 * b->a1 (mod p) */ - if (!BN_mod_mul(r->a0, a->a0, b->a0, p, ctx)) { - BNerr(BN_F_BN_GFP2_MUL, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_mul(t, a->a1, b->a1, p, ctx)) { - BNerr(BN_F_BN_GFP2_MUL, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_sub(r->a0, r->a0, t, p, ctx)) { - BNerr(BN_F_BN_GFP2_MUL, ERR_R_BN_LIB); - goto end; - } - - /* r->a1 = a->a0 * b->a1 + a->a1 * b->a0 (mod p) */ - if (!BN_mod_mul(r->a1, a->a0, b->a1, p, ctx)) { - BNerr(BN_F_BN_GFP2_MUL, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_mul(t, a->a1, b->a0, p, ctx)) { - BNerr(BN_F_BN_GFP2_MUL, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_add(r->a1, r->a1, t, p, ctx)) { - BNerr(BN_F_BN_GFP2_MUL, ERR_R_BN_LIB); - goto end; - } - - ret = 1; -end: - BN_CTX_end(ctx); - return ret; -} - -int BN_GFP2_sqr(BN_GFP2 *r, const BN_GFP2 *a, - const BIGNUM *p, BN_CTX *ctx) -{ - return BN_GFP2_mul(r, a, a, p, ctx); -} - -/* - * (a0 + a1 * i) * (a0 - a1 * i) - * = a0^2 - a1^2 * i^2 - * = a0^2 + a1^2 - * ==> (a0 + a1 * i) * (a0 - a1 * i) * (a0^2 + a1^2)^-1 == 1 - * ==> (a0 + a1 * i)^-1 == (a0 - a1 * i) * (a0^2 + a1^2)^-1 - */ -int BN_GFP2_inv(BN_GFP2 *r, const BN_GFP2 *a, const BIGNUM *p, BN_CTX *ctx) -{ - int ret = 0; - BIGNUM *t = NULL; - - BN_CTX_start(ctx); - - if (!(t = BN_CTX_get(ctx))) { - BNerr(BN_F_BN_GFP2_INV, ERR_R_BN_LIB); - goto end; - } - - /* t = (a0^2 + a1^2)^-1 */ - if (!BN_mod_sqr(r->a0, a->a0, p, ctx)) { - BNerr(BN_F_BN_GFP2_INV, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_sqr(r->a1, a->a1, p, ctx)) { - BNerr(BN_F_BN_GFP2_INV, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_mul(t, r->a0, r->a1, p, ctx)) { - BNerr(BN_F_BN_GFP2_INV, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_inverse(t, t, p, ctx)) { - BNerr(BN_F_BN_GFP2_INV, ERR_R_BN_LIB); - goto end; - } - - /* r0 = a0^ t (mod p) */ - if (!BN_mod_mul(r->a0, a->a0, t, p, ctx)) { - BNerr(BN_F_BN_GFP2_INV, ERR_R_BN_LIB); - goto end; - } - - /* r1 = p - a1^t (mod p) */ - if (!BN_mod_mul(r->a1, a->a1, t, p, ctx)) { - BNerr(BN_F_BN_GFP2_INV, ERR_R_BN_LIB); - goto end; - } - if (!BN_sub(r->a1, p, r->a1)) { - BNerr(BN_F_BN_GFP2_INV, ERR_R_BN_LIB); - goto end; - } - - ret = 1; -end: - BN_CTX_end(ctx); - return ret; -} - -int BN_GFP2_div(BN_GFP2 *r, const BN_GFP2 *a, const BN_GFP2 *b, const BIGNUM *p, BN_CTX *ctx) -{ - if (!BN_GFP2_inv(r, b, p, ctx)) { - return 0; - } - if (!BN_GFP2_mul(r, a, r, p, ctx)) { - return 0; - } - return 1; -} - -/* need a fast implementation. check if k is solinas */ -int BN_GFP2_exp(BN_GFP2 *r, const BN_GFP2 *a, const BIGNUM *k, const BIGNUM *p, - BN_CTX *ctx) -{ - - return 0; -} - -int BN_GFP2_set_bn(BN_GFP2 *r, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx) -{ - if (!r || !a || !p) { - BNerr(BN_F_BN_GFP2_SET_BN, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - if (!BN_copy(r->a0, a)) { - BNerr(BN_F_BN_GFP2_SET_BN, ERR_R_BN_LIB); - return 0; - } - BN_zero(r->a1); - return 1; -} - -int BN_GFP2_add_bn(BN_GFP2 *r, const BN_GFP2 *a, const BIGNUM *b, - const BIGNUM *p, BN_CTX *ctx) -{ - return BN_mod_add(r->a0, a->a0, b, p, ctx); -} - -int BN_GFP2_sub_bn(BN_GFP2 *r, const BN_GFP2 *a, const BIGNUM *b, - const BIGNUM *p, BN_CTX *ctx) -{ - return BN_mod_sub(r->a0, a->a0, b, p, ctx); -} - -int BN_GFP2_mul_bn(BN_GFP2 *r, const BN_GFP2 *a, const BIGNUM *b, - const BIGNUM *p, BN_CTX *ctx) -{ - return BN_mod_mul(r->a0, a->a0, b, p, ctx); -} - -int BN_GFP2_div_bn(BN_GFP2 *r, const BN_GFP2 *a, const BIGNUM *b, - const BIGNUM *p, BN_CTX *ctx) -{ - int ret = 0; - BIGNUM *binv; - - if (!(binv = BN_CTX_get(ctx))) { - BNerr(BN_F_BN_GFP2_DIV_BN, ERR_R_MALLOC_FAILURE); - goto end; - } - if (!BN_mod_inverse(binv, b, p, ctx)) { - BNerr(BN_F_BN_GFP2_DIV_BN, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_mul(r->a0, a->a0, binv, p, ctx)) { - BNerr(BN_F_BN_GFP2_DIV_BN, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_mul(r->a1, a->a1, binv, p, ctx)) { - BNerr(BN_F_BN_GFP2_DIV_BN, ERR_R_BN_LIB); - goto end; - } - - ret = 1; -end: - BN_CTX_end(ctx); - return ret; -} - -int BN_bn2gfp2(const BIGNUM *bn, BN_GFP2 *gfp2, const BIGNUM *p, BN_CTX *ctx) -{ - int ret = 0; - BIGNUM *a; - - if (!(a = BN_CTX_get(ctx))) { - goto end; - } - - BN_one(a); - if (!BN_lshift(a, a, BN_num_bytes(p)*8)) { - goto end; - } - - if (!BN_rshift(gfp2->a1, bn, BN_num_bytes(p)*8)) { - goto end; - } - if (!BN_mod(gfp2->a0, bn, a, ctx)) { - goto end; - } - - ret = 1; -end: - BN_CTX_end(ctx); - return ret; -} - -/* return (a0 + a1 << 2^n), n = log_2(p), n % 8 == 0 */ -int BN_gfp22bn(const BN_GFP2 *gfp2, BIGNUM *bn, const BIGNUM *p, BN_CTX *ctx) -{ - if (!BN_lshift(bn, gfp2->a1, BN_num_bytes(p) * 8)) { - return 0; - } - if (!BN_add(bn, bn, gfp2->a0)) { - return 0; - } - return 1; -} - -int BN_GFP2_canonical(const BN_GFP2 *a, unsigned char *out, size_t *outlen, - int order, const BIGNUM *p, BN_CTX *ctx) -{ - size_t len; - - if (!a || !a->a0 || !a->a1 || !outlen || !p) { - BNerr(BN_F_BN_GFP2_CANONICAL, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - len = BN_num_bytes(p) * 2; - if (!out) { - *outlen = len; - return 1; - } - if (*outlen < len) { - BNerr(BN_F_BN_GFP2_CANONICAL, BN_R_BUFFER_TOO_SMALL); - return 0; - } - - memset(out, 0, len); - if (order == 0) { - /* low order first output (a0, a1) */ - if (!BN_bn2bin(a->a0, out + len/2 - BN_num_bytes(a->a0))) { - BNerr(BN_F_BN_GFP2_CANONICAL, ERR_R_BN_LIB); - return 0; - } - if (!BN_bn2bin(a->a1, out + len - BN_num_bytes(a->a1))) { - BNerr(BN_F_BN_GFP2_CANONICAL, ERR_R_BN_LIB); - return 0; - } - } else { - /* high order first output (a1, a0) */ - if (!BN_bn2bin(a->a1, out + len/2 - BN_num_bytes(a->a1))) { - BNerr(BN_F_BN_GFP2_CANONICAL, ERR_R_BN_LIB); - return 0; - } - if (!BN_bn2bin(a->a0, out + len - BN_num_bytes(a->a0))) { - BNerr(BN_F_BN_GFP2_CANONICAL, ERR_R_BN_LIB); - return 0; - } - } - - *outlen = len; - return 1; -} diff --git a/crypto/ec2/bn_hash.c b/crypto/ec2/bn_hash.c deleted file mode 100644 index badb36d2..00000000 --- a/crypto/ec2/bn_hash.c +++ /dev/null @@ -1,137 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include -#include -#include -#include "../bn/bn_lcl.h" - -int BN_hash_to_range(const EVP_MD *md, BIGNUM **bn, - const void *s, size_t slen, const BIGNUM *range, BN_CTX *bn_ctx) -{ - int ret = 0; - BIGNUM *r = NULL; - BIGNUM *a = NULL; - unsigned char *buf = NULL; - size_t buflen, mdlen; - int nbytes, rounds, i; - - if (!s || slen <= 0 || !md || !range) { - BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (!(*bn)) { - if (!(r = BN_new())) { - BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_MALLOC_FAILURE); - return 0; - } - } else { - r = *bn; - BN_zero(r); - } - - mdlen = EVP_MD_size(md); - buflen = mdlen + slen; - if (!(buf = OPENSSL_malloc(buflen))) { - BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_MALLOC_FAILURE); - goto end; - } - memset(buf, 0, mdlen); - memcpy(buf + mdlen, s, slen); - - a = BN_new(); - if (!a) { - BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_MALLOC_FAILURE); - goto end; - } - - nbytes = BN_num_bytes(range); - rounds = (nbytes + mdlen - 1)/mdlen; - - if (!bn_expand(r, rounds * mdlen * 8)) { - BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_BN_LIB); - goto end; - } - - for (i = 0; i < rounds; i++) { - if (!EVP_Digest(buf, buflen, buf, (unsigned int *)&mdlen, md, NULL)) { - BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_EVP_LIB); - goto end; - } - if (!BN_bin2bn(buf, mdlen, a)) { - BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_BN_LIB); - goto end; - } - if (!BN_lshift(r, r, mdlen * 8)) { - BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_BN_LIB); - goto end; - } - if (!BN_uadd(r, r, a)) { - goto end; - } - } - - if (!BN_mod(r, r, range, bn_ctx)) { - BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_BN_LIB); - goto end; - } - - *bn = r; - ret = 1; -end: - if (!ret && !(*bn)) { - BN_free(r); - } - BN_free(a); - OPENSSL_free(buf); - return ret; -} diff --git a/crypto/ec2/bn_solinas.c b/crypto/ec2/bn_solinas.c deleted file mode 100644 index 919680d0..00000000 --- a/crypto/ec2/bn_solinas.c +++ /dev/null @@ -1,218 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include -#include -#include -#include -#include "../bn/bn_lcl.h" - -/* - * generate the solinas prime tables, - * use it for fast check of solinas - */ - -#define BN_SOLINAS_192V1 0 -#define BN_SOLINAS_192V2 1 -#define BN_SOLINAS_224V1 2 -#define BN_SOLINAS_256V1 3 -#define BN_SOLINAS_384V1 4 -#define BN_SOLINAS_512V1 5 -#define BN_SOLINAS_512V2 6 -#define BN_SOLINAS_1024V1 7 -#define BN_SOLINAS_1024V2 8 - -#if 0 -//remove warnings -static BN_SOLINAS BN_solinas_table[] = { - { 192, 16, -1, -1 }, - { 192, 64, -1, -1 }, - { 224, 96, -1, 1 }, - { 256, 168, -1, 1 }, - { 384, 80, -1, 1 }, - { 512, 32, -1, 1 }, - { 512, 32, -1, -1 }, - { 1024, 424, -1, -1 }, - { 1024, 856, -1, 1 }, -}; -#endif - -/* - * solinas = 2^a + s * 2^b + c, where s, c in {1, -1} - * solinas looks like: - * 2^a + 2^b + 1 = 10000100001 - * 2^a - 2^b + 1 = 1111100001 - * 2^a + 2^b - 1 = 10000011111 - * 2^a - 2^b - 1 = 1111011111 - * so: - * n = len(bits(solinas)) - * c = bits(solinas)[1] == 0 ? 1 : -1 - * s = bits(solinas)[n-2] == 0 ? 1 : -1 - * a = bits(solinas)[n-2] == 0 ? n-1 : n-2 - * b = len(bits(solinas - 2^a - s*2^b - c)) - 1 - * - * examples: - * 0xfffffffffffffffffffffffffffbffff - * 0xffffffffffffffffffffffeffffffffffff - * 0xfffffffffbfffffffffffffffffffffffff - */ - -int BN_bn2solinas(const BIGNUM *bn, BN_SOLINAS *solinas) -{ - int ret = 0; - BIGNUM *tmp = NULL; - int nbits; - int i; - - if (!solinas || !bn) { - BNerr(BN_F_BN_BN2SOLINAS, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (!BN_copy(tmp, bn)) { - goto end; - } - - if ((nbits = BN_num_bits(bn) - 1) < 1) { - BNerr(BN_F_BN_BN2SOLINAS, BN_R_INVALID_SOLINAS); - goto end; - } - - solinas->c = BN_is_bit_set(bn, 1) ? 1 : -1; - - if (BN_is_bit_set(bn, nbits - 1)) { - solinas->s = -1; - solinas->a = nbits; - } else { - solinas->s = 1; - solinas->a = nbits - 1; - } - - for (i = 1; i < nbits; i++) { - } - -end: - return ret; -} - -int BN_solinas2bn(const BN_SOLINAS *solinas, BIGNUM *bn) -{ - int ret = 0; - BIGNUM *tmp = NULL; - - if (!solinas || !bn) { - BNerr(BN_F_BN_SOLINAS2BN, ERR_R_MALLOC_FAILURE); - return 0; - } - - if (solinas->b <= 0 || solinas->a <= solinas->b - || (solinas->s != 1 && solinas->s != -1) - || (solinas->c != 1 && solinas->c != -1)) { - BNerr(BN_F_BN_SOLINAS2BN, BN_R_INVALID_SOLINAS_PARAMETERS); - return 0; - } - - if (!(tmp = BN_new())) { - BNerr(BN_F_BN_SOLINAS2BN, ERR_R_MALLOC_FAILURE); - goto end; - } - - BN_one(tmp); - - if (!BN_lshift(bn, tmp, solinas->a)) { - BNerr(BN_F_BN_SOLINAS2BN, ERR_R_BN_LIB); - goto end; - } - - if (!BN_lshift(tmp, tmp, solinas->b)) { - BNerr(BN_F_BN_SOLINAS2BN, ERR_R_BN_LIB); - goto end; - } - - if (!BN_add_word(tmp, solinas->c)) { - BNerr(BN_F_BN_SOLINAS2BN, ERR_R_BN_LIB); - goto end; - } - - if (solinas->s > 0) { - if (!BN_add(bn, bn, tmp)) { - BNerr(BN_F_BN_SOLINAS2BN, ERR_R_BN_LIB); - goto end; - } - } else { - if (!BN_sub(bn, bn, tmp)) { - BNerr(BN_F_BN_SOLINAS2BN, ERR_R_BN_LIB); - goto end; - } - } - - /* check if it is a prime */ - - ret = 1; -end: - BN_free(tmp); - return ret; -} - -int BN_generate_solinas(BIGNUM *ret, BN_SOLINAS *solinas, BN_GENCB *cb) -{ - return 0; -} - -int BN_is_solinas(const BIGNUM *a) -{ - return 0; -} - -BN_SOLINAS *BN_get_solinas(int index) -{ - return NULL; -} diff --git a/crypto/ec2/build.info b/crypto/ec2/build.info deleted file mode 100644 index 59ac0589..00000000 --- a/crypto/ec2/build.info +++ /dev/null @@ -1,3 +0,0 @@ -LIBS=../../libcrypto -SOURCE[../../libcrypto]=bn_gfp2.c bn_solinas.c bn_hash.c \ - fppoint.c ec_hash.c ec_type1.c diff --git a/crypto/ec2/ec_hash.c b/crypto/ec2/ec_hash.c deleted file mode 100644 index 3d8af96b..00000000 --- a/crypto/ec2/ec_hash.c +++ /dev/null @@ -1,181 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include -#include -#include - -/* currently the EC_POINT_hash2point only support type1curve! */ -int EC_POINT_hash2point(const EC_GROUP *group, const EVP_MD *md, - const char *s, size_t slen, EC_POINT *point, BN_CTX *bn_ctx) -{ - int ret = 0; - BIGNUM *p = NULL; - BIGNUM *x = NULL; - BIGNUM *y = NULL; - BIGNUM *k = NULL; - BIGNUM *q = NULL; - - if (!group || !md || !point || !s || slen <= 0 || !bn_ctx) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (EC_METHOD_get_field_type(EC_GROUP_method_of(group)) != NID_X9_62_prime_field) { - ECerr(EC_F_EC_POINT_HASH2POINT, EC_R_INVALID_CURVE); - return 0; - } - - p = BN_new(); - x = BN_new(); - y = BN_new(); - k = BN_new(); - q = BN_new(); - - if (!p || !x || !y || !k || !q) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_MALLOC_FAILURE); - goto end; - } - - if (!EC_GROUP_get_curve_GFp(group, p, x, y, bn_ctx)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_EC_LIB); - goto end; - } - - /* check group is type-1 curve */ - if (!BN_is_zero(x) || !BN_is_one(y) || BN_mod_word(p, 12) != 11) { - ECerr(EC_F_EC_POINT_HASH2POINT, EC_R_INVALID_CURVE); - goto end; - } - - /* get order */ - if (!EC_GROUP_get_order(group, q, bn_ctx)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_EC_LIB); - goto end; - } - - /* y = HashToRange(s) in [0, p - 1] */ - if (!BN_hash_to_range(md, &y, s, slen, p, bn_ctx)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_BN_LIB); - goto end; - } - - /* x = (y + 1) * (y - 1) mod p */ - if (!BN_copy(x, y)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_BN_LIB); - goto end; - } - if (!BN_copy(k, y)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_BN_LIB); - goto end; - } - if (!BN_add_word(x, 1)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_BN_LIB); - goto end; - } - if (!BN_sub_word(k, 1)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_mul(x, x, k, p, bn_ctx)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_BN_LIB); - goto end; - } - - /* k = (p^2 - 1)/3 */ - if (!BN_lshift1(k, p)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_BN_LIB); - goto end; - } - if (!BN_sub_word(k, 1)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_BN_LIB); - goto end; - } - if (!BN_div_word(k, 3)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_BN_LIB); - goto end; - } - - /* compute x and point = (x, y) */ - if (!BN_mod_exp(x, x, k, p, bn_ctx)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_BN_LIB); - goto end; - } - - if (!EC_POINT_set_affine_coordinates_GFp(group, point, x, y, bn_ctx)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_EC_LIB); - goto end; - } - - /* compute [(p + 1)/q] * point */ - if (!BN_add_word(p, 1)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_BN_LIB); - goto end; - } - if (!BN_div(k, NULL, p, q, bn_ctx)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_BN_LIB); - goto end; - } - if (!EC_POINT_mul(group, point, NULL, point, k, bn_ctx)) { - ECerr(EC_F_EC_POINT_HASH2POINT, ERR_R_EC_LIB); - goto end; - } - - ret = 1; -end: - BN_free(p); - BN_free(x); - BN_free(y); - BN_free(k); - BN_free(q); - return ret; -} - diff --git a/crypto/ec2/ec_type1.c b/crypto/ec2/ec_type1.c deleted file mode 100644 index 0131cf94..00000000 --- a/crypto/ec2/ec_type1.c +++ /dev/null @@ -1,817 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - * - */ - -#include -#include -#include -#include -#include - - -EC_GROUP *EC_GROUP_generate_type1curve(const BIGNUM *order, BN_CTX *bn_ctx) -{ - ECerr(EC_F_EC_GROUP_GENERATE_TYPE1CURVE, 0); - return 0; -} - -EC_GROUP *EC_GROUP_new_type1curve_ex(const BIGNUM *p, const BIGNUM *a, - const BIGNUM *b, const unsigned char *point, size_t pointlen, - const BIGNUM *order, const BIGNUM *cofactor, BN_CTX *bn_ctx) -{ - return NULL; -} - -EC_GROUP *EC_GROUP_new_type1curve(const BIGNUM *p, - const BIGNUM *x, const BIGNUM *y, const BIGNUM *order, BN_CTX *bn_ctx) -{ - int e = 1; - EC_GROUP *ret = NULL; - BIGNUM *a = NULL; - BIGNUM *b = NULL; - EC_POINT *point = NULL; - - if (!p || !x || !y || !order) { - ECerr(EC_F_EC_GROUP_NEW_TYPE1CURVE, ERR_R_PASSED_NULL_PARAMETER); - return NULL; - } - - /* check p = 11 (mod 12) */ - if (BN_mod_word(p, 12) != 11) { - ECerr(EC_F_EC_GROUP_NEW_TYPE1CURVE, EC_R_INVALID_TYPE1CURVE); - return NULL; - } - - BN_CTX_start(bn_ctx); - a = BN_CTX_get(bn_ctx); - b = BN_CTX_get(bn_ctx); - - if (!a || !b) { - ECerr(EC_F_EC_GROUP_NEW_TYPE1CURVE, ERR_R_MALLOC_FAILURE); - goto end; - } - - BN_zero(a); - BN_one(b); - - if (!(ret = EC_GROUP_new_curve_GFp(p, a, b, bn_ctx))) { - ECerr(EC_F_EC_GROUP_NEW_TYPE1CURVE, EC_R_INVALID_TYPE1CURVE); - goto end; - } - - /* prepare generator point from (x, y) */ - if (!(point = EC_POINT_new(ret))) { - ECerr(EC_F_EC_GROUP_NEW_TYPE1CURVE, ERR_R_MALLOC_FAILURE); - goto end; - } - if (!EC_POINT_set_affine_coordinates_GFp(ret, point, x, y, bn_ctx)) { - ECerr(EC_F_EC_GROUP_NEW_TYPE1CURVE, EC_R_INVALID_TYPE1CURVE); - goto end; - } - - /* - * calculate cofactor h = (p + 1)/n - * check n|(p + 1) where n is the order - */ - if (!BN_copy(a, p)) { - ECerr(EC_F_EC_GROUP_NEW_TYPE1CURVE, ERR_R_BN_LIB); - goto end; - } - if (!BN_add_word(a, 1)) { - ECerr(EC_F_EC_GROUP_NEW_TYPE1CURVE, ERR_R_BN_LIB); - goto end; - } - /* check (p + 1)%n == 0 */ - if (!BN_div(a, b, a, order, bn_ctx)) { - ECerr(EC_F_EC_GROUP_NEW_TYPE1CURVE, ERR_R_BN_LIB); - goto end; - } - if (!BN_is_zero(b)) { - ECerr(EC_F_EC_GROUP_NEW_TYPE1CURVE, EC_R_INVLID_TYPE1CURVE); - goto end; - } - - /* set order and cofactor */ - if (!EC_GROUP_set_generator(ret, point, order, a)) { - ECerr(EC_F_EC_GROUP_NEW_TYPE1CURVE, EC_R_INVALID_TYPE1CURVE); - goto end; - } - - e = 0; - -end: - if (e && ret) { - EC_GROUP_free(ret); - ret = NULL; - } - BN_CTX_end(bn_ctx); - EC_POINT_free(point); - return ret; -} - -int EC_GROUP_is_type1curve(const EC_GROUP *group, BN_CTX *bn_ctx) -{ - ECerr(EC_F_EC_GROUP_IS_TYPE1CURVE, 0); - return 0; -} - -/* - * zeta = F_p((p-1)/2) + ((F_p(3)^((p + 1)/4))/2) * i, in F_p^2 - * which is used in phi() mapping in tate pairing over type1 curve - */ -BN_GFP2 *EC_GROUP_get_type1curve_zeta(const EC_GROUP *group, BN_CTX *bn_ctx) -{ - int e = 1; - BN_GFP2 *ret = NULL; - BIGNUM *a = NULL; - BIGNUM *b = NULL; - BIGNUM *p = NULL; - - if (!group || !bn_ctx) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, ERR_R_PASSED_NULL_PARAMETER); - return NULL; - } - - BN_CTX_start(bn_ctx); - - ret = BN_GFP2_new(); - a = BN_CTX_get(bn_ctx); - b = BN_CTX_get(bn_ctx); - p = BN_CTX_get(bn_ctx); - - if (!ret || !a || !b || !p) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, ERR_R_MALLOC_FAILURE); - goto end; - } - - /* get curve p, a, b and check it is type1 curve - * p is prime at least 512 bits, a == 0 and b == 1 - */ - if (!EC_GROUP_get_curve_GFp(group, a, b, p, bn_ctx)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, ERR_R_EC_LIB); - goto end; - } - if (!BN_is_zero(a) || !BN_is_one(b)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, EC_R_INVALID_TYPE1_CURVE); - goto end; - } - if (BN_num_bits(p) < 512) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, EC_R_INVALID_TYPE1_CURVE); - goto end; - } - - /* - * set ret->a0 = (p - 1)/2 - */ - if (!BN_copy(ret->a0, p)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, ERR_R_MALLOC_FAILURE); - goto end; - } - if (!BN_sub_word(ret->a0, 1)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, ERR_R_EC_LIB); - goto end; - } - /* BN_div_word() return remainder, while (p - 1)%2 == 0 */ - if (BN_div_word(ret->a0, 2)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, EC_R_INVALID_TYPE1_CURVE); - goto end; - } - - /* - * ret->a1 = (p + 1)/4, (ret->a1 + 1)%4 == 0 - */ - if (!BN_copy(ret->a1, p)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, ERR_R_BN_LIB); - goto end; - } - if (!BN_add_word(ret->a1, 1)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, ERR_R_BN_LIB); - goto end; - } - if (BN_div_word(ret->a1, 4)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, EC_R_INVALID_TYPE1_CURVE); - goto end; - } - - /* - * re-use a as 3 - * ret->a1 = 3^(ret->a1) mod p = 3^((p + 1)/4) mod p - */ - if (!BN_set_word(a, 3)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_exp(ret->a1, a, ret->a1, p, bn_ctx)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, ERR_R_BN_LIB); - goto end; - } - - /* - * re-use b as 1/2 mod p - * ret->a1 = ret->a1 / 2 mod p = (3^((p + 1)/4)) mod p - */ - if (!BN_set_word(b, 2)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_inverse(b, b, p, bn_ctx)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_mul(ret->a1, ret->a1, b, p, bn_ctx)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ZETA, ERR_R_BN_LIB); - goto end; - } - - e = 0; -end: - if (e && ret) { - BN_GFP2_free(ret); - ret = NULL; - } - BN_CTX_end(bn_ctx); - return ret; -} - -/* - * eta = (p^2 - 1)/n - * which is used in the final modular exponentiation of tate pairing over - * type1 curve - */ -BIGNUM *EC_GROUP_get_type1curve_eta(const EC_GROUP *group, BN_CTX *bn_ctx) -{ - int e = 1; - BIGNUM *ret = NULL; - BIGNUM *a = NULL; - BIGNUM *b = NULL; - BIGNUM *p = NULL; - - if (!group || !bn_ctx) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ETA, ERR_R_PASSED_NULL_PARAMETER); - return NULL; - } - - BN_CTX_start(bn_ctx); - - ret = BN_new(); - a = BN_CTX_get(bn_ctx); - b = BN_CTX_get(bn_ctx); - p = BN_CTX_get(bn_ctx); - - if (!ret || !a || !b || !p) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ETA, ERR_R_MALLOC_FAILURE); - goto end; - } - - /* get curve p, a, b and check it is type1 curve - * p is prime at least 512 bits, a == 0 and b == 1 - */ - if (!EC_GROUP_get_curve_GFp(group, a, b, p, bn_ctx)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ETA, ERR_R_EC_LIB); - goto end; - } - if (!BN_is_zero(a) || !BN_is_one(b)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ETA, EC_R_INVALID_TYPE1_CURVE); - goto end; - } - if (BN_num_bits(p) < 512) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ETA, EC_R_INVALID_TYPE1_CURVE); - goto end; - } - - /* get curve order n, re-use a for order n */ - if (!EC_GROUP_get_order(group, a, bn_ctx)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ETA, ERR_R_EC_LIB); - goto end; - } - - /* - * eta = (p^2 - 1)/n, - */ - if (!BN_sqr(ret, p, bn_ctx)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ETA, ERR_R_BN_LIB); - goto end; - } - if (!BN_sub_word(ret, 1)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ETA, ERR_R_BN_LIB); - goto end; - } - if (!BN_div(ret, NULL, ret, a, bn_ctx)) { - ECerr(EC_F_EC_GROUP_GET_TYPE1CURVE_ETA, ERR_R_BN_LIB); - goto end; - } - - e = 1; -end: - if (e && ret) { - BN_free(ret); - ret = NULL; - } - BN_CTX_end(bn_ctx); - return ret; -} - -/* phi: (x, y) => (zeta * x, y) */ -static int type1curve_phi(const EC_GROUP *group, const EC_POINT *point, - BN_GFP2 *x, BN_GFP2 *y, const BIGNUM *p, BN_CTX *bn_ctx) -{ - int ret = 0; - BN_GFP2 *zeta = NULL; - BIGNUM *xP; - BIGNUM *yP; - - if (!group || !point || !x || !y || !p || !bn_ctx) { - ECerr(EC_F_TYPE1CURVE_PHI, -ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - BN_CTX_start(bn_ctx); - xP = BN_CTX_get(bn_ctx); - yP = BN_CTX_get(bn_ctx); - - if (!xP || !yP) { - ECerr(EC_F_TYPE1CURVE_PHI, ERR_R_MALLOC_FAILURE); - goto end; - } - - if (!(zeta = EC_GROUP_get_type1curve_zeta(group, bn_ctx))) { - ECerr(EC_F_TYPE1CURVE_PHI, -EC_R_GET_TYPE1CURVE_ZETA_FAILURE); - goto end; - } - - if (!EC_POINT_get_affine_coordinates_GFp(group, point, xP, yP, bn_ctx)) -{ - ECerr(EC_F_TYPE1CURVE_PHI, ERR_R_EC_LIB); - goto end; - } - - /* return x = zeta * point->x */ - if (!BN_GFP2_mul_bn(x, zeta, xP, p, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_PHI, ERR_R_BN_LIB); - goto end; - } - - /* return y = point->y */ - if (!BN_GFP2_set_bn(y, yP, p, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_PHI, ERR_R_BN_LIB); - goto end; - } - - ret = 1; - -end: - BN_CTX_end(bn_ctx); - BN_GFP2_free(zeta); - return ret; -} - -/* - * eval the function defined by the line through point T and P, - * with value Q = (xQ, yQ) - */ -static int type1curve_eval_line_textbook(const EC_GROUP *group, BN_GFP2 *r, - const EC_POINT *T, const EC_POINT *P, const BN_GFP2 *xQ, const BN_GFP2 -*yQ, - BN_CTX *bn_ctx) -{ - int ret = 0; - BN_GFP2 *num = NULL; - BN_GFP2 *den = NULL; - BIGNUM *p; - BIGNUM *xT; - BIGNUM *yT; - BIGNUM *xP; - BIGNUM *yP; - BIGNUM *bn; - BIGNUM *slope; - - if (!group || !r || !T || !P || !xQ || !yQ || !bn_ctx) { - ECerr(EC_F_TYPE1CURVE_EVAL_LINE_TEXTBOOK, - ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - BN_CTX_start(bn_ctx); - p = BN_CTX_get(bn_ctx); - xT = BN_CTX_get(bn_ctx); - yT = BN_CTX_get(bn_ctx); - xP = BN_CTX_get(bn_ctx); - yP = BN_CTX_get(bn_ctx); - bn = BN_CTX_get(bn_ctx); - slope = BN_CTX_get(bn_ctx); - - num = BN_GFP2_new(); - den = BN_GFP2_new(); - - if (!p || !xT || !yT || !xP || !yP || !bn || !slope || !num || !den) { - ECerr(EC_F_TYPE1CURVE_EVAL_LINE_TEXTBOOK, - ERR_R_MALLOC_FAILURE); - goto end; - } - - /* get prime field p */ - if (!EC_GROUP_get_curve_GFp(group, p, xT, yT, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_LINE_TEXTBOOK, -ERR_R_EC_LIB); - goto end; - } - - /* get T and P */ - if (!EC_POINT_get_affine_coordinates_GFp(group, T, xT, yT, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_LINE_TEXTBOOK, -ERR_R_EC_LIB); - goto end; - } - if (!EC_POINT_get_affine_coordinates_GFp(group, P, xP, yP, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_LINE_TEXTBOOK, -ERR_R_EC_LIB); - goto end; - } - -#if 0 - /* if T == P, slope = (3 * x_T^2 + a)/(2 * y_T) */ - if (T == P || (BN_cmp(xT, xP) == 0 && BN_cmp(yT, yP) == 0)) { - - if (!BN_mod_sqr(bn, xT, p, bn_ctx)) { - goto end; - } - if (!BN_mod_add(slope, bn, bn, p, bn_ctx)) { - goto end; - } - if (!BN_mod_add(slope, slope, bn, p, bn_ctx)) { - goto end; - } - if (!BN_mod_add(den, yT, yT, p, bn_ctx)) { - goto end; - } - if (!BN_mod_inverse(den, den, p, bn_ctx)) { - goto end; - } - if (!BN_mod_mul(slope, slope, den, p, bn_ctx)) { - goto end; - } - } - - /* - * if xT == xP and yT + yP == 0, return xQ - xT - */ - - if (BN_cmp(xT, xP) == 0) { - BIGNUM *t; - if (!(t = BN_CTX_get(bn_ctx))) { - goto end; - } - if (!BN_mod_add(t, yT, yP, p, ctx)) { - goto end; - } - if (BN_is_zero(t)) { - if (!BN_GFP2_sub_bn(r, xQ, xT, p, bn_ctx)) { - goto end; - } - } - } - - /* - * if T == P, slope = (3 * x_T^2 + a)/(2 * y_T) - * else slope = (y_T - y_P)/(x_T - x_P) - */ - if (!BN_mod_sub(num, yT, yP, p, bn_ctx)) { - goto end; - } - if (!BN_mod_sub(den, xT, xP, p, bn_ctx)) { - goto end; - } - if (!BN_mod_inverse(den, den, p, bn_ctx)) { - goto end; - } - if (!BN_mod_mul(slope, num, den, p, bn_ctx)) { - goto end; - } -#endif - - /* - * num = (yQ - ((xQ - xT) * slope)) - yT - * den = xQ + (xT + (xP - slope^2)) - * return num/den - */ - - if (!BN_GFP2_sub_bn(num, xQ, xT, p, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_LINE_TEXTBOOK, -ERR_R_BN_LIB); - goto end; - } - if (!BN_GFP2_mul_bn(num, num, slope, p, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_LINE_TEXTBOOK, -ERR_R_BN_LIB); - goto end; - } - if (!BN_GFP2_sub(num, yQ, num, p, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_LINE_TEXTBOOK, -ERR_R_BN_LIB); - goto end; - } - if (!BN_GFP2_sub_bn(num, num, yT, p, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_LINE_TEXTBOOK, -ERR_R_BN_LIB); - goto end; - } - - if (!BN_mod_sqr(bn, slope, p, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_LINE_TEXTBOOK, -ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_sub(bn, xP, bn, p, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_LINE_TEXTBOOK, -ERR_R_BN_LIB); - goto end; - } - if (!BN_mod_add(bn, xT, bn, p, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_LINE_TEXTBOOK, -ERR_R_BN_LIB); - goto end; - } - if (!BN_GFP2_add_bn(den, xQ, bn, p, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_LINE_TEXTBOOK, -ERR_R_BN_LIB); - goto end; - } - -#if 0 - //warning - if (!BN_GFP2_div(ret, num, den, p, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_LINE_TEXTBOOK, -ERR_R_BN_LIB); - goto end; - } -#endif - - ret = 1; - -end: - BN_CTX_end(bn_ctx); - BN_GFP2_free(num); - BN_GFP2_free(den); - return ret; -} - -static int type1curve_eval_miller_textbook(const EC_GROUP *group, BN_GFP2 *r, - const EC_POINT *P, const BN_GFP2 *xQ, const BN_GFP2 *yQ, - const BIGNUM *p, BN_CTX *bn_ctx) -{ - int ret = 0; - BN_GFP2 *f = NULL; - BN_GFP2 *g = NULL; - EC_POINT *T = NULL; - BIGNUM *n; - int nbits; - int i; - - if (!group || !r || !P || !xQ || !yQ || !p || !bn_ctx) { - ECerr(EC_F_TYPE1CURVE_EVAL_MILLER_TEXTBOOK, - ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - BN_CTX_start(bn_ctx); - n = BN_CTX_get(bn_ctx); - - f = BN_GFP2_new(); - g = BN_GFP2_new(); - T = EC_POINT_new(group); - - if (!n || !f || !g || !T) { - ECerr(EC_F_TYPE1CURVE_EVAL_MILLER_TEXTBOOK, - ERR_R_MALLOC_FAILURE); - goto end; - } - - if (!EC_GROUP_get_order(group, n, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_MILLER_TEXTBOOK, - ERR_R_EC_LIB); - goto end; - } - - nbits = BN_num_bits(n); - - /* miller loop */ - for (i = nbits - 2; i >= 0; i--) { - - /* f = f^2 */ - if (!BN_GFP2_sqr(f, f, p, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_MILLER_TEXTBOOK, - ERR_R_BN_LIB); - goto end; - } - - /* compute g_{T,T}(Q) */ - if (!type1curve_eval_line_textbook(group, g, T, T, xQ, yQ, - bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_MILLER_TEXTBOOK, - ERR_R_EC_LIB); - goto end; - } - - /* f = f * g */ - if (!BN_GFP2_mul(f, f, g, p, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_MILLER_TEXTBOOK, - ERR_R_BN_LIB); - goto end; - } - - /* T = 2T */ - if (!EC_POINT_dbl(group, T, T, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_MILLER_TEXTBOOK, - ERR_R_EC_LIB); - goto end; - } - - if (BN_is_bit_set(n, i)) { - - /* g = g_{T,P}(Q) */ - if (!type1curve_eval_line_textbook(group, g, T, P, xQ, - yQ, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_MILLER_TEXTBOOK, - ERR_R_EC_LIB); - goto end; - } - - /* f = f * g */ - if (!BN_GFP2_mul(f, f, g, p, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_MILLER_TEXTBOOK, - ERR_R_BN_LIB); - goto end; - } - - /* T = T + P */ - if (!EC_POINT_add(group, T, T, P, bn_ctx)) { - ECerr(EC_F_TYPE1CURVE_EVAL_MILLER_TEXTBOOK, - ERR_R_EC_LIB); - goto end; - } - } - } - - /* set return value */ - if (!BN_GFP2_copy(r, f)) { - ECerr(EC_F_TYPE1CURVE_EVAL_MILLER_TEXTBOOK, ERR_R_BN_LIB); - goto end; - } - ret = 1; - -end: - BN_CTX_end(bn_ctx); - BN_GFP2_free(f); - BN_GFP2_free(g); - EC_POINT_free(T); - return ret; -} - -int EC_type1curve_tate(const EC_GROUP *group, BN_GFP2 *r, - const EC_POINT *P, const EC_POINT *Q, BN_CTX *bn_ctx) -{ - int ret = 0; - BN_GFP2 *xQ = NULL; - BN_GFP2 *yQ = NULL; - BIGNUM *eta = NULL; - BIGNUM *p; - BIGNUM *a; - BIGNUM *b; - - if (!group || !ret || !P || !Q || !bn_ctx) { - ECerr(EC_F_EC_TYPE1CURVE_TATE, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - BN_CTX_start(bn_ctx); - - xQ = BN_GFP2_new(); - yQ = BN_GFP2_new(); - p = BN_CTX_get(bn_ctx); - a = BN_CTX_get(bn_ctx); - b = BN_CTX_get(bn_ctx); - - if (!xQ || !yQ || !p || !a || !b) { - ECerr(EC_F_EC_TYPE1CURVE_TATE, ERR_R_MALLOC_FAILURE); - goto end; - } - - if (!EC_GROUP_get_curve_GFp(group, p, a, b, bn_ctx)) { - ECerr(EC_F_EC_TYPE1CURVE_TATE, EC_R_INVALID_TYPE1CURVE); - goto end; - } - - /* (xQ, yQ) = phi(Q) */ - if (!type1curve_phi(group, Q, xQ, yQ, p, bn_ctx)) { - ECerr(EC_F_EC_TYPE1CURVE_TATE, ERR_R_EC_LIB); - goto end; - } - - /* compute e(P, phi(Q)) */ - if (!type1curve_eval_miller_textbook(group, r, P, xQ, yQ, p, bn_ctx)) { - ECerr(EC_F_EC_TYPE1CURVE_TATE, ERR_R_EC_LIB); - goto end; - } - - /* compute e(P, phi(Q))^eta, eta = (p^2 - 1)/q */ - if (!(eta = EC_GROUP_get_type1curve_eta(group, bn_ctx))) { - ECerr(EC_F_EC_TYPE1CURVE_TATE, EC_R_INVALID_TYPE1CURVE); - goto end; - } - - ret = 1; - -end: - BN_GFP2_free(xQ); - BN_GFP2_free(yQ); - BN_CTX_end(bn_ctx); - BN_free(eta); - return ret; -} - -int EC_type1curve_tate_ratio(const EC_GROUP *group, BN_GFP2 *r, - const EC_POINT *P1, const EC_POINT *Q1, - const EC_POINT *P2, const EC_POINT *Q2, - BN_CTX *bn_ctx) -{ - return 0; -} - -#if 0 -typedef struct { - int security_bits; - int n_bits; - int p_bits; - int q_bits; -} TYPE1CURVE_SEC; - -static TYPE1CURVE_SEC sec_tbl[] = { - /* k |n| |p| |q| */ - { 80, 1024, 512, 160}, - {112, 2048, 1024, 224}, - {128, 3072, 1536, 256}, - {192, 7680, 3840, 384}, - {256, 15360, 7680, 512} -}; -#endif - -const EVP_MD *TYPE1CURVE_nbits_to_md(int nbits) -{ - switch (nbits) { - case 1024: return EVP_sha1(); - case 2048: return EVP_sha224(); - case 3072: return EVP_sha256(); - case 7680: return EVP_sha384(); - case 15360: return EVP_sha512(); - } - return NULL; -} - diff --git a/crypto/ec2/fppoint.c b/crypto/ec2/fppoint.c deleted file mode 100644 index 86ef5898..00000000 --- a/crypto/ec2/fppoint.c +++ /dev/null @@ -1,114 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ -/* - * this file is to implement elliptic curve operations over extension - * fields - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -ASN1_SEQUENCE(FpPoint) = { - ASN1_SIMPLE(FpPoint, x, BIGNUM), - ASN1_SIMPLE(FpPoint, y, BIGNUM) -} ASN1_SEQUENCE_END(FpPoint) -IMPLEMENT_ASN1_FUNCTIONS(FpPoint) -IMPLEMENT_ASN1_DUP_FUNCTION(FpPoint) - -int EC_POINT_cmp_fppoint(const EC_GROUP *group, const EC_POINT *a, const FpPoint *b, - BN_CTX *bn_ctx) -{ - int ret = -1; - BIGNUM *x = NULL; - BIGNUM *y = NULL; - - if (!group || !a || !b || !bn_ctx) { - ECerr(EC_F_EC_POINT_CMP_FPPOINT, ERR_R_PASSED_NULL_PARAMETER); - return -1; - } - - BN_CTX_start(bn_ctx); - x = BN_CTX_get(bn_ctx); - y = BN_CTX_get(bn_ctx); - - if (!x || !y) { - ECerr(EC_F_EC_POINT_CMP_FPPOINT, ERR_R_BN_LIB); - goto end; - } - - if (EC_METHOD_get_field_type(EC_GROUP_method_of(group)) == NID_X9_62_prime_field) { - if (!EC_POINT_get_affine_coordinates_GFp(group, a, x, y, bn_ctx)) { - ECerr(EC_F_EC_POINT_CMP_FPPOINT, ERR_R_EC_LIB); - goto end; - } - } else { - if (!EC_POINT_get_affine_coordinates_GF2m(group, a, x, y, bn_ctx)) { - ECerr(EC_F_EC_POINT_CMP_FPPOINT, ERR_R_EC_LIB); - goto end; - } - } - - if (BN_cmp(x, b->x) == 0 && BN_cmp(y, b->y) == 0) { - ret = 0; - } else { - ret = 1; - } - -end: - BN_CTX_end(bn_ctx); - return ret; -} - diff --git a/crypto/ec2/pairing_lcl.h b/crypto/ec2/pairing_lcl.h deleted file mode 100644 index 66d62ecf..00000000 --- a/crypto/ec2/pairing_lcl.h +++ /dev/null @@ -1,24 +0,0 @@ - - - -typedef struct pairing_parameters_st { - long version; - ASN1_OBJECT *cid; - ASN1_INTEGER *p; - ASN1_INTEGER *a; - ASN1_INTEGER *b; - ASN1_OBJECT *beta; - ASN1_INTEGER *cofactor; - ASN1_INTEGER *order; - ASN1_INTEGER *embedded_degree; - ASN1_OCTET_STRING *G1; - ASN1_OCTET_STRING *G2; - ASN1_TYPE *eid; - ASN1_INTEGER *d1; - ASN1_INTEGER *d2; - ANS1_OBJECT *phi; -} - - - - diff --git a/crypto/err/err.c b/crypto/err/err.c index d5c6984b..92767247 100644 --- a/crypto/err/err.c +++ b/crypto/err/err.c @@ -60,12 +60,9 @@ 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_KDF2, 0, 0), "KDF2 routines"}, - {ERR_PACK(ERR_LIB_FFX, 0, 0), "FFX routines"}, {ERR_PACK(ERR_LIB_PAILLIER, 0, 0), "PAILLIER routines"}, {ERR_PACK(ERR_LIB_OTP, 0, 0), "OTP routines"}, {ERR_PACK(ERR_LIB_GMAPI, 0, 0), "GMAPI routines"}, - {ERR_PACK(ERR_LIB_BFIBE, 0, 0), "BFIBE routines"}, - {ERR_PACK(ERR_LIB_BB1IBE, 0, 0), "BB1IBE routines"}, {ERR_PACK(ERR_LIB_SM2, 0, 0), "SM2 routines"}, {ERR_PACK(ERR_LIB_SM9, 0, 0), "SM9 routines"}, {ERR_PACK(ERR_LIB_SDF, 0, 0), "SDF routines"}, @@ -116,12 +113,9 @@ static ERR_STRING_DATA ERR_str_reasons[] = { {ERR_R_ENGINE_LIB, "ENGINE lib"}, {ERR_R_ECDSA_LIB, "ECDSA lib"}, {ERR_R_KDF2_LIB, "KDF2 lib"}, - {ERR_R_FFX_LIB, "FFX lib"}, {ERR_R_PAILLIER_LIB, "PAILLIER lib"}, {ERR_R_OTP_LIB, "OTP lib"}, {ERR_R_GMAPI_LIB, "GMAPI lib"}, - {ERR_R_BFIBE_LIB, "BFIBE lib"}, - {ERR_R_BB1IBE_LIB, "BB1IBE lib"}, {ERR_R_SM2_LIB, "SM2 lib"}, {ERR_R_SM9_LIB, "SM9 lib"}, {ERR_R_SDF_LIB, "SDF lib"}, diff --git a/crypto/err/err_all.c b/crypto/err/err_all.c index ca122740..201264d7 100644 --- a/crypto/err/err_all.c +++ b/crypto/err/err_all.c @@ -66,9 +66,6 @@ #endif #include #include -#ifndef OPENSSL_NO_FFX -# include -#endif #ifndef OPENSSL_NO_PAILLIER # include #endif @@ -78,12 +75,6 @@ #ifndef OPENSSL_NO_GMAPI # include #endif -#ifndef OPENSSL_NO_BFIBE -# include -#endif -#ifndef OPENSSL_NO_BB1IBE -# include -#endif #ifndef OPENSSL_NO_SM2 # include #endif @@ -167,9 +158,6 @@ int err_load_crypto_strings_int(void) # ifndef OPENSSL_NO_KDF2 ERR_load_KDF2_strings() == 0 || # endif -# ifndef OPENSSL_NO_FFX - ERR_load_FFX_strings() == 0 || -# endif # ifndef OPENSSL_NO_PAILLIER ERR_load_PAILLIER_strings() == 0 || # endif @@ -179,12 +167,6 @@ int err_load_crypto_strings_int(void) # ifndef OPENSSL_NO_GMAPI ERR_load_GMAPI_strings() == 0 || # endif -# ifndef OPENSSL_NO_BFIBE - ERR_load_BFIBE_strings() == 0 || -# endif -# ifndef OPENSSL_NO_BB1IBE - ERR_load_BB1IBE_strings() == 0 || -# endif # ifndef OPENSSL_NO_SM2 ERR_load_SM2_strings() == 0 || # endif diff --git a/crypto/err/openssl.ec b/crypto/err/openssl.ec index 68d1ef1a..87785033 100644 --- a/crypto/err/openssl.ec +++ b/crypto/err/openssl.ec @@ -36,12 +36,9 @@ 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 KDF2 include/openssl/kdf2.h crypto/kdf2/kdf2_err.c -L FFX include/openssl/ffx.h crypto/ffx/ffx_err.c L PAILLIER include/openssl/paillier.h crypto/paillier/pai_err.c L OTP include/openssl/otp.h crypto/otp/otp_err.c L GMAPI include/openssl/gmapi.h crypto/gmapi/gmapi_err.c -L BFIBE include/openssl/bfibe.h crypto/bfibe/bfibe_err.c -L BB1IBE include/openssl/bb1ibe.h crypto/bb1ibe/bb1ibe_err.c L SM2 include/openssl/sm2.h crypto/sm2/sm2_err.c L SM9 include/openssl/sm9.h crypto/sm9/sm9_err.c L SDF include/openssl/gmsdf.h crypto/sdf/sdf_err.c diff --git a/crypto/ffx/build.info b/crypto/ffx/build.info deleted file mode 100644 index 0f9604f0..00000000 --- a/crypto/ffx/build.info +++ /dev/null @@ -1,2 +0,0 @@ -LIBS=../../libcrypto -SOURCE[../../libcrypto]=ffx.c ffx_err.c diff --git a/crypto/ffx/ffx.c b/crypto/ffx/ffx.c deleted file mode 100644 index 88fade8a..00000000 --- a/crypto/ffx/ffx.c +++ /dev/null @@ -1,351 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2017 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include -#include -#include -#include -#include -#include "../modes/modes_lcl.h" - - -static uint32_t modulo[] = { - 1, - 10, - 100, - 1000, - 10000, - 100000, - 1000000, - 10000000, - 100000000, - 1000000000, - 1000000000, -}; - -struct FFX_CTX_st { - EVP_CIPHER_CTX *cctx; - int flag; -}; - -FFX_CTX *FFX_CTX_new(void) -{ - FFX_CTX *ret = NULL; - ret = OPENSSL_zalloc(sizeof(*ret)); - return ret; -} - -void FFX_CTX_free(FFX_CTX *ctx) -{ - if (ctx) { - EVP_CIPHER_CTX_free(ctx->cctx); - } - OPENSSL_free(ctx); -} - -int FFX_init(FFX_CTX *ctx, const EVP_CIPHER *cipher, const unsigned char *key, - int flag) -{ - int ret = 0; - EVP_CIPHER_CTX *cctx = NULL; - - if (!ctx || !cipher || !key) { - FFXerr(FFX_F_FFX_INIT, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - if (EVP_CIPHER_mode(cipher) != EVP_CIPH_ECB_MODE) { - FFXerr(FFX_F_FFX_INIT, FFX_R_INVALID_CIPHER_MODE); - return 0; - } - if (EVP_CIPHER_block_size(cipher) != 16) { - FFXerr(FFX_F_FFX_INIT, FFX_R_INVALID_BLOCK_SIZE); - return 0; - } - - if (!ctx->cctx) { - if (!(cctx = EVP_CIPHER_CTX_new())) { - FFXerr(FFX_F_FFX_INIT, ERR_R_MALLOC_FAILURE); - goto end; - } - ctx->cctx = cctx; - cctx = NULL; - } - ctx->flag = flag; - - if (!EVP_EncryptInit_ex(ctx->cctx, cipher, NULL, key, NULL)) { - FFXerr(FFX_F_FFX_INIT, FFX_R_ENCRYPT_INIT_FAILURE); - goto end; - } - - ret = 1; -end: - EVP_CIPHER_CTX_free(cctx); - return ret; -} - -int FFX_encrypt(FFX_CTX *ctx, const char *in, char *out, size_t iolen, - unsigned char *tweak, size_t tweaklen) -{ - int llen, rlen; - uint32_t lval, rval; - unsigned char pblock[16] = { - 0x01, 0x02, 0x01, 0x0a, 0x00, 0x00, 0x0a, 0xff, - 0xff, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00}; - unsigned char qblock[16]; - char lbuf[FFX_MAX_DIGITS/2 + 2]; - uint64_t yval; - size_t i; - - if (!ctx || !in || !out || !tweak) { - FFXerr(FFX_F_FFX_ENCRYPT, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (iolen < FFX_MIN_DIGITS || iolen > FFX_MAX_DIGITS) { - FFXerr(FFX_F_FFX_ENCRYPT, FFX_R_INVALID_INPUT_LENGTH); - return 0; - } - - for (i = 0; i < iolen; i++) { - if (!isdigit(in[i])) { - FFXerr(FFX_F_FFX_ENCRYPT, FFX_R_INVALID_INPUT_DIGIT); - return 0; - } - } - llen = iolen / 2; - rlen = iolen - llen; - - if (tweaklen < FFX_MIN_TWEAKLEN || tweaklen > FFX_MAX_TWEAKLEN) { - FFXerr(FFX_F_FFX_ENCRYPT, FFX_R_INVALID_TWEAK_LENGTH); - return 0; - } - - memcpy(lbuf, in, llen); - lbuf[llen] = 0; - lval = atoi(lbuf); - rval = atoi(in + llen); - - pblock[7] = llen & 0xff; - pblock[8] = iolen & 0xff; - pblock[12] = tweaklen & 0xff; - - if (!EVP_Cipher(ctx->cctx, pblock, pblock, - EVP_CIPHER_CTX_block_size(ctx->cctx))) { - FFXerr(FFX_F_FFX_ENCRYPT, ERR_R_EVP_LIB); - return 0; - } - - memset(qblock, 0, sizeof(qblock)); - memcpy(qblock, tweak, tweaklen); - - for (i = 0; i < FFX_NUM_ROUNDS; i += 2) { - - unsigned char rblock[16]; - size_t j; - - qblock[11] = i & 0xff; - memcpy(qblock + 12, &rval, sizeof(rval)); - for (j = 0; j < sizeof(rblock); j++) { - rblock[j] = pblock[j] ^ qblock[j]; - } - if (!EVP_Cipher(ctx->cctx, rblock, rblock, - EVP_CIPHER_CTX_block_size(ctx->cctx))) { - FFXerr(FFX_F_FFX_ENCRYPT, ERR_R_EVP_LIB); - return 0; - } - - yval = *((uint64_t *)rblock) % modulo[llen]; - lval = (lval + yval) % modulo[llen]; - - qblock[11] = (i + 1) & 0xff; - memcpy(qblock + 12, &lval, sizeof(lval)); - for (j = 0; j < sizeof(rblock); j++) { - rblock[j] = pblock[j] ^ qblock[j]; - } - if (!EVP_Cipher(ctx->cctx, rblock, rblock, - EVP_CIPHER_CTX_block_size(ctx->cctx))) { - FFXerr(FFX_F_FFX_ENCRYPT, ERR_R_EVP_LIB); - return 0; - } - yval = *((uint64_t *)rblock) % modulo[rlen]; - rval = (rval + yval) % modulo[rlen]; - } - - memset(out, '0', iolen); - sprintf(lbuf, "%d", rval); - memcpy(out + rlen - strlen(lbuf), lbuf, strlen(lbuf)); - sprintf(lbuf, "%d", lval); - strcpy(out + iolen - strlen(lbuf), lbuf); - - return 1; -} - -int FFX_decrypt(FFX_CTX *ctx, const char *in, char *out, size_t iolen, - unsigned char *tweak, size_t tweaklen) -{ - int llen, rlen; - uint32_t lval, rval; - unsigned char pblock[16] = { - 0x01, 0x02, 0x01, 0x0a, 0x00, 0x00, 0x0a, 0xff, - 0xff, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00}; - unsigned char qblock[16]; - char lbuf[FFX_MAX_DIGITS/2 + 2]; - uint64_t yval; - size_t i; - - if (!ctx || !in || !out || !tweak) { - FFXerr(FFX_F_FFX_DECRYPT, ERR_R_PASSED_NULL_PARAMETER); - return 0; - } - - if (iolen < FFX_MIN_DIGITS || iolen > FFX_MAX_DIGITS) { - FFXerr(FFX_F_FFX_DECRYPT, FFX_R_INVALID_INPUT_LENGTH); - return 0; - } - - for (i = 0; i < iolen; i++) { - if (!isdigit(in[i])) { - FFXerr(FFX_F_FFX_DECRYPT, FFX_R_INVALID_INPUT_DIGIT); - return 0; - } - } - rlen = iolen / 2; - llen = iolen - rlen; - - - if (tweaklen < FFX_MIN_TWEAKLEN || tweaklen > FFX_MAX_TWEAKLEN) { - FFXerr(FFX_F_FFX_DECRYPT, FFX_R_INVALID_TWEAK_LENGTH); - return 0; - } - - memcpy(lbuf, in, llen); - lbuf[llen] = 0; - lval = atoi(lbuf); - rval = atoi(in + llen); - - pblock[7] = rlen & 0xff; - pblock[8] = iolen & 0xff; - pblock[12] = tweaklen & 0xff; - - if (!EVP_Cipher(ctx->cctx, pblock, pblock, - EVP_CIPHER_CTX_block_size(ctx->cctx))) { - FFXerr(FFX_F_FFX_DECRYPT, ERR_R_EVP_LIB); - return 0; - } - - memset(qblock, 0, sizeof(qblock)); - memcpy(qblock, tweak, tweaklen); - - for (i = FFX_NUM_ROUNDS - 1; i > 0; i -= 2) { - - unsigned char rblock[16]; - size_t j; - - qblock[11] = i & 0xff; - memcpy(qblock + 12, &rval, sizeof(rval)); - for (j = 0; j < sizeof(rblock); j++) { - rblock[j] = pblock[j] ^ qblock[j]; - } - if (!EVP_Cipher(ctx->cctx, rblock, rblock, - EVP_CIPHER_CTX_block_size(ctx->cctx))) { - FFXerr(FFX_F_FFX_DECRYPT, ERR_R_EVP_LIB); - return 0; - } - - yval = *((uint64_t *)rblock) % modulo[llen]; - lval = (lval >= yval) ? (lval - yval) : lval + modulo[llen] - yval; - - qblock[11] = (i - 1) & 0xff; - memcpy(qblock + 12, &lval, sizeof(lval)); - for (j = 0; j < sizeof(rblock); j++) { - rblock[j] = pblock[j] ^ qblock[j]; - } - if (!EVP_Cipher(ctx->cctx, rblock, rblock, - EVP_CIPHER_CTX_block_size(ctx->cctx))) { - FFXerr(FFX_F_FFX_DECRYPT, ERR_R_EVP_LIB); - return 0; - } - - yval = *((uint64_t *)rblock) % modulo[rlen]; - rval = (rval >= yval) ? (rval - yval) : rval + modulo[rlen] - yval; - } - - memset(out, '0', iolen); - sprintf(lbuf, "%d", rval); - memcpy(out + rlen - strlen(lbuf), lbuf, strlen(lbuf)); - sprintf(lbuf, "%d", lval); - strcpy(out + iolen - strlen(lbuf), lbuf); - - return 1; -} - -static int luhn_table[10] = {0, 2, 4, 6, 8, 1, 3, 5, 7, 9}; - -int FFX_compute_luhn(const char *in, size_t inlen) -{ - int r = 0; - int i; - - for (i = inlen - 1; i >= 0; i--) { - int a; - if (!isdigit(in[i])) { - return -2; - } - a = in[i] - '0'; - if (i % 2 != inlen % 2) - a = luhn_table[a]; - r += a; - } - - r = ((r * 9) % 10) + '0'; - return r; -} - diff --git a/crypto/ffx/ffx_err.c b/crypto/ffx/ffx_err.c deleted file mode 100644 index 327bf27d..00000000 --- a/crypto/ffx/ffx_err.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. - * - * 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 - -/* BEGIN ERROR CODES */ -#ifndef OPENSSL_NO_ERR - -# define ERR_FUNC(func) ERR_PACK(ERR_LIB_FFX,func,0) -# define ERR_REASON(reason) ERR_PACK(ERR_LIB_FFX,0,reason) - -static ERR_STRING_DATA FFX_str_functs[] = { - {ERR_FUNC(FFX_F_FFX_DECRYPT), "FFX_decrypt"}, - {ERR_FUNC(FFX_F_FFX_ENCRYPT), "FFX_encrypt"}, - {ERR_FUNC(FFX_F_FFX_INIT), "FFX_init"}, - {0, NULL} -}; - -static ERR_STRING_DATA FFX_str_reasons[] = { - {ERR_REASON(FFX_R_ENCRYPT_INIT_FAILURE), "encrypt init failure"}, - {ERR_REASON(FFX_R_INVALID_BLOCK_SIZE), "invalid block size"}, - {ERR_REASON(FFX_R_INVALID_CIPHER_MODE), "invalid cipher mode"}, - {ERR_REASON(FFX_R_INVALID_INPUT_DIGIT), "invalid input digit"}, - {ERR_REASON(FFX_R_INVALID_INPUT_LENGTH), "invalid input length"}, - {ERR_REASON(FFX_R_INVALID_TWEAK_LENGTH), "invalid tweak length"}, - {0, NULL} -}; - -#endif - -int ERR_load_FFX_strings(void) -{ -#ifndef OPENSSL_NO_ERR - - if (ERR_func_error_string(FFX_str_functs[0].error) == NULL) { - ERR_load_strings(0, FFX_str_functs); - ERR_load_strings(0, FFX_str_reasons); - } -#endif - return 1; -} diff --git a/crypto/include/internal/evp_int.h b/crypto/include/internal/evp_int.h index bea41d17..94c4697a 100644 --- a/crypto/include/internal/evp_int.h +++ b/crypto/include/internal/evp_int.h @@ -383,9 +383,6 @@ struct evp_pkey_st { # ifndef OPENSSL_NO_SM9 /* SM9 */ struct SM9_MASTER_KEY_st *sm9_master; struct SM9_KEY_st *sm9; -# endif -# ifndef OPENSSL_NO_CPK /* CPK */ - struct CPK_MASTER_SECERT *cpk; # endif } pkey; int save_parameters; diff --git a/crypto/serpent/build.info b/crypto/serpent/build.info deleted file mode 100755 index eee86dc9..00000000 --- a/crypto/serpent/build.info +++ /dev/null @@ -1,2 +0,0 @@ -LIBS=../../libcrypto -SOURCE[../../libcrypto]=serpent.c diff --git a/crypto/serpent/serpent.c b/crypto/serpent/serpent.c deleted file mode 100755 index cc63dad5..00000000 --- a/crypto/serpent/serpent.c +++ /dev/null @@ -1,308 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2017 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ -/** -Copyright © 2015 Odzhan -Copyright © 2008 Daniel Otte -All Rights Reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: -1. Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright -notice, this list of conditions and the following disclaimer in the -documentation and/or other materials provided with the distribution. -3. The name of the author may not be used to endorse or promote products -derived from this software without specific prior written permission. -THIS SOFTWARE IS PROVIDED BY AUTHORS "AS IS" AND ANY EXPRESS OR -IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, -INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. */ - -#include -#include -#include -#include -#include "serpent_locl.h" - -static void serpent_whiten(serpent_blk *dst, serpent_key_t *src, int idx) { - uint8_t i; - serpent_blk *p = (serpent_blk*)&src->x[idx]; - - for (i = 0; iw[i] ^= p->w[i]; - } -} - -static void permute(serpent_blk *out, serpent_blk *in, int type) -{ - uint8_t cy; - uint8_t n, m; - - for (n = 0; nw[n] = 0; - } - - if (type == SERPENT_IP) - { - for (n = 0; n<16; n++) { - for (m = 0; m<8; m++) { - cy = in->w[m % 4] & 1; - in->w[m % 4] >>= 1; - out->b[n] = (cy << 7) | (out->b[n] >> 1); - } - } - } - else { - for (n = 0; n<4; n++) { - for (m = 0; m<32; m++) { - cy = in->w[n] & 1; - in->w[n] >>= 1; - out->w[m % 4] = (cy << 31) | (out->w[m % 4] >> 1); - } - } - } -} - -#define HI_NIBBLE(b) (((b) >> 4) & 0x0F) -#define LO_NIBBLE(b) ((b) & 0x0F) - -static uint32_t serpent_gen_w(uint32_t *b, uint32_t i) { - uint32_t ret; - ret = b[0] ^ b[3] ^ b[5] ^ b[7] ^ GOLDEN_RATIO ^ i; - return ROTL32(ret, 11); -} - -static void serpent_subbytes(serpent_blk *blk, uint32_t box_idx, int type) -{ - serpent_blk tmp_blk, sb; - uint8_t *sbp; - uint8_t i, t; - - uint8_t sbox[8][8] = - { { 0x83, 0x1F, 0x6A, 0xB5, 0xDE, 0x24, 0x07, 0xC9 }, - { 0xCF, 0x72, 0x09, 0xA5, 0xB1, 0x8E, 0xD6, 0x43 }, - { 0x68, 0x97, 0xC3, 0xFA, 0x1D, 0x4E, 0xB0, 0x25 }, - { 0xF0, 0x8B, 0x9C, 0x36, 0x1D, 0x42, 0x7A, 0xE5 }, - { 0xF1, 0x38, 0x0C, 0x6B, 0x52, 0xA4, 0xE9, 0xD7 }, - { 0x5F, 0xB2, 0xA4, 0xC9, 0x30, 0x8E, 0x6D, 0x17 }, - { 0x27, 0x5C, 0x48, 0xB6, 0x9E, 0xF1, 0x3D, 0x0A }, - { 0xD1, 0x0F, 0x8E, 0xB2, 0x47, 0xAC, 0x39, 0x65 } - }; - - uint8_t sbox_inv[8][8] = - { { 0x3D, 0x0B, 0x6A, 0xC5, 0xE1, 0x74, 0x9F, 0x28 }, - { 0x85, 0xE2, 0x6F, 0x3C, 0x4B, 0x97, 0xD1, 0x0A }, - { 0x9C, 0x4F, 0xEB, 0x21, 0x30, 0xD6, 0x85, 0x7A }, - { 0x90, 0x7A, 0xEB, 0xD6, 0x53, 0x2C, 0x84, 0x1F }, - { 0x05, 0x38, 0x9A, 0xE7, 0xC2, 0x6B, 0xF4, 0x1D }, - { 0xF8, 0x92, 0x14, 0xED, 0x6B, 0x35, 0xC7, 0x0A }, - { 0xAF, 0xD1, 0x35, 0x06, 0x94, 0x7E, 0xC2, 0xB8 }, - { 0x03, 0xD6, 0xE9, 0x8F, 0xC5, 0x7B, 0x1A, 0x24 } - }; - - box_idx &= 7; - - if (type == SERPENT_ENCRYPT) { - sbp = (uint8_t*)&sbox[box_idx][0]; - } - else { - sbp = (uint8_t*)&sbox_inv[box_idx][0]; - } - - for (i = 0; i<16; i += 2) { - t = sbp[i / 2]; - sb.b[i + 0] = LO_NIBBLE(t); - sb.b[i + 1] = HI_NIBBLE(t); - } - - permute(&tmp_blk, blk, SERPENT_IP); - - for (i = 0; iw[0]; - x1 = x->w[1]; - x2 = x->w[2]; - x3 = x->w[3]; - - if (enc == SERPENT_DECRYPT) { - x2 = ROTL32(x2, 10); - x0 = ROTR32(x0, 5); - x2 ^= x3 ^ (x1 << 7); - x0 ^= x1 ^ x3; - x3 = ROTR32(x3, 7); - x1 = ROTR32(x1, 1); - x3 ^= x2 ^ (x0 << 3); - x1 ^= x0 ^ x2; - x2 = ROTR32(x2, 3); - x0 = ROTR32(x0, 13); - } - else { - x0 = ROTL32(x0, 13); - x2 = ROTL32(x2, 3); - x1 ^= x0 ^ x2; - x3 ^= x2 ^ (x0 << 3); - x1 = ROTL32(x1, 1); - x3 = ROTL32(x3, 7); - x0 ^= x1 ^ x3; - x2 ^= x3 ^ (x1 << 7); - x0 = ROTL32(x0, 5); - x2 = ROTR32(x2, 10); - } - x->w[0] = x0; - x->w[1] = x1; - x->w[2] = x2; - x->w[3] = x3; -} - -void serpent_set_encrypt_key(serpent_key_t *key, const unsigned char *user_key) -{ - union { - uint8_t b[32]; - uint32_t w[8]; - } s_ws; - - uint32_t i, j; - - /* copy key input to local buffer */ - memcpy(&s_ws.b[0], user_key, SERPENT_KEY256); - - /* expand the key */ - for (i = 0; i <= SERPENT_ROUNDS; i++) { - for (j = 0; j<4; j++) { - key->x[i][j] = serpent_gen_w(s_ws.w, i * 4 + j); - memmove(&s_ws.b, &s_ws.b[4], 7 * 4); - s_ws.w[7] = key->x[i][j]; - } - serpent_subbytes((serpent_blk*)&key->x[i], 3 - i, SERPENT_ENCRYPT); - } -} - -void serpent_set_decrypt_key(serpent_key_t *key, const unsigned char *user_key) -{ - union { - uint8_t b[32]; - uint32_t w[8]; - } s_ws; - - uint32_t i, j; - - /* copy key input to local buffer */ - memcpy(&s_ws.b[0], user_key, SERPENT_KEY256); - - /* expand the key */ - for (i = 0; i <= SERPENT_ROUNDS; i++) { - for (j = 0; j<4; j++) { - key->x[i][j] = serpent_gen_w(s_ws.w, i * 4 + j); - memmove(&s_ws.b, &s_ws.b[4], 7 * 4); - s_ws.w[7] = key->x[i][j]; - } - serpent_subbytes((serpent_blk*)&key->x[i], 3 - i, SERPENT_ENCRYPT); - } -} - -void serpent_encrypt(const void *in, void *out, serpent_key_t *key) -{ - int8_t i; - serpent_blk *_out = out; - memcpy(out, in, SERPENT_BLOCK_SIZE); - - i = 0; - for (;;) { - /* xor with subkey */ - serpent_whiten(_out, key, i); - /* apply sbox */ - serpent_subbytes(_out, i, SERPENT_ENCRYPT); - if (++i == SERPENT_ROUNDS) - break; - /* linear transformation */ - serpent_lt(_out, SERPENT_ENCRYPT); - } - serpent_whiten(_out, key, i); -} - -void serpent_decrypt(const void *in, void *out, serpent_key_t *key) -{ - int8_t i; - serpent_blk *_out = out; - memcpy(out, in, SERPENT_BLOCK_SIZE); - - - i = SERPENT_ROUNDS; - serpent_whiten(_out, key, i); - for (;;) { - --i; - /* apply sbox */ - serpent_subbytes(_out, i, SERPENT_DECRYPT); - /* xor with subkey */ - serpent_whiten(_out, key, i); - if (i == 0) - break; - /* linear transformation */ - serpent_lt(_out, SERPENT_DECRYPT); - } -} diff --git a/crypto/serpent/serpent_locl.h b/crypto/serpent/serpent_locl.h deleted file mode 100755 index 79c19103..00000000 --- a/crypto/serpent/serpent_locl.h +++ /dev/null @@ -1,112 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2017 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ -/** -Copyright © 2015 Odzhan -Copyright © 2008 Daniel Otte -All Rights Reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: -1. Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright -notice, this list of conditions and the following disclaimer in the -documentation and/or other materials provided with the distribution. -3. The name of the author may not be used to endorse or promote products -derived from this software without specific prior written permission. -THIS SOFTWARE IS PROVIDED BY AUTHORS "AS IS" AND ANY EXPRESS OR -IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, -INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. */ - -#include -#include -#include - -#ifdef INTRINSICS -#define memcpy(x,y,z) __movsb(x,y,z) -#define memmove(x,y,z) __movsb(x,y,z) -#define memset(x,y,z) __stosb(x,y,z) -#define ROTL32(x,r) _rotl(x,r) -#define ROTR32(x,r) _rotr(x,r) -#else - -#define U8V(v) ((uint8_t)(v) & 0xFFU) -#define U16V(v) ((uint16_t)(v) & 0xFFFFU) -#define U32V(v) ((uint32_t)(v) & 0xFFFFFFFFUL) -#define U64V(v) ((uint64_t)(v) & 0xFFFFFFFFFFFFFFFFULL) - -#define ROTL8(v, n) \ - (U8V((v) << (n)) | ((v) >> (8 - (n)))) - -#define ROTL16(v, n) \ - (U16V((v) << (n)) | ((v) >> (16 - (n)))) - -#define ROTL32(v, n) \ - (U32V((v) << (n)) | ((v) >> (32 - (n)))) - -#define ROTL64(v, n) \ - (U64V((v) << (n)) | ((v) >> (64 - (n)))) - -#define ROTR8(v, n) ROTL8(v, 8 - (n)) -#define ROTR16(v, n) ROTL16(v, 16 - (n)) -#define ROTR32(v, n) ROTL32(v, 32 - (n)) -#define ROTR64(v, n) ROTL64(v, 64 - (n)) - -#endif - -#define GOLDEN_RATIO 0x9e3779b9l diff --git a/crypto/sm3/asm/sm3-586.pl b/crypto/sm3/asm/sm3-586.pl deleted file mode 100644 index 1a049f75..00000000 --- a/crypto/sm3/asm/sm3-586.pl +++ /dev/null @@ -1 +0,0 @@ -#! /usr/bin/env perl diff --git a/crypto/sm3/asm/sm3-x86_64.pl b/crypto/sm3/asm/sm3-x86_64.pl index 1a049f75..f07fb851 100755 --- a/crypto/sm3/asm/sm3-x86_64.pl +++ b/crypto/sm3/asm/sm3-x86_64.pl @@ -1 +1,289 @@ #! /usr/bin/env perl + +$flavour = shift; +$output = shift; +if ($flavour =~ /\./) { $output = $flavour; undef $flavour; } + +$win64=0; $win64=1 if ($flavour =~ /[nm]asm|mingw64/ || $output =~ /\.asm$/); + +$0 =~ m/(.*[\/\\])[^\/\\]+$/; $dir=$1; +( $xlate="${dir}x86_64-xlate.pl" and -f $xlate ) or +( $xlate="${dir}../../perlasm/x86_64-xlate.pl" and -f $xlate) or +die "can't locate x86_64-xlate.pl"; + +if (`$ENV{CC} -Wa,-v -c -o /dev/null -x assembler /dev/null 2>&1` + =~ /GNU assembler version ([2-9]\.[0-9]+)/) { + $avx = ($1>=2.19) + ($1>=2.22); +} + +if (!$avx && $win64 && ($flavour =~ /nasm/ || $ENV{ASM} =~ /nasm/) && + `nasm -v 2>&1` =~ /NASM version ([2-9]\.[0-9]+)/) { + $avx = ($1>=2.09) + ($1>=2.10); +} + +if (!$avx && $win64 && ($flavour =~ /masm/ || $ENV{ASM} =~ /ml64/) && + `ml64 2>&1` =~ /Version ([0-9]+)\./) { + $avx = ($1>=10) + ($1>=11); +} + +if (!$avx && `$ENV{CC} -v 2>&1` =~ /((?:^clang|LLVM) version|.*based on LLVM) ([3-9]\.[0-9]+)/) { + $avx = ($2>=3.0) + ($2>3.0); +} + +$avx=1 if ($avx); + +open OUT,"| \"$^X\" \"$xlate\" $flavour \"$output\""; +*STDOUT=*OUT; + + $func="sm3_block_data_order"; + $TABLE="K256"; + $SZ=4; + @ROT=($A,$B,$C,$D,$E,$F,$G,$H)=("%eax","%ebx","%ecx","%edx", + "%r8d","%r9d","%r10d","%r11d"); + ($T1,$a0,$a1,$a2,$a3)=("%r12d","%r13d","%r14d","%r15d","%edi"); + @Sigma0=( 2,13,22); + @Sigma1=( 6,11,25); + @sigma0=( 7,18, 3); + @sigma1=(17,19,10); + $rounds=64; + +$ctx="%rdi"; # 1st arg, zapped by $a3 +$inp="%rsi"; # 2nd arg +$Tbl="%rbp"; + +$_ctx="16*$SZ+0*8(%rsp)"; +$_inp="16*$SZ+1*8(%rsp)"; +$_end="16*$SZ+2*8(%rsp)"; +$_rsp="16*$SZ+3*8(%rsp)"; +$framesz="16*$SZ+4*8"; + + +sub ROUND_00_15() +{ my ($i,$a,$b,$c,$d,$e,$f,$g,$h) = @_; + my $STRIDE=$SZ; + $STRIDE += 16 if ($i%(16/$SZ)==(16/$SZ-1)); + +$code.=<<___; + ror \$`$Sigma1[2]-$Sigma1[1]`,$a0 + mov $f,$a2 + + xor $e,$a0 + ror \$`$Sigma0[2]-$Sigma0[1]`,$a1 + xor $g,$a2 # f^g + + mov $T1,`$SZ*($i&0xf)`(%rsp) + xor $a,$a1 + and $e,$a2 # (f^g)&e + + ror \$`$Sigma1[1]-$Sigma1[0]`,$a0 + add $h,$T1 # T1+=h + xor $g,$a2 # Ch(e,f,g)=((f^g)&e)^g + + ror \$`$Sigma0[1]-$Sigma0[0]`,$a1 + xor $e,$a0 + add $a2,$T1 # T1+=Ch(e,f,g) + + mov $a,$a2 + add ($Tbl),$T1 # T1+=K[round] + xor $a,$a1 + + xor $b,$a2 # a^b, b^c in next round + ror \$$Sigma1[0],$a0 # Sigma1(e) + mov $b,$h + + and $a2,$a3 + ror \$$Sigma0[0],$a1 # Sigma0(a) + add $a0,$T1 # T1+=Sigma1(e) + + xor $a3,$h # h=Maj(a,b,c)=Ch(a^b,c,b) + add $T1,$d # d+=T1 + add $T1,$h # h+=T1 + + lea $STRIDE($Tbl),$Tbl # round++ +___ +$code.=<<___ if ($i<15); + add $a1,$h # h+=Sigma0(a) +___ + ($a2,$a3) = ($a3,$a2); +} + +sub ROUND_16_XX() +{ my ($i,$a,$b,$c,$d,$e,$f,$g,$h) = @_; + +$code.=<<___; + mov `$SZ*(($i+1)&0xf)`(%rsp),$a0 + mov `$SZ*(($i+14)&0xf)`(%rsp),$a2 + + mov $a0,$T1 + ror \$`$sigma0[1]-$sigma0[0]`,$a0 + add $a1,$a # modulo-scheduled h+=Sigma0(a) + mov $a2,$a1 + ror \$`$sigma1[1]-$sigma1[0]`,$a2 + + xor $T1,$a0 + shr \$$sigma0[2],$T1 + ror \$$sigma0[0],$a0 + xor $a1,$a2 + shr \$$sigma1[2],$a1 + + ror \$$sigma1[0],$a2 + xor $a0,$T1 # sigma0(X[(i+1)&0xf]) + xor $a1,$a2 # sigma1(X[(i+14)&0xf]) + add `$SZ*(($i+9)&0xf)`(%rsp),$T1 + + add `$SZ*($i&0xf)`(%rsp),$T1 + mov $e,$a0 + add $a2,$T1 + mov $a,$a1 +___ + &ROUND_00_15(@_); +} + +$code=<<___; +.text + +.extern OPENSSL_ia32cap_P +.globl $func +.type $func,\@function,3 +.align 16 +$func: +___ +$code.=<<___; + push %rbx + push %rbp + push %r12 + push %r13 + push %r14 + push %r15 + mov %rsp,%r11 # copy %rsp + shl \$4,%rdx # num*16 + sub \$$framesz,%rsp + lea ($inp,%rdx,$SZ),%rdx # inp+num*16*$SZ + and \$-64,%rsp # align stack frame + mov $ctx,$_ctx # save ctx, 1st arg + mov $inp,$_inp # save inp, 2nd arh + mov %rdx,$_end # save end pointer, "3rd" arg + mov %r11,$_rsp # save copy of %rsp +.Lprologue: + + mov $SZ*0($ctx),$A + mov $SZ*1($ctx),$B + mov $SZ*2($ctx),$C + mov $SZ*3($ctx),$D + mov $SZ*4($ctx),$E + mov $SZ*5($ctx),$F + mov $SZ*6($ctx),$G + mov $SZ*7($ctx),$H + jmp .Lloop + +.align 16 +.Lloop: + mov $B,$a3 + lea $TABLE(%rip),$Tbl + xor $C,$a3 # magic +___ + for($i=0;$i<16;$i++) { + $code.=" mov $SZ*$i($inp),$T1\n"; + $code.=" mov @ROT[4],$a0\n"; + $code.=" mov @ROT[0],$a1\n"; + $code.=" bswap $T1\n"; + &ROUND_00_15($i,@ROT); + unshift(@ROT,pop(@ROT)); + } +$code.=<<___; + jmp .Lrounds_16_xx +.align 16 +.Lrounds_16_xx: +___ + for(;$i<32;$i++) { + &ROUND_16_XX($i,@ROT); + unshift(@ROT,pop(@ROT)); + } + +$code.=<<___; + cmpb \$0,`$SZ-1`($Tbl) + jnz .Lrounds_16_xx + + mov $_ctx,$ctx + add $a1,$A # modulo-scheduled h+=Sigma0(a) + lea 16*$SZ($inp),$inp + + add $SZ*0($ctx),$A + add $SZ*1($ctx),$B + add $SZ*2($ctx),$C + add $SZ*3($ctx),$D + add $SZ*4($ctx),$E + add $SZ*5($ctx),$F + add $SZ*6($ctx),$G + add $SZ*7($ctx),$H + + cmp $_end,$inp + + mov $A,$SZ*0($ctx) + mov $B,$SZ*1($ctx) + mov $C,$SZ*2($ctx) + mov $D,$SZ*3($ctx) + mov $E,$SZ*4($ctx) + mov $F,$SZ*5($ctx) + mov $G,$SZ*6($ctx) + mov $H,$SZ*7($ctx) + jb .Lloop + + mov $_rsp,%rsi + mov (%rsi),%r15 + mov 8(%rsi),%r14 + mov 16(%rsi),%r13 + mov 24(%rsi),%r12 + mov 32(%rsi),%rbp + mov 40(%rsi),%rbx + lea 48(%rsi),%rsp +.Lepilogue: + ret +.size $func,.-$func +___ + +$code.=<<___; +.align 64 +.type $TABLE,\@object +$TABLE: + .long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 + .long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 + .long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 + .long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 + .long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 + .long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 + .long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 + .long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 + .long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc + .long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc + .long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da + .long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da + .long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 + .long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 + .long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 + .long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 + .long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 + .long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 + .long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 + .long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 + .long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 + .long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 + .long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 + .long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 + .long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 + .long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 + .long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 + .long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 + .long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 + .long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 + .long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 + .long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 + + .long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f + .long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f + .long 0x03020100,0x0b0a0908,0xffffffff,0xffffffff + .long 0x03020100,0x0b0a0908,0xffffffff,0xffffffff + .long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 + .long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 +___ +close STDOUT; diff --git a/crypto/sm3/build.info b/crypto/sm3/build.info index 594338e2..ba164917 100644 --- a/crypto/sm3/build.info +++ b/crypto/sm3/build.info @@ -1,2 +1,13 @@ LIBS=../../libcrypto -SOURCE[../../libcrypto]=sm3.c sm3_hmac.c +SOURCE[../../libcrypto]=\ + sm3.c {- $target{sm3_asm_src} -} + +GENERATE[sm3-x86_64.s]=asm/sm3-x86_64.pl $(PERLASM_SCHEME) + +BEGINRAW[Makefile(unix)] +##### SM3 assembler implementations + +# GNU make "catch all" +{- $builddir -}/sm3-%.S: {- $sourcedir -}/asm/sm3-%.pl + CC="$(CC)" $(PERL) $< $(PERLASM_SCHEME) $@ +ENDRAW[Makefile(unix)] diff --git a/crypto/sm9/sm9_keygen.c b/crypto/sm9/sm9_keygen.c index eb385f2a..e0fdcf0d 100755 --- a/crypto/sm9/sm9_keygen.c +++ b/crypto/sm9/sm9_keygen.c @@ -50,8 +50,6 @@ #include #include #include -#include -#include #include "sm9_lcl.h" diff --git a/crypto/sm9/sm9_lib.c b/crypto/sm9/sm9_lib.c index 71603ac4..d8c2cea2 100755 --- a/crypto/sm9/sm9_lib.c +++ b/crypto/sm9/sm9_lib.c @@ -51,9 +51,11 @@ #include #include #include -#include +#include "../bn/bn_lcl.h" #include "sm9_lcl.h" +static int BN_hash_to_range(const EVP_MD *md, BIGNUM **bn, + const void *s, size_t slen, const BIGNUM *range, BN_CTX *bn_ctx); #if 0 typedef struct { @@ -231,3 +233,85 @@ int sm9_check_sign_scheme(int nid) { return 1; } + +int BN_hash_to_range(const EVP_MD *md, BIGNUM **bn, + const void *s, size_t slen, const BIGNUM *range, BN_CTX *bn_ctx) +{ + int ret = 0; + BIGNUM *r = NULL; + BIGNUM *a = NULL; + unsigned char *buf = NULL; + size_t buflen, mdlen; + int nbytes, rounds, i; + + if (!s || slen <= 0 || !md || !range) { + //BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_PASSED_NULL_PARAMETER); + return 0; + } + + if (!(*bn)) { + if (!(r = BN_new())) { + //BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_MALLOC_FAILURE); + return 0; + } + } else { + r = *bn; + BN_zero(r); + } + + mdlen = EVP_MD_size(md); + buflen = mdlen + slen; + if (!(buf = OPENSSL_malloc(buflen))) { + //BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_MALLOC_FAILURE); + goto end; + } + memset(buf, 0, mdlen); + memcpy(buf + mdlen, s, slen); + + a = BN_new(); + if (!a) { + //BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_MALLOC_FAILURE); + goto end; + } + + nbytes = BN_num_bytes(range); + rounds = (nbytes + mdlen - 1)/mdlen; + + if (!bn_expand(r, rounds * mdlen * 8)) { + //BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_BN_LIB); + goto end; + } + + for (i = 0; i < rounds; i++) { + if (!EVP_Digest(buf, buflen, buf, (unsigned int *)&mdlen, md, NULL)) { + //BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_EVP_LIB); + goto end; + } + if (!BN_bin2bn(buf, mdlen, a)) { + //BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_BN_LIB); + goto end; + } + if (!BN_lshift(r, r, mdlen * 8)) { + //BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_BN_LIB); + goto end; + } + if (!BN_uadd(r, r, a)) { + goto end; + } + } + + if (!BN_mod(r, r, range, bn_ctx)) { + //BNerr(BN_F_BN_HASH_TO_RANGE, ERR_R_BN_LIB); + goto end; + } + + *bn = r; + ret = 1; +end: + if (!ret && !(*bn)) { + BN_free(r); + } + BN_free(a); + OPENSSL_free(buf); + return ret; +} diff --git a/crypto/sm9/sm9_sign.c b/crypto/sm9/sm9_sign.c index a9466256..f66a5fb0 100755 --- a/crypto/sm9/sm9_sign.c +++ b/crypto/sm9/sm9_sign.c @@ -51,8 +51,6 @@ #include #include #include -#include -#include #include "sm9_lcl.h" diff --git a/crypto/speck/build.info b/crypto/speck/build.info deleted file mode 100755 index f3cc909c..00000000 --- a/crypto/speck/build.info +++ /dev/null @@ -1,2 +0,0 @@ -LIBS=../../libcrypto -SOURCE[../../libcrypto]=speck.c diff --git a/crypto/speck/speck.c b/crypto/speck/speck.c deleted file mode 100755 index 522c076d..00000000 --- a/crypto/speck/speck.c +++ /dev/null @@ -1,198 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2017 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include "speck_lcl.h" - -void speck_set_encrypt_key16(SPECK_TYPE16 const K[SPECK_KEY_LEN16], SPECK_TYPE16 S[SPECK_ROUNDS16]) -{ - SPECK_TYPE16 i, b = K[0]; - SPECK_TYPE16 a[SPECK_KEY_LEN16 - 1]; - for (i = 0; i < (SPECK_KEY_LEN16 - 1); i++) - { - a[i] = K[i + 1]; - } - S[0] = b; - for (i = 0; i < SPECK_ROUNDS16 - 1; i++) { - R16(a[i % (SPECK_KEY_LEN16 - 1)], b, i); - S[i + 1] = b; - } -} - -void speck_set_decrypt_key16(SPECK_TYPE16 const K[SPECK_KEY_LEN16], SPECK_TYPE16 S[SPECK_ROUNDS16]) -{ - SPECK_TYPE16 i, b = K[0]; - SPECK_TYPE16 a[SPECK_KEY_LEN16 - 1]; - for (i = 0; i < (SPECK_KEY_LEN16 - 1); i++) - { - a[i] = K[i + 1]; - } - S[0] = b; - for (i = 0; i < SPECK_ROUNDS16 - 1; i++) { - R16(a[i % (SPECK_KEY_LEN16 - 1)], b, i); - S[i + 1] = b; - } -} - -void speck_encrypt16(SPECK_TYPE16 const pt[2], SPECK_TYPE16 ct[2], SPECK_TYPE16 const K[SPECK_ROUNDS16]) -{ - SPECK_TYPE16 i; - ct[0] = pt[0]; ct[1] = pt[1]; - for (i = 0; i < SPECK_ROUNDS16; i++){ - R16(ct[1], ct[0], K[i]); - } -} - -void speck_decrypt16(SPECK_TYPE16 const ct[2], SPECK_TYPE16 pt[2], SPECK_TYPE16 const K[SPECK_ROUNDS16]) -{ - SPECK_TYPE16 i; - pt[0] = ct[0]; pt[1] = ct[1]; - - for (i = 0; i < SPECK_ROUNDS16; i++){ - RR16(pt[1], pt[0], K[(SPECK_ROUNDS16 - 1) - i]); - } -} - -void speck_set_encrypt_key32(SPECK_TYPE32 const K[SPECK_KEY_LEN32], SPECK_TYPE32 S[SPECK_ROUNDS32]) -{ - SPECK_TYPE32 i, b = K[0]; - SPECK_TYPE32 a[SPECK_KEY_LEN32 - 1]; - for (i = 0; i < (SPECK_KEY_LEN32 - 1); i++) - { - a[i] = K[i + 1]; - } - S[0] = b; - for (i = 0; i < SPECK_ROUNDS32 - 1; i++) { - R32(a[i % (SPECK_KEY_LEN32 - 1)], b, i); - S[i + 1] = b; - } -} - -void speck_set_decrypt_key32(SPECK_TYPE32 const K[SPECK_KEY_LEN32], SPECK_TYPE32 S[SPECK_ROUNDS32]) -{ - SPECK_TYPE32 i, b = K[0]; - SPECK_TYPE32 a[SPECK_KEY_LEN32 - 1]; - for (i = 0; i < (SPECK_KEY_LEN32 - 1); i++) - { - a[i] = K[i + 1]; - } - S[0] = b; - for (i = 0; i < SPECK_ROUNDS32 - 1; i++) { - R32(a[i % (SPECK_KEY_LEN32 - 1)], b, i); - S[i + 1] = b; - } -} - -void speck_encrypt32(SPECK_TYPE32 const pt[2], SPECK_TYPE32 ct[2], SPECK_TYPE32 const K[SPECK_ROUNDS32]) -{ - SPECK_TYPE32 i; - ct[0] = pt[0]; ct[1] = pt[1]; - for (i = 0; i < SPECK_ROUNDS32; i++){ - R32(ct[1], ct[0], K[i]); - } -} - -void speck_decrypt32(SPECK_TYPE32 const ct[2], SPECK_TYPE32 pt[2], SPECK_TYPE32 const K[SPECK_ROUNDS32]) -{ - SPECK_TYPE32 i; - pt[0] = ct[0]; pt[1] = ct[1]; - - for (i = 0; i < SPECK_ROUNDS32; i++){ - RR32(pt[1], pt[0], K[(SPECK_ROUNDS32 - 1) - i]); - } -} - -void speck_set_encrypt_key64(SPECK_TYPE64 const K[SPECK_KEY_LEN64], SPECK_TYPE64 S[SPECK_ROUNDS64]) -{ - SPECK_TYPE64 i, b = K[0]; - SPECK_TYPE64 a[SPECK_KEY_LEN64 - 1]; - for (i = 0; i < (SPECK_KEY_LEN64 - 1); i++) - { - a[i] = K[i + 1]; - } - S[0] = b; - for (i = 0; i < SPECK_ROUNDS64 - 1; i++) { - R64(a[i % (SPECK_KEY_LEN64 - 1)], b, i); - S[i + 1] = b; - } -} - -void speck_set_decrypt_key64(SPECK_TYPE64 const K[SPECK_KEY_LEN64], SPECK_TYPE64 S[SPECK_ROUNDS64]) -{ - SPECK_TYPE64 i, b = K[0]; - SPECK_TYPE64 a[SPECK_KEY_LEN64 - 1]; - for (i = 0; i < (SPECK_KEY_LEN64 - 1); i++) - { - a[i] = K[i + 1]; - } - S[0] = b; - for (i = 0; i < SPECK_ROUNDS64 - 1; i++) { - R64(a[i % (SPECK_KEY_LEN64 - 1)], b, i); - S[i + 1] = b; - } -} - -void speck_encrypt64(SPECK_TYPE64 const pt[2], SPECK_TYPE64 ct[2], SPECK_TYPE64 const K[SPECK_ROUNDS64]) -{ - SPECK_TYPE64 i; - ct[0] = pt[0]; ct[1] = pt[1]; - for (i = 0; i < SPECK_ROUNDS64; i++){ - R64(ct[1], ct[0], K[i]); - } -} - -void speck_decrypt64(SPECK_TYPE64 const ct[2], SPECK_TYPE64 pt[2], SPECK_TYPE64 const K[SPECK_ROUNDS64]) -{ - SPECK_TYPE64 i; - pt[0] = ct[0]; pt[1] = ct[1]; - - for (i = 0; i < SPECK_ROUNDS64; i++){ - RR64(pt[1], pt[0], K[(SPECK_ROUNDS64 - 1) - i]); - } -} diff --git a/crypto/speck/speck_lcl.h b/crypto/speck/speck_lcl.h deleted file mode 100644 index 526f8573..00000000 --- a/crypto/speck/speck_lcl.h +++ /dev/null @@ -1,74 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2017 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ -#ifndef HEADER_SPECK_LCL_H -#define HEADER_SPECK_LCL_H - -#define SPECK_TYPE16 uint16_t -#define SPECK_TYPE32 uint32_t -#define SPECK_TYPE64 uint64_t - -#define ROR16(x, r) ((x >> r) | (x << ((sizeof(SPECK_TYPE16) * 8) - r))) -#define ROL16(x, r) ((x << r) | (x >> ((sizeof(SPECK_TYPE16) * 8) - r))) - -#define ROR32(x, r) ((x >> r) | (x << ((sizeof(SPECK_TYPE32) * 8) - r))) -#define ROL32(x, r) ((x << r) | (x >> ((sizeof(SPECK_TYPE32) * 8) - r))) - -#define ROR64(x, r) ((x >> r) | (x << ((sizeof(SPECK_TYPE64) * 8) - r))) -#define ROL64(x, r) ((x << r) | (x >> ((sizeof(SPECK_TYPE64) * 8) - r))) - -#define R16(x, y, k) (x = ROR16(x, 7), x += y, x ^= k, y = ROL16(y, 2), y ^= x) -#define RR16(x, y, k) (y ^= x, y = ROR16(y, 2), x ^= k, x -= y, x = ROL16(x, 7)) - -#define R32(x, y, k) (x = ROR32(x, 8), x += y, x ^= k, y = ROL32(y, 3), y ^= x) -#define RR32(x, y, k) (y ^= x, y = ROR32(y, 3), x ^= k, x -= y, x = ROL32(x, 8)) - -#define R64(x, y, k) (x = ROR64(x, 8), x += y, x ^= k, y = ROL64(y, 3), y ^= x) -#define RR64(x, y, k) (y ^= x, y = ROR64(y, 3), x ^= k, x -= y, x = ROL64(x, 8)) - -#endif diff --git a/doc/gmssl/deterministic-sm2.md b/doc/gmssl/deterministic-sm2.md new file mode 100644 index 00000000..0cbbcdef --- /dev/null +++ b/doc/gmssl/deterministic-sm2.md @@ -0,0 +1,7 @@ +# Deterministic SM2 Signature Algorithm + +Like ECDSA, the SM2 signature algorithm need a cryptographicall +secure source of randomness. This requirement makes the algorithm is +warnable when the signature is generate. + +Produced siganture remains fully compatible diff --git a/include/openssl/bb1ibe.h b/include/openssl/bb1ibe.h deleted file mode 100644 index 496d35b4..00000000 --- a/include/openssl/bb1ibe.h +++ /dev/null @@ -1,148 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ -/* - * Boneh-Boyen Identity-Based Encryption (BB1-IBE) - * see [RFC 5091](https://tools.ietf.org/html/rfc5091) - * Identity-Based Cryptography Standard (IBCS) #1: - * Supersingular Curve Implementations of the BF and BB1 Cryptosystems - */ - -#ifndef HEADER_BB1IBE_H -#define HEADER_BB1IBE_H - -#include -#ifndef OPENSSL_NO_BB1IBE - -#include -#include -#include -#include -#include -#include - -#define BB1IBE_VERSION 2 - -#ifdef __cplusplus -extern "C" { -#endif - - -typedef struct BB1PublicParameters_st BB1PublicParameters; -typedef struct BB1MasterSecret_st BB1MasterSecret; -typedef struct BB1PrivateKeyBlock_st BB1PrivateKeyBlock; -typedef struct BB1CiphertextBlock_st BB1CiphertextBlock; - - -int BB1IBE_setup(const EC_GROUP *group, const EVP_MD *md, - BB1PublicParameters **mpk, BB1MasterSecret **msk); -BB1PrivateKeyBlock *BB1IBE_extract_private_key(BB1PublicParameters *mpk, - BB1MasterSecret *msk, const char *id, size_t idlen); -BB1CiphertextBlock *BB1IBE_do_encrypt(BB1PublicParameters *mpk, - const unsigned char *in, size_t inlen, - const char *id, size_t idlen); -int BB1IBE_do_decrypt(BB1PublicParameters *mpk, - const BB1CiphertextBlock *in, unsigned char *out, size_t *outlen, - BB1PrivateKeyBlock *sk); -int BB1IBE_encrypt(BB1PublicParameters *mpk, - const unsigned char *in, size_t inlen, - unsigned char *out, size_t *outlen, - const char *id, size_t idlen); -int BB1IBE_decrypt(BB1PublicParameters *mpk, - const unsigned char *in, size_t inlen, - unsigned char *out, size_t *outlen, - BB1PrivateKeyBlock *sk); - -DECLARE_ASN1_FUNCTIONS(BB1MasterSecret) -DECLARE_ASN1_FUNCTIONS(BB1PublicParameters) -DECLARE_ASN1_FUNCTIONS(BB1PrivateKeyBlock) -DECLARE_ASN1_FUNCTIONS(BB1CiphertextBlock) - -/* BEGIN ERROR CODES */ -/* - * The following lines are auto generated by the script mkerr.pl. Any changes - * made after this point may be overwritten when the script is next run. - */ - -int ERR_load_BB1IBE_strings(void); - -/* Error codes for the BB1IBE functions. */ - -/* Function codes. */ -# define BB1IBE_F_BB1CIPHERTEXTBLOCK_HASH_TO_RANGE 100 -# define BB1IBE_F_BB1IBE_DECRYPT 101 -# define BB1IBE_F_BB1IBE_DOUBLE_HASH 102 -# define BB1IBE_F_BB1IBE_DO_DECRYPT 103 -# define BB1IBE_F_BB1IBE_DO_ENCRYPT 104 -# define BB1IBE_F_BB1IBE_ENCRYPT 105 -# define BB1IBE_F_BB1IBE_EXTRACT_PRIVATE_KEY 106 -# define BB1IBE_F_BB1IBE_SETUP 107 - -/* Reason codes. */ -# define BB1IBE_R_BB1CIPHERTEXT_INVALID_MAC 100 -# define BB1IBE_R_BB1IBE_HASH_FAILURE 101 -# define BB1IBE_R_BUFFER_TOO_SMALL 102 -# define BB1IBE_R_COMPUTE_OUTLEN_FAILURE 103 -# define BB1IBE_R_COMPUTE_TATE_FAILURE 104 -# define BB1IBE_R_D2I_FAILURE 105 -# define BB1IBE_R_DECRYPT_FAILURE 106 -# define BB1IBE_R_DOUBLE_HASH_FAILURE 107 -# define BB1IBE_R_ENCRYPT_FAILURE 108 -# define BB1IBE_R_I2D_FAILURE 109 -# define BB1IBE_R_INVALID_INPUT 110 -# define BB1IBE_R_INVALID_MD 111 -# define BB1IBE_R_INVALID_OUTPUT_BUFFER 112 -# define BB1IBE_R_INVALID_TYPE1CURVE 113 -# define BB1IBE_R_NOT_NAMED_CURVE 114 -# define BB1IBE_R_PARSE_PAIRING 115 - -# ifdef __cplusplus -} -# endif -#endif -#endif diff --git a/include/openssl/bfibe.h b/include/openssl/bfibe.h deleted file mode 100644 index 54be396b..00000000 --- a/include/openssl/bfibe.h +++ /dev/null @@ -1,146 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ -/* - * Boneh-Franklin Identity-Based Encryption (BF-IBE) - * see [RFC 5091](https://tools.ietf.org/html/rfc5091) - * Identity-Based Cryptography Standard (IBCS) #1: - * Supersingular Curve Implementations of the BF and BB1 Cryptosystems - */ - -#ifndef HEADER_BFIBE_H -#define HEADER_BFIBE_H - -#include -#ifndef OPENSSL_NO_BFIBE - -#include -#include -#include -#include -#include -#include - -#define BFIBE_VERSION 2 - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct BFPublicParameters_st BFPublicParameters; -typedef struct BFMasterSecret_st BFMasterSecret; -typedef struct BFPrivateKeyBlock_st BFPrivateKeyBlock; -typedef struct BFCiphertextBlock_st BFCiphertextBlock; - -int BFIBE_setup(const EC_GROUP *group, const EVP_MD *md, - BFPublicParameters **mpk, BFMasterSecret **msk); -BFPrivateKeyBlock *BFIBE_extract_private_key(BFPublicParameters *mpk, - BFMasterSecret *msk, const char *id, size_t idlen); -BFCiphertextBlock *BFIBE_do_encrypt(BFPublicParameters *mpk, - const unsigned char *in, size_t inlen, - const char *id, size_t idlen); -int BFIBE_do_decrypt(BFPublicParameters *mpk, - const BFCiphertextBlock *in, - unsigned char *out, size_t *outlen, - BFPrivateKeyBlock *sk); -int BFIBE_encrypt(BFPublicParameters *mpk, - const unsigned char *in, size_t inlen, - unsigned char *out, size_t *outlen, - const char *id, size_t idlen); -int BFIBE_decrypt(BFPublicParameters *mpk, - const unsigned char *in, size_t inlen, - unsigned char *out, size_t *outlen, - BFPrivateKeyBlock *sk); - -DECLARE_ASN1_FUNCTIONS(BFPublicParameters) -DECLARE_ASN1_FUNCTIONS(BFMasterSecret) -DECLARE_ASN1_FUNCTIONS(BFPrivateKeyBlock) -DECLARE_ASN1_FUNCTIONS(BFCiphertextBlock) - -/* BEGIN ERROR CODES */ -/* - * The following lines are auto generated by the script mkerr.pl. Any changes - * made after this point may be overwritten when the script is next run. - */ - -int ERR_load_BFIBE_strings(void); - -/* Error codes for the BFIBE functions. */ - -/* Function codes. */ -# define BFIBE_F_BFIBE_DECRYPT 100 -# define BFIBE_F_BFIBE_DO_DECRYPT 101 -# define BFIBE_F_BFIBE_DO_ENCRYPT 102 -# define BFIBE_F_BFIBE_ENCRYPT 103 -# define BFIBE_F_BFIBE_EXTRACT_PRIVATE_KEY 104 -# define BFIBE_F_BFIBE_SETUP 105 - -/* Reason codes. */ -# define BFIBE_R_BFIBE_CIPHERTEXT_FAILURE 100 -# define BFIBE_R_BUFFER_TOO_SMALL 101 -# define BFIBE_R_COMPUTE_OUTLEN_FAILURE 102 -# define BFIBE_R_D2I_FAILURE 103 -# define BFIBE_R_DECRYPT_FAILURE 104 -# define BFIBE_R_ENCRYPT_FAILURE 105 -# define BFIBE_R_HASH_BYTES_FAILURE 106 -# define BFIBE_R_I2D_FAILURE 107 -# define BFIBE_R_INVALID_BFIBE_HASHFUNC 108 -# define BFIBE_R_INVALID_CIPHERTEXT 109 -# define BFIBE_R_INVALID_TYPE1CURVE 110 -# define BFIBE_R_KDF_FAILURE 111 -# define BFIBE_R_NOT_NAMED_CURVE 112 -# define BFIBE_R_PARSE_CURVE_FAILURE 113 -# define BFIBE_R_PARSE_MPK_FAILURE 114 -# define BFIBE_R_PARSE_PAIRING 115 -# define BFIBE_R_RAND_FAILURE 116 - -# ifdef __cplusplus -} -# endif -#endif -#endif diff --git a/include/openssl/bn_gfp2.h b/include/openssl/bn_gfp2.h deleted file mode 100644 index effd2081..00000000 --- a/include/openssl/bn_gfp2.h +++ /dev/null @@ -1,96 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#ifndef HEADER_BN_GFP2_H -#define HEADER_BN_GFP2_H - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* element a in GF(p^2), where a = a0 + a1 * i, i^2 == -1 */ -typedef struct { - BIGNUM *a0; - BIGNUM *a1; -} BN_GFP2; - -BN_GFP2 *BN_GFP2_new(void); -void BN_GFP2_free(BN_GFP2 *a); -int BN_GFP2_copy(BN_GFP2 *r, const BN_GFP2 *a); -int BN_GFP2_one(BN_GFP2 *a); -int BN_GFP2_zero(BN_GFP2 *a); -int BN_GFP2_is_zero(const BN_GFP2 *a); -int BN_GFP2_equ(const BN_GFP2 *a, const BN_GFP2 *b); -int BN_GFP2_add(BN_GFP2 *r, const BN_GFP2 *a, const BN_GFP2 *b, const BIGNUM *p, BN_CTX *ctx); -int BN_GFP2_sub(BN_GFP2 *r, const BN_GFP2 *a, const BN_GFP2 *b, const BIGNUM *p, BN_CTX *ctx); -int BN_GFP2_mul(BN_GFP2 *r, const BN_GFP2 *a, const BN_GFP2 *b, const BIGNUM *p, BN_CTX *ctx); -int BN_GFP2_sqr(BN_GFP2 *r, const BN_GFP2 *a, const BIGNUM *p, BN_CTX *ctx); -int BN_GFP2_inv(BN_GFP2 *r, const BN_GFP2 *a, const BIGNUM *p, BN_CTX *ctx); -int BN_GFP2_div(BN_GFP2 *r, const BN_GFP2 *a, const BN_GFP2 *b, const BIGNUM *p, BN_CTX *ctx); -int BN_GFP2_exp(BN_GFP2 *r, const BN_GFP2 *a, const BIGNUM *k, const BIGNUM *p, BN_CTX *ctx); -int BN_GFP2_set_bn(BN_GFP2 *r, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx); -int BN_GFP2_add_bn(BN_GFP2 *r, const BN_GFP2 *a, const BIGNUM *b, const BIGNUM *p,BN_CTX *ctx); -int BN_GFP2_sub_bn(BN_GFP2 *r, const BN_GFP2 *a, const BIGNUM *b, const BIGNUM *p, BN_CTX *ctx); -int BN_GFP2_mul_bn(BN_GFP2 *r, const BN_GFP2 *a, const BIGNUM *b, const BIGNUM *p, BN_CTX *ctx); -int BN_GFP2_div_bn(BN_GFP2 *r, const BN_GFP2 *a, const BIGNUM *b, const BIGNUM *p, BN_CTX *ctx); -int BN_bn2gfp2(const BIGNUM *bn, BN_GFP2 *gfp2, const BIGNUM *p, BN_CTX *ctx); -int BN_gfp22bn(const BN_GFP2 *gfp2, BIGNUM *bn, const BIGNUM *p, BN_CTX *ctx); -/* - * Canonical a = a0 + a1 * i - * If order is 0 then output a0, a1, else output a1, a0, |a0| = |a1| = |p|. - */ -int BN_GFP2_canonical(const BN_GFP2 *a, unsigned char *out, size_t *outlen, - int order, const BIGNUM *p, BN_CTX *ctx); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/include/openssl/bn_hash.h b/include/openssl/bn_hash.h deleted file mode 100644 index dd8aed0d..00000000 --- a/include/openssl/bn_hash.h +++ /dev/null @@ -1,68 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#ifndef HEADER_BN_HASH_H -#define HEADER_BN_HASH_H - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* hash input bytes to bignum in range [0, p - 1] */ -int BN_hash_to_range(const EVP_MD *md, - BIGNUM **bn, const void *in, size_t inlen, - const BIGNUM *p, BN_CTX *ctx); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/include/openssl/bn_solinas.h b/include/openssl/bn_solinas.h deleted file mode 100644 index 67fe53d9..00000000 --- a/include/openssl/bn_solinas.h +++ /dev/null @@ -1,94 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ -/* - * Solinas Prime (prime number with low weight) - */ - -#ifndef HEADER_BN_SOLINAS_H -#define HEADER_BN_SOLINAS_H - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* solinas prime = 2^a + s * 2^b + c */ -typedef struct { - int a; - int b; - int s; - int c; -} BN_SOLINAS; - -int BN_bn2solinas(const BIGNUM *bn, BN_SOLINAS *solinas); -int BN_solinas2bn(const BN_SOLINAS *solinas, BIGNUM *bn); -int BN_is_solinas(const BIGNUM *bn); - -/* - * the following Solinas primes are from - * "Solinas primes of small weight for fixed sizes" - * https://eprint.iacr.org/2010/058.pdf - * - * 2^192 - 2^16 - 1 - * 2^192 - 2^64 - 1 - * 2^224 - 2^96 + 1 - * 2^256 - 2^168 + 1 - * 2^384 - 2^80 + 1 - * 2^512 - 2^32 + 1 - * 2^512 - 2^32 - 1 - * 2^1024 - 2^424 - 1 - * 2^1024 - 2^856 + 1 - */ - - -#ifdef __cplusplus -} -#endif -#endif diff --git a/include/openssl/ec_hash.h b/include/openssl/ec_hash.h deleted file mode 100644 index 9c84f15c..00000000 --- a/include/openssl/ec_hash.h +++ /dev/null @@ -1,67 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#ifndef HEADER_EC_HASH_H -#define HEADER_EC_HASH_H - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* hash string s to elliptic curve point */ -int EC_POINT_hash2point(const EC_GROUP *group, const EVP_MD *md, - const char *s, size_t slen, EC_POINT *point, BN_CTX *ctx); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/include/openssl/ec_type1.h b/include/openssl/ec_type1.h deleted file mode 100644 index dd30e388..00000000 --- a/include/openssl/ec_type1.h +++ /dev/null @@ -1,99 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ -/* - * type1curve is supersingular curve E: y^2 = x^3 + 1 (mod p) over prime field. - * p = 11 (mod 12) - * a = 0 - * b = 1 - * G = (x, y) - * n is the order of (x, y) - * h = (p + 1)/n - */ - -#ifndef HEADER_EC_TYPE1_H -#define HEADER_EC_TYPE1_H - -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - - - -EC_GROUP *EC_GROUP_new_type1curve(const BIGNUM *p, const BIGNUM *x, - const BIGNUM *y, const BIGNUM *order, BN_CTX *ctx); - -EC_GROUP *EC_GROUP_new_type1curve_ex(const BIGNUM *p, const BIGNUM *a, - const BIGNUM *b, const unsigned char *point, size_t pointlen, - const BIGNUM *order, const BIGNUM *cofactor, BN_CTX *bn_ctx); - -int EC_GROUP_is_type1curve(const EC_GROUP *group, BN_CTX *ctx); - -BN_GFP2 *EC_GROUP_get_type1curve_zeta(const EC_GROUP *group, BN_CTX *ctx); - -BIGNUM *EC_GROUP_get_type1curve_eta(const EC_GROUP *group, BN_CTX *ctx); - -/* compute tate pairing e(P, Q) over type1curve */ -int EC_type1curve_tate(const EC_GROUP *group, BN_GFP2 *r, - const EC_POINT *P, const EC_POINT *Q, BN_CTX *ctx); - -/* compute tate pairing ratio e(P1, Q1)/e(P2, Q2) over type1curve*/ -int EC_type1curve_tate_ratio(const EC_GROUP *group, BN_GFP2 *r, - const EC_POINT *P1, const EC_POINT *Q1, const EC_POINT *P2, - const EC_POINT *Q2, BN_CTX *bn_ctx); - - - -#ifdef __cplusplus -} -#endif -#endif diff --git a/include/openssl/ecahe.h b/include/openssl/ecahe.h deleted file mode 100644 index ca065ed7..00000000 --- a/include/openssl/ecahe.h +++ /dev/null @@ -1,74 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 - 2019 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#ifndef HEADER_ECAHE_H -#define HEADER_ECAHE_H - -#include -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct ECAHE_CIPHERTEXT_st ECAHE_CIPHERTEXT; -DECLARE_ASN1_FUNCTIONS(ECAHE_CIPHERTEXT) - -int ECAHE_do_encrypt(ECAHE_CIPHERTEXT *c, const BIGNUM *m, EC_KEY *pk); -int ECAHE_do_decrypt(BIGNUM *m, const ECAHE_CIPHERTEXT *c, EC_KEY *sk); -int ECAHE_ciphertext_add(ECAHE_CIPHERTEXT *r, const ECAHE_CIPHERTEXT *a, const ECAHE_CIPHERTEXT *b, EC_KEY *pk); -int ECAHE_ciphertext_sub(ECAHE_CIPHERTEXT *r, const ECAHE_CIPHERTEXT *a, const ECAHE_CIPHERTEXT *b, EC_KEY *pk); -int ECAHE_ciphertext_neg(ECAHE_CIPHERTEXT *r, const ECAHE_CIPHERTEXT *a, EC_KEY *pk); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/include/openssl/err.h b/include/openssl/err.h index 681c44c2..86343581 100644 --- a/include/openssl/err.h +++ b/include/openssl/err.h @@ -94,12 +94,9 @@ typedef struct err_state_st { # define ERR_LIB_ASYNC 51 # define ERR_LIB_KDF 52 # define ERR_LIB_KDF2 53 -# define ERR_LIB_FFX 54 # define ERR_LIB_PAILLIER 55 # define ERR_LIB_OTP 57 # define ERR_LIB_GMAPI 58 -# define ERR_LIB_BFIBE 59 -# define ERR_LIB_BB1IBE 60 # define ERR_LIB_SM9 61 # define ERR_LIB_SDF 63 # define ERR_LIB_SKF 64 @@ -144,12 +141,9 @@ typedef struct err_state_st { # 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 KDF2err(f,r) ERR_PUT_error(ERR_LIB_KDF2,(f),(r),OPENSSL_FILE,OPENSSL_LINE) -# define FFXerr(f,r) ERR_PUT_error(ERR_LIB_FFX,(f),(r),OPENSSL_FILE,OPENSSL_LINE) # define PAILLIERerr(f,r) ERR_PUT_error(ERR_LIB_PAILLIER,(f),(r),OPENSSL_FILE,OPENSSL_LINE) # define OTPerr(f,r) ERR_PUT_error(ERR_LIB_OTP,(f),(r),OPENSSL_FILE,OPENSSL_LINE) # define GMAPIerr(f,r) ERR_PUT_error(ERR_LIB_GMAPI,(f),(r),OPENSSL_FILE,OPENSSL_LINE) -# define BFIBEerr(f,r) ERR_PUT_error(ERR_LIB_BFIBE,(f),(r),OPENSSL_FILE,OPENSSL_LINE) -# define BB1IBEerr(f,r) ERR_PUT_error(ERR_LIB_BB1IBE,(f),(r),OPENSSL_FILE,OPENSSL_LINE) # define SM2err(f,r) ERR_PUT_error(ERR_LIB_SM2,(f),(r),OPENSSL_FILE,OPENSSL_LINE) # define SM9err(f,r) ERR_PUT_error(ERR_LIB_SM9,(f),(r),OPENSSL_FILE,OPENSSL_LINE) # define SDFerr(f,r) ERR_PUT_error(ERR_LIB_SDF,(f),(r),OPENSSL_FILE,OPENSSL_LINE) @@ -203,12 +197,9 @@ typedef struct err_state_st { # define ERR_R_ENGINE_LIB ERR_LIB_ENGINE/* 38 */ # define ERR_R_ECDSA_LIB ERR_LIB_ECDSA/* 42 */ # define ERR_R_KDF2_LIB ERR_LIB_KDF2/* 53 */ -# define ERR_R_FFX_LIB ERR_LIB_FFX/* 54 */ # define ERR_R_PAILLIER_LIB ERR_LIB_PAILLIER/* 55 */ # define ERR_R_OTP_LIB ERR_LIB_OTP/* 57 */ # define ERR_R_GMAPI_LIB ERR_LIB_GMAPI/* 58 */ -# define ERR_R_BFIBE_LIB ERR_LIB_BFIBE/* 59 */ -# define ERR_R_BB1IBE_LIB ERR_LIB_BB1IBE/* 60 */ # define ERR_R_SM2_LIB ERR_LIB_SM2/* 66 */ # define ERR_R_SM9_LIB ERR_LIB_SM9/* 61 */ # define ERR_R_SDF_LIB ERR_LIB_SDF/* 63 */ diff --git a/include/openssl/ffx.h b/include/openssl/ffx.h deleted file mode 100644 index be2b2d7b..00000000 --- a/include/openssl/ffx.h +++ /dev/null @@ -1,117 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2015 - 2017 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#ifndef HEADER_FFX_H -#define HEADER_FFX_H - - -#include -#include - - -#define FFX_MIN_DIGITS 6 -#define FFX_MAX_DIGITS 18 -#define FFX_MIN_TWEAKLEN 4 -#define FFX_MAX_TWEAKLEN 11 -#define FFX_NUM_ROUNDS 10 - -#define FFX_TYPE_BINARY 0x04 -#define FFX_TYPE_KEYWORD 0x05 -#define FFX_TYPE_PASSWORD 0x08 -#define FFX_TYPE_TEXT 0x09 -#define FFX_TYPE_INTEGER 0x0a -#define FFX_TYPE_DIGITS 0x00 -#define FFX_TYPE_CELLPHONE 0x01 -#define FFX_TYPE_BANKCARD 0x02 -#define FFX_TYPE_IDCARD 0x03 - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct FFX_CTX_st FFX_CTX; - -FFX_CTX *FFX_CTX_new(void); -void FFX_CTX_free(FFX_CTX *ctx); -int FFX_init(FFX_CTX *ctx, const EVP_CIPHER *cipher, - const unsigned char *key, int flag); -int FFX_encrypt(FFX_CTX *ctx, const char *in, char *out, size_t iolen, - unsigned char *tweak, size_t tweaklen); -int FFX_decrypt(FFX_CTX *ctx, const char *in, char *out, size_t iolen, - unsigned char *tweak, size_t tweaklen); -int FFX_compute_luhn(const char *in, size_t inlen); - - -/* BEGIN ERROR CODES */ -/* - * The following lines are auto generated by the script mkerr.pl. Any changes - * made after this point may be overwritten when the script is next run. - */ - -int ERR_load_FFX_strings(void); - -/* Error codes for the FFX functions. */ - -/* Function codes. */ -# define FFX_F_FFX_DECRYPT 100 -# define FFX_F_FFX_ENCRYPT 101 -# define FFX_F_FFX_INIT 102 - -/* Reason codes. */ -# define FFX_R_ENCRYPT_INIT_FAILURE 100 -# define FFX_R_INVALID_BLOCK_SIZE 101 -# define FFX_R_INVALID_CIPHER_MODE 102 -# define FFX_R_INVALID_INPUT_DIGIT 103 -# define FFX_R_INVALID_INPUT_LENGTH 104 -# define FFX_R_INVALID_TWEAK_LENGTH 105 - -# ifdef __cplusplus -} -# endif -#endif diff --git a/include/openssl/fppoint.h b/include/openssl/fppoint.h deleted file mode 100644 index a98dd374..00000000 --- a/include/openssl/fppoint.h +++ /dev/null @@ -1,77 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ -/* - * FpPoint is the affine coordinates presentation of point over E/F_p - * this data struct is used by pairing schemes over type1 curve - */ - -#ifndef HEADER_FPPOINT_H -#define HEADER_FPPOINT_H - -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct fppoint_st { - BIGNUM *x; - BIGNUM *y; -} FpPoint; -DECLARE_ASN1_FUNCTIONS(FpPoint) - -int EC_POINT_cmp_fppoint(const EC_GROUP *group, - const EC_POINT *point, const FpPoint *fppoint, BN_CTX *ctx); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/include/openssl/serpent.h b/include/openssl/serpent.h deleted file mode 100644 index 0cce1a11..00000000 --- a/include/openssl/serpent.h +++ /dev/null @@ -1,119 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2017 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ -/** -Copyright © 2015 Odzhan -Copyright © 2008 Daniel Otte -All Rights Reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: -1. Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright -notice, this list of conditions and the following disclaimer in the -documentation and/or other materials provided with the distribution. -3. The name of the author may not be used to endorse or promote products -derived from this software without specific prior written permission. -THIS SOFTWARE IS PROVIDED BY AUTHORS "AS IS" AND ANY EXPRESS OR -IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, -INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. */ - -#ifndef HEADER_SERPENT_H -#define HEADER_SERPENT_H - -#include -#ifndef OPENSSL_NO_SERPENT - -#include - -#define SERPENT_ROUNDS 32 -#define SERPENT_BLOCK_SIZE 16 -#define SERPENT_KEY256 32 - -#define SERPENT_ENCRYPT 0 -#define SERPENT_DECRYPT 1 - -#define SERPENT_IP 0 -#define SERPENT_FP 1 - -typedef union _serpent_blk_t { - uint8_t b[SERPENT_BLOCK_SIZE]; - uint32_t w[SERPENT_BLOCK_SIZE / 4]; - uint64_t q[SERPENT_BLOCK_SIZE / 2]; -} serpent_blk; - -typedef uint32_t serpent_subkey_t[4]; - -typedef struct { - serpent_subkey_t x[SERPENT_ROUNDS + 1]; -} serpent_key_t; - -#ifdef __cplusplus -extern "C" { -#endif - -void serpent_set_encrypt_key(serpent_key_t *key, const unsigned char *user_key); -void serpent_set_decrypt_key(serpent_key_t *key, const unsigned char *user_key); -void serpent_encrypt(const void *in, void *out, serpent_key_t *key); -void serpent_decrypt(const void *in, void *out, serpent_key_t *key); - -#ifdef __cplusplus -} -#endif -#endif -#endif diff --git a/include/openssl/sof.h b/include/openssl/sof.h deleted file mode 100644 index 3936a17f..00000000 --- a/include/openssl/sof.h +++ /dev/null @@ -1,170 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#ifndef HEADER_SOF_H -#define HEADER_SOF_H - -#include -#ifndef OPENSSL_NO_SOF - -#include - -typedef char * SOF_BSTR; -typedef long SOF_LONG; -typedef short SOF_SHORT; -typedef SOF_LONG SOF_BOOL; - -#ifdef __cplusplus -extern "C" { -#endif - - -SOF_BSTR SOF_GetVersion(void); -SOF_LONG SOF_SetSignMethod(SOF_LONG SignMethod); -SOF_LONG SOF_GetSignMethod(void); -SOF_LONG SOF_SetEncryptMethod(SOF_LONG EncryptMethod); -SOF_LONG SOF_GetEncryptMethod(void); -SOF_BSTR SOF_GetUserList(void); -SOF_BSTR SOF_ExportUserCert(SOF_BSTR ContainerName); -SOF_BOOL SOF_Login(SOF_BSTR ContainerName, SOF_BSTR PassWd); -SOF_LONG SOF_GetPinRetryCount(SOF_BSTR ContainerName); -SOF_BOOL SOF_ChangePassWd(SOF_BSTR ContainerName, SOF_BSTR OldPassWd, SOF_BSTR NewPassWd); -SOF_BSTR SOF_ExportExchangeUserCert(SOF_BSTR ContainerName); -SOF_BSTR SOF_GetCertInfo(SOF_BSTR Base64EncodeCert, SOF_SHORT Type); -SOF_BSTR SOF_GetCertInfoByOid(SOF_BSTR Base64EncodeCert, SOF_BSTR Oid); -SOF_BSTR SOF_GetDeviceInfo(SOF_BSTR ContainerName, SOF_LONG Type); -SOF_LONG SOF_ValidateCert(SOF_BSTR Base64EncodeCert); -SOF_BSTR SOF_SignData(SOF_BSTR ContainerName, SOF_BSTR InData); -SOF_BOOL SOF_VerifySignedData(SOF_BSTR Base64EncodeCert, SOF_BSTR InData, SOF_BSTR SignValue); -SOF_BSTR SOF_SignFile(SOF_BSTR ContainerName, SOF_BSTR InFile); -SOF_BOOL SOF_VerifySignedFile(SOF_BSTR Base64EncodeCert, SOF_BSTR InFile, SOF_BSTR SignValue); -SOF_BSTR SOF_EncryptData(SOF_BSTR Base64EncodeCert, SOF_BSTR InData); -SOF_BSTR SOF_DecryptData(SOF_BSTR ContainerName, SOF_BSTR InData); -SOF_BOOL SOF_EncryptFile(SOF_BSTR Base64EncodeCert, SOF_BSTR InFile, SOF_BSTR OutFile); -SOF_BOOL SOF_DecryptFile(SOF_BSTR ContainerName, SOF_BSTR InFile, SOF_BSTR OutFile); -SOF_BSTR SOF_SignMessage(SOF_SHORT flag, SOF_BSTR ContainerName, SOF_BSTR InData); -SOF_BOOL SOF_VerifySignedMessage(SOF_BSTR MessageData, SOF_BSTR InData); -SOF_BSTR SOF_GetInfoFromSignedMessage(SOF_BSTR SignedMessage, SOF_SHORT Type); -SOF_BSTR SOF_SignDataXML(SOF_BSTR ContainerName, SOF_BSTR InData); -SOF_BOOL SOF_VerifySignedDataXML(SOF_BSTR InData); -SOF_BSTR SOF_GetXMLSignatureInfo(SOF_BSTR XMLSignedData, SOF_SHORT Type); -SOF_BSTR SOF_GenRandom(SOF_SHORT RandomLen); -SOF_LONG SOF_GetLastError(void); - -SOF_LONG SOF_SetCertTrustList(SOF_BSTR CTLAltName, SOF_BSTR CTLContent, SOF_SHORT CTLContentLen); -SOF_BSTR SOF_GetCertTrustListAltNames(void); -SOF_BSTR SOF_GetCertTrustList(SOF_BSTR CTLAltName); -SOF_LONG SOF_DelCertTrustList(SOF_BSTR CTLAltName); -SOF_LONG SOF_InitCertAppPolicy(SOF_BSTR PolicyName); -SOF_BSTR SOF_GetServerCertificate(SOF_SHORT CertUsage); -SOF_BSTR SOF_SignMessageDetach(SOF_BSTR InData); -SOF_LONG SOF_VerifySignedMessageDetach(SOF_BSTR InData, SOF_BSTR SignedMessage); -SOF_BSTR SOF_CreateTimeStampRequest(SOF_BSTR InData); -SOF_BSTR SOF_CreateTimeStampResponse(SOF_BSTR TimeStampRequest); -SOF_LONG SOF_VerifyTimeStamp(SOF_BSTR InData, SOF_BSTR tsResponseData); -SOF_BSTR SOF_GetTimeStampInfo(SOF_BSTR tsResponseData, SOF_SHORT type); - -#define SOR_OK 0x00000000 -#define SOR_UnknownErr 0x0B000001 -#define SOR_NotSupportYetErr 0x0B000002 -#define SOR_FileErr 0x0B000003 -#define SOR_ProviderTypeErr 0x0B000004 -#define SOR_LoadProviderErr 0x0B000005 -#define SOR_LoadDevMngApiErr 0x0B000006 -#define SOR_AlgoTypeErr 0x0B000007 -#define SOR_NameLenErr 0x0B000008 -#define SOR_KeyUsageErr 0x0B000009 -#define SOR_ModulusLenErr 0x0B000010 -#define SOR_NotInitializeErr 0x0B000011 -#define SOR_ObjErr 0x0B000012 -#define SOR_MemoryErr 0x0B000100 -#define SOR_TimeoutErr 0x0B000101 -#define SOR_IndataLenErr 0x0B000200 -#define SOR_IndataErr 0x0B000201 -#define SOR_GenRandErr 0x0B000300 -#define SOR_HashObjErr 0x0B000301 -#define SOR_HashErr 0x0B000302 -#define SOR_GenRsaKeyErr 0x0B000303 -#define SOR_RsaModulusLenErr 0x0B000304 -#define SOR_CspImprtPubKeyErr 0x0B000305 -#define SOR_RsaEncErr 0x0B000306 -#define SOR_RsaDecErr 0x0B000307 -#define SOR_HashNotEqualErr 0x0B000308 -#define SOR_KeyNotFountErr 0x0B000309 -#define SOR_CertNotFountErr 0x0B000310 -#define SOR_NotExportErr 0x0B000311 -#define SOR_VerifyPolicyErr 0x0B000312 -#define SOR_DecryptPadErr 0x0B000400 -#define SOR_MacLenErr 0x0B000401 -#define SOR_KeyInfoTypeErr 0x0B000402 -#define SOR_NullPointerErr 0x0B000403 -#define SOR_AppNotFoundErr 0x0B000404 -#define SOR_CertEncodeErr 0x0B000405 -#define SOR_CertInvalidErr 0x0B000406 -#define SOR_CertHasExpiredErr 0x0B000407 -#define SOR_CertRevokedErr 0x0B000408 -#define SOR_SignDataErr 0x0B000409 -#define SOR_VerifySignDataErr 0x0B000410 -#define SOR_ReadFileErr 0x0B000411 -#define SOR_WriteFileErr 0x0B000412 -#define SOR_SecretSegmentErr 0x0B000413 -#define SOR_SecretRecoverErr 0x0B000414 -#define SOR_EncryptDataErr 0x0B000415 -#define SOR_DecryptDataErr 0x0B000416 -#define SOR_PKCS7EncodeErr 0x0B000417 -#define SOR_XMLEncodeErr 0x0B000418 -#define SOR_ParameterNotSupportErr 0x0B000419 -#define SOR_CTLNotFound 0x0B000420 -#define SOR_AppNotFound 0x0B000421 - -#ifdef __cplusplus -} -#endif -#endif -#endif diff --git a/include/openssl/speck.h b/include/openssl/speck.h deleted file mode 100644 index adcbf5dd..00000000 --- a/include/openssl/speck.h +++ /dev/null @@ -1,91 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2017 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ -#ifndef HEADER_SPECK_H -#define HEADER_SPECK_H - -#include -#ifndef OPENSSL_NO_SPECK - -#define SPECK_ROUNDS16 22 -#define SPECK_KEY_LEN16 4 - -#define SPECK_ROUNDS32 27 -#define SPECK_KEY_LEN32 4 - -#define SPECK_ROUNDS64 34 -#define SPECK_KEY_LEN64 4 - -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -void speck_set_encrypt_key16(const uint16_t user[SPECK_KEY_LEN16], uint16_t key[SPECK_ROUNDS16]); -void speck_set_decrypt_key16(uint16_t const user[SPECK_KEY_LEN16], uint16_t key[SPECK_ROUNDS16]); -void speck_encrypt16(const uint16_t pt[2], uint16_t ct[2], const uint16_t K[SPECK_ROUNDS16]); -void speck_decrypt16(const uint16_t ct[2], uint16_t pt[2], const uint16_t K[SPECK_ROUNDS16]); - -void speck_set_encrypt_key32(const uint32_t user[SPECK_KEY_LEN32], uint32_t key[SPECK_ROUNDS32]); -void speck_set_decrypt_key32(const uint32_t user[SPECK_KEY_LEN32], uint32_t key[SPECK_ROUNDS32]); -void speck_encrypt32(const uint32_t pt[2], uint32_t ct[2], const uint32_t K[SPECK_ROUNDS32]); -void speck_decrypt32(const uint32_t ct[2], uint32_t pt[2], const uint32_t K[SPECK_ROUNDS32]); - -void speck_set_encrypt_key64(const uint64_t user[SPECK_KEY_LEN64], uint64_t key[SPECK_ROUNDS64]); -void speck_set_decrypt_key64(const uint64_t user[SPECK_KEY_LEN64], uint64_t key[SPECK_ROUNDS64]); -void speck_encrypt64(const uint64_t pt[2], uint64_t ct[2], const uint64_t K[SPECK_ROUNDS64]); -void speck_decrypt64(const uint64_t ct[2], uint64_t pt[2], const uint64_t K[SPECK_ROUNDS64]); - -#ifdef __cplusplus -} -#endif -#endif -#endif diff --git a/test/bb1ibetest.c b/test/bb1ibetest.c deleted file mode 100644 index 81f528db..00000000 --- a/test/bb1ibetest.c +++ /dev/null @@ -1,134 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include -#include "../e_os.h" - -#ifdef OPENSSL_NO_BB1IBE -int main(int argc, char **argv) -{ - printf("NO BB1IBE support\n"); - return 0; -} -#else -# include -# include - -int main(int argc, char **argv) -{ - int err = 1; - int curve_id = NID_sm2p256v1;//FIXME - const EVP_MD *md = EVP_sm3(); - char *id = "guanzhi1980@gmail.com"; - char *in = "message to be signed or encrypted"; - EC_GROUP *group = NULL; - BB1PublicParameters *mpk = NULL; - BB1MasterSecret *msk = NULL; - BB1PrivateKeyBlock *sk = NULL; - unsigned char *c = NULL; - unsigned char *m = NULL; - size_t clen, mlen; - - /* setup */ - if (!(group = EC_GROUP_new_by_curve_name(curve_id))) { - goto end; - } - if (!BB1IBE_setup(group, md, &mpk, &msk)) { - goto end; - } - - /* keygen */ - if (!(sk = BB1IBE_extract_private_key(mpk, msk, id, strlen(id)))) { - goto end; - } - - /* encrypt */ - clen = 0; - if (!BB1IBE_encrypt(mpk, (unsigned char *)in, strlen(in), - NULL, &clen, id, strlen(id))) { - goto end; - } - if (!(c = OPENSSL_zalloc(clen))) { - goto end; - } - if (!BB1IBE_encrypt(mpk, (unsigned char *)in, strlen(in), - c, &clen, id, strlen(id))) { - goto end; - } - - /* decrypt */ - mlen = 0; - if (!BB1IBE_decrypt(mpk, c, clen, NULL, &mlen, sk)) { - goto end; - } - if (!(m = OPENSSL_zalloc(mlen))) { - goto end; - } - if (!BB1IBE_decrypt(mpk, c, clen, m, &mlen, sk)) { - goto end; - } - if (strlen(in) != mlen || memcmp(in, m, mlen) != 0) { - goto end; - } - - err = 0; -end: - EC_GROUP_free(group); - BB1PublicParameters_free(mpk); - BB1MasterSecret_free(msk); - BB1PrivateKeyBlock_free(sk); - OPENSSL_free(c); - OPENSSL_free(m); - //FIXME: - //return err; - return 0; -} -#endif diff --git a/test/bfibetest.c b/test/bfibetest.c deleted file mode 100644 index fc9f4e58..00000000 --- a/test/bfibetest.c +++ /dev/null @@ -1,133 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include -#include "../e_os.h" - -#ifdef OPENSSL_NO_BFIBE -int main(int argc, char **argv) -{ - printf("NO BFIBE support\n"); - return 0; -} -#else -# include -# include - -int main(int argc, char **argv) -{ - int err = 1; - int curve_id = NID_sm2p256v1; - const EVP_MD *md = EVP_sm3(); - char *id = "guanzhi1980@gmail.com"; - char *in = "message to be signed or encrypted"; - EC_GROUP *group = NULL; - BFPublicParameters *mpk = NULL; - BFMasterSecret *msk = NULL; - BFPrivateKeyBlock *sk = NULL; - unsigned char *c = NULL; - unsigned char *m = NULL; - size_t clen, mlen; - - /* setup */ - if (!(group = EC_GROUP_new_by_curve_name(curve_id))) { - goto end; - } - if (!BFIBE_setup(group, md, &mpk, &msk)) { - goto end; - } - - /* keygen */ - if (!(sk = BFIBE_extract_private_key(mpk, msk, id, strlen(id)))) { - goto end; - } - - /* encrypt */ - clen = 0; - if (!BFIBE_encrypt(mpk, (unsigned char *)in, strlen(in), - NULL, &clen, id, strlen(id))) { - goto end; - } - if (!(c = OPENSSL_zalloc(clen))) { - goto end; - } - if (!BFIBE_encrypt(mpk, (unsigned char *)in, strlen(in), - c, &clen, id, strlen(id))) { - goto end; - } - - /* decrypt */ - mlen = 0; - if (!BFIBE_decrypt(mpk, c, clen, NULL, &mlen, sk)) { - goto end; - } - if (!(m = OPENSSL_zalloc(mlen))) { - goto end; - } - if (!BFIBE_decrypt(mpk, c, clen, m, &mlen, sk)) { - goto end; - } - if (strlen(in) != mlen || memcmp(in, m, mlen) != 0) { - goto end; - } - - err = 0; -end: - EC_GROUP_free(group); - BFPublicParameters_free(mpk); - BFMasterSecret_free(msk); - BFPrivateKeyBlock_free(sk); - OPENSSL_free(c); - OPENSSL_free(m); - //FIXME: return err; - return 0; -} -#endif diff --git a/test/build.info b/test/build.info index 30e21848..de5e23b1 100644 --- a/test/build.info +++ b/test/build.info @@ -17,11 +17,10 @@ IF[{- !$disabled{tests} -}] dtlsv1listentest ct_test threadstest afalgtest d2i_test \ ssl_test_ctx_test ssl_test x509aux cipherlist_test asynciotest \ bioprinttest sslapitest dtlstest sslcorrupttest bio_enc_test \ - sm3test sms4test kdf2test eciestest ffxtest sm2test \ - pailliertest otptest gmapitest ec2test \ - bfibetest bb1ibetest sm9test \ + sm2test sm3test sms4test kdf2test eciestest \ + pailliertest otptest gmapitest sm9test \ sdftest skftest zuctest \ - serpenttest specktest base58test + base58test SOURCE[aborttest]=aborttest.c INCLUDE[aborttest]=../include @@ -304,10 +303,6 @@ IF[{- !$disabled{tests} -}] INCLUDE[eciestest]=../include DEPEND[eciestest]=../libcrypto - SOURCE[ffxtest]=ffxtest.c - INCLUDE[ffxtest]=../include - DEPEND[ffxtest]=../libcrypto - SOURCE[sm2test]=sm2test.c INCLUDE[sm2test]=../include DEPEND[sm2test]=../libcrypto @@ -324,18 +319,6 @@ IF[{- !$disabled{tests} -}] INCLUDE[gmapitest]=../include DEPEND[gmapitest]=../libcrypto - SOURCE[ec2test]=ec2test.c - INCLUDE[ec2test]=../include - DEPEND[ec2test]=../libcrypto - - SOURCE[bfibetest]=bfibetest.c - INCLUDE[bfibetest]=../include - DEPEND[bfibetest]=../libcrypto - - SOURCE[bb1ibetest]=bb1ibetest.c - INCLUDE[bb1ibetest]=../include - DEPEND[bb1ibetest]=../libcrypto - SOURCE[sm9test]=sm9test.c INCLUDE[sm9test]=../include DEPEND[sm9test]=../libcrypto @@ -352,14 +335,6 @@ IF[{- !$disabled{tests} -}] INCLUDE[zuctest]=../include DEPEND[zuctest]=../libcrypto - SOURCE[serpenttest]=serpenttest.c - INCLUDE[serpenttest]=../include - DEPEND[serpenttest]=../libcrypto - - SOURCE[specktest]=specktest.c - INCLUDE[specktest]=../include - DEPEND[specktest]=../libcrypto - SOURCE[base58test]=base58test.c INCLUDE[base58test]=../include DEPEND[base58test]=../libcrypto diff --git a/test/ec2test.c b/test/ec2test.c deleted file mode 100644 index 8be2662b..00000000 --- a/test/ec2test.c +++ /dev/null @@ -1,69 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include -#include "../e_os.h" - -#ifdef OPENSSL_NO_EC2 -int main(int argc, char **argv) -{ - printf("NO EC2 (EC Extensions) support\n"); - return 0; -} -#else -# include - -int main(int argc, char **argv) -{ - int err = 0; - return err; -} -#endif diff --git a/test/ffxtest.c b/test/ffxtest.c deleted file mode 100644 index 12c13aa2..00000000 --- a/test/ffxtest.c +++ /dev/null @@ -1,163 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include - -#include "../e_os.h" - -#ifdef OPENSSL_NO_FFX -int main(int argc, char **argv) -{ - printf("No FFX support\n"); - return 0; -} -#else -# include -# include -# include - -static int test_ffx(int verbose) -{ - int ret = 0; - FFX_CTX *ctx = NULL; - char *in = "99999999999999999"; - const EVP_CIPHER *cipher[] = { - EVP_sms4_ecb(), - EVP_aes_128_ecb(), - EVP_aes_256_ecb(), - }; - unsigned char key[32] = {0}; - unsigned char tweak[8] = { - 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38 - }; - char buf1[100]; - char buf2[100]; - int i; - - if (!(ctx = FFX_CTX_new())) { - ERR_print_errors_fp(stderr); - return 0; - } - - for (i = 0; i < OSSL_NELEM(cipher); i++) { - - memset(buf1, 0, sizeof(buf1)); - memset(buf2, 0, sizeof(buf2)); - - if (!FFX_init(ctx, cipher[i], key, 0)) { - ERR_print_errors_fp(stderr); - goto end; - } - if (!FFX_encrypt(ctx, in, buf1, strlen(in), tweak, sizeof(tweak))) { - ERR_print_errors_fp(stderr); - goto end; - } - if (!FFX_decrypt(ctx, buf1, buf2, strlen(in), tweak, sizeof(tweak))) { - ERR_print_errors_fp(stderr); - goto end; - } - if (strcmp(in, buf2) != 0) { - printf("error ffx-%s\n", EVP_CIPHER_name(cipher[i])); - printf("encrypt/decrypt not match\n"); - } else { - printf("test %d ok\n", i + 1); - } - - if (verbose) { - printf("ffx-%s-encrypt(\"%s\") = \"%s\"\n", - EVP_CIPHER_name(cipher[i]), in, buf1); - } - } - - ret = 1; -end: - FFX_CTX_free(ctx); - return ret; -} - -char *digits[] = { - "7992739871", -}; - -int luhn_checksums[] = { - '3', -}; - -int test_luhn(int verbose) -{ - int i; - int checksum; - - for (i = 0; i < OSSL_NELEM(digits); i++) { - checksum = FFX_compute_luhn(digits[i], strlen(digits[i])); - if (checksum != luhn_checksums[i]) { - printf("error calculating Luhn checksum on %s\n", digits[i]); - printf("got %c instead of %c\n", checksum, luhn_checksums[i]); - } else { - printf("test %d ok\n", i+1); - } - } - - return 1; -} - -int main(int argc, char **argv) -{ - int err = 0; - if (!test_ffx(1)) { - err = 1; - } - if (!test_luhn(1)) { - err = 1; - } - return err; -} -#endif diff --git a/test/recipes/05-test_serpent.t b/test/recipes/05-test_serpent.t deleted file mode 100644 index c1e46457..00000000 --- a/test/recipes/05-test_serpent.t +++ /dev/null @@ -1,12 +0,0 @@ -#! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. -# -# 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_serpent", "serpenttest", "serpent"); diff --git a/test/recipes/05-test_speck.t b/test/recipes/05-test_speck.t deleted file mode 100644 index c35584bb..00000000 --- a/test/recipes/05-test_speck.t +++ /dev/null @@ -1,12 +0,0 @@ -#! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. -# -# 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_speck", "specktest", "speck"); diff --git a/test/recipes/15-test_bb1ibe.t b/test/recipes/15-test_bb1ibe.t deleted file mode 100644 index 1e7c76d5..00000000 --- a/test/recipes/15-test_bb1ibe.t +++ /dev/null @@ -1,12 +0,0 @@ -#! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. -# -# 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_bb1ibe", "bb1ibetest", "bb1ibe"); diff --git a/test/recipes/15-test_bfibe.t b/test/recipes/15-test_bfibe.t deleted file mode 100644 index 7f8f58f9..00000000 --- a/test/recipes/15-test_bfibe.t +++ /dev/null @@ -1,12 +0,0 @@ -#! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. -# -# 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_bfibe", "bfibetest", "bfibe"); diff --git a/test/recipes/15-test_ec2.t b/test/recipes/15-test_ec2.t deleted file mode 100644 index 9bb923a7..00000000 --- a/test/recipes/15-test_ec2.t +++ /dev/null @@ -1,12 +0,0 @@ -#! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. -# -# 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_ec2", "ec2test", "ec2"); diff --git a/test/recipes/30-test_ffx.t b/test/recipes/30-test_ffx.t deleted file mode 100644 index c783d062..00000000 --- a/test/recipes/30-test_ffx.t +++ /dev/null @@ -1,12 +0,0 @@ -#! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. -# -# 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_ffx", "ffxtest", "ffx"); diff --git a/test/saftest.c b/test/saftest.c deleted file mode 100644 index be707211..00000000 --- a/test/saftest.c +++ /dev/null @@ -1,203 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2016 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include -#include "../e_os.h" - -#ifdef OPENSSL_NO_SAF -int main(int argc, char **argv) -{ - printf("NO SAF support\n"); - return 0; -} -#else -# include -# include -# include -# include - -int test_saf_base64(int verbose) -{ - int ret = SAR_UnknownErr; - /* sizeof(buf1)%3 == 1 makes base64 ended with "==" */ - unsigned char buf1[121]; - unsigned char buf2[512]; - unsigned char buf3[512]; - unsigned int len1, len2, len3; - - /* generate some random binary for testing */ - RAND_bytes(buf1, sizeof(buf1)); - memset(buf2, 0, sizeof(buf2)); - memset(buf3, 0, sizeof(buf3)); - - len1 = (unsigned int)sizeof(buf1); - len2 = (unsigned int)sizeof(buf2); - if ((ret = SAF_Base64_Encode(buf1, len1, buf2, &len2)) != SAR_Ok) { - ERR_print_errors_fp(stderr); - goto end; - } - if (verbose) { - printf("%s\n", buf2); - } - - len3 = sizeof(buf3); - if ((ret = SAF_Base64_Decode(buf2, len2, buf3, &len3)) != SAR_Ok) { - ERR_print_errors_fp(stderr); - goto end; - } - - /* check correctness */ - if (len1 == len3 && memcmp(buf1, buf3, len1) == 0) { - ret = SAR_Ok; - } else { - /* make sure to assign `ret`, or it might be set as OK by - * previous functions */ - ret = SAR_UnknownErr; - } - -end: - if (verbose) { - printf("%s %s\n", __FUNCTION__, - ret == SAR_Ok ? "passed" : "failed"); - } - - return ret; -} - -static int test_saf_cert(int verbose) -{ - return 0; -} - -static int test_saf_ec(int verbose) -{ - return 0; -} - -static int test_saf_hash(int verbose) -{ - unsigned char msg[3] = "abc"; - unsigned char pubkey[] = "FIXME"; - unsigned char id[] = "FIXME"; - unsigned char dgst[EVP_MAX_MD_SIZE]; - unsigned int dgstlen; - - dgstlen = (unsigned int)sizeof(dgst); - if (SAF_Hash(SGD_SM3, msg, sizeof(msg), NULL, 0, NULL, 0, - dgst, &dgstlen) != SAR_Ok) { - if (verbose) { - fprintf(stderr, "%s() error on test 1\n", __FUNCTION__); - } - return 0; - } - - dgstlen = (unsigned int)sizeof(dgst); - if (SAF_Hash(SGD_SM3, msg, sizeof(msg), pubkey, sizeof(pubkey), - id, sizeof(id), dgst, &dgstlen) != SAR_Ok) { - if (verbose) { - fprintf(stderr, "%s() error on test 2\n", __FUNCTION__); - } - return 0; - } - - return 1; -} - -static int test_saf_enc(int verbose) -{ - return 0; -} - -static int test_saf_mac(int verbose) -{ - return 0; -} - -static int test_saf_pkcs7(int verbose) -{ - return 0; -} - -static int test_saf_rand(int verbose) -{ - return 0; -} - -static int test_saf_rsa(int verbose) -{ - return 0; -} - -static int test_saf_sm2(int verbose) -{ - return 0; -} - -int main(int argc, char **argv) -{ - int err = 0; - int verbose = 2; - - if (SAR_Ok != test_saf_base64(verbose)) err++; - if (!test_saf_cert(verbose)) err++; - if (!test_saf_ec(verbose)) err++; - if (!test_saf_enc(verbose)) err++; - if (!test_saf_hash(verbose)) err++; - if (!test_saf_mac(verbose)) err++; - if (!test_saf_pkcs7(verbose)) err++; - if (!test_saf_rand(verbose)) err++; - if (!test_saf_rsa(verbose)) err++; - if (!test_saf_sm2(verbose)) err++; - - //FIXME: return err; - return 0; -} -#endif diff --git a/test/serpenttest.c b/test/serpenttest.c deleted file mode 100755 index 6ae8ddad..00000000 --- a/test/serpenttest.c +++ /dev/null @@ -1,174 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2017 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - - - -/* ====================== -* test unit for serpent-256 -* Odzhan -*======================== -*/ - -#include -#include -#include -#include - -#include "../e_os.h" - -#ifdef OPENSSL_NO_SERPENT -int main(int argc, char **argv) -{ - printf("No Serpent support\n"); - return 0; -} -#else - -#include -#include - -char *plain[] = -{ "3DA46FFA6F4D6F30CD258333E5A61369" }; - -char *keys[] = -{ "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F" -}; - -char *cipher[] = -{ "00112233445566778899AABBCCDDEEFF" }; - -size_t hex2bin(void *bin, char hex[]) { - size_t len, i; - int x; - uint8_t *p = (uint8_t*)bin; - - len = strlen(hex); - - if ((len & 1) != 0) { - return 0; - } - - for (i = 0; i -#include -#include -#include "../e_os.h" - -#ifdef OPENSSL_NO_SOF -int main(int argc, char **argv) -{ - printf("NO SOF support\n"); - return 0; -} -#else -# include - -int main(int argc, char **argv) -{ - int err = 0; - return err; -} -#endif diff --git a/test/specktest.c b/test/specktest.c deleted file mode 100644 index d44d2ebb..00000000 --- a/test/specktest.c +++ /dev/null @@ -1,130 +0,0 @@ -/* ==================================================================== - * Copyright (c) 2014 - 2017 The GmSSL Project. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * - * 3. All advertising materials mentioning features or use of this - * software must display the following acknowledgment: - * "This product includes software developed by the GmSSL Project. - * (http://gmssl.org/)" - * - * 4. The name "GmSSL Project" must not be used to endorse or promote - * products derived from this software without prior written - * permission. For written permission, please contact - * guanzhi1980@gmail.com. - * - * 5. Products derived from this software may not be called "GmSSL" - * nor may "GmSSL" appear in their names without prior written - * permission of the GmSSL Project. - * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: - * "This product includes software developed by the GmSSL Project - * (http://gmssl.org/)" - * - * THIS SOFTWARE IS PROVIDED BY THE GmSSL PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE GmSSL PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * ==================================================================== - */ - -#include -#include -#include - -#include "../e_os.h" - -#ifdef OPENSSL_NO_SPECK -int main(int argc, char **argv) -{ - printf("No SPECK support\n"); - return 0; -} -#else -# include -# include -# include - -int main(int argc, char** argv) -{ - int sum = 0; - uint16_t key16[4] = { 0x0100, 0x0908, 0x1110, 0x1918 }; - uint16_t plain16[2] = { 0x694c, 0x6574 }; - uint16_t enc16[2] = { 0x42f2, 0xa868 }; - - uint32_t key32[4] = { 0x03020100, 0x0b0a0908, 0x13121110, 0x1b1a1918 }; - uint32_t plain32[2] = { 0x7475432d, 0x3b726574 }; - uint32_t enc32[2] = { 0x454e028b, 0x8c6fa548 }; - - uint64_t key64[4] = { 0x0706050403020100, 0x0f0e0d0c0b0a0908, 0x1716151413121110, 0x1f1e1d1c1b1a1918 }; - uint64_t plain64[2] = { 0x202e72656e6f6f70, 0x65736f6874206e49 }; - uint64_t enc64[2] = { 0x4eeeb48d9c188f43, 0x4109010405c0f53e }; - - uint16_t buffer[2] = { 0 }; - uint16_t exp[SPECK_ROUNDS16]; - - uint32_t exp32[SPECK_ROUNDS32]; - uint32_t buffer32[2] = { 0 }; - - uint64_t exp64[SPECK_ROUNDS64]; - uint64_t buffer64[2] = { 0 }; - - - speck_set_encrypt_key16(key16, exp); - speck_encrypt16(plain16, buffer, exp); - if (memcmp(buffer, enc16, sizeof(enc16))) { - fprintf(stderr, "%s %d: speck error\n", __FILE__, __LINE__); - sum++; - } - speck_decrypt16(enc16, buffer, exp); - if (memcmp(buffer, plain16, sizeof(enc16))) { - fprintf(stderr, "%s %d: speck error\n", __FILE__, __LINE__); - sum++; - } - - speck_set_encrypt_key32(key32, exp32); - speck_encrypt32(plain32, buffer32, exp32); - if (memcmp(buffer, enc32, sizeof(enc32))) { - fprintf(stderr, "%s %d: speck error\n", __FILE__, __LINE__); - sum++; - } - speck_decrypt32(enc32, buffer32, exp32); - if (memcmp(buffer32, plain32, sizeof(enc32))) { - fprintf(stderr, "%s %d: speck error\n", __FILE__, __LINE__); - sum++; - } - - speck_set_encrypt_key64(key64, exp64); - speck_encrypt64(plain64, buffer64, exp64); - if (memcmp(buffer64, enc64, sizeof(enc64))) { - fprintf(stderr, "%s %d: speck error\n", __FILE__, __LINE__); - sum++; - } - speck_decrypt64(enc64, buffer64, exp64); - if (memcmp(buffer64, plain64, sizeof(enc64))) { - fprintf(stderr, "%s %d: speck error\n", __FILE__, __LINE__); - sum++; - } - - return sum; -} -#endif diff --git a/util/libcrypto.num b/util/libcrypto.num index e69de29b..491cda1a 100644 --- a/util/libcrypto.num +++ b/util/libcrypto.num @@ -0,0 +1,4751 @@ +PEM_write_bio_RSAPublicKey 1 1_1_0d EXIST::FUNCTION:RSA +X509_STORE_CTX_get_num_untrusted 2 1_1_0d EXIST::FUNCTION: +SHA384_Init 3 1_1_0d EXIST:!VMSVAX:FUNCTION: +OPENSSL_LH_node_stats_bio 4 1_1_0d EXIST::FUNCTION: +UI_method_set_reader 5 1_1_0d EXIST::FUNCTION:UI +CRYPTO_gcm128_new 6 1_1_0d EXIST::FUNCTION: +RSA_set_flags 7 1_1_0d EXIST::FUNCTION:RSA +ASYNC_start_job 8 1_1_0d EXIST::FUNCTION: +CMS_unsigned_get0_data_by_OBJ 9 1_1_0d EXIST::FUNCTION:CMS +EC_POINT_oct2point 10 1_1_0d EXIST::FUNCTION:EC +BIO_socket_nbio 11 1_1_0d EXIST::FUNCTION:SOCK +X509_email_free 12 1_1_0d EXIST::FUNCTION: +DSA_set0_key 13 1_1_0d EXIST::FUNCTION:DSA +X509_CRL_get_ext_by_OBJ 14 1_1_0d EXIST::FUNCTION: +d2i_PKCS7_fp 15 1_1_0d EXIST::FUNCTION:STDIO +BIO_dump_cb 16 1_1_0d EXIST::FUNCTION: +SDF_GenerateKeyPair_RSA 17 1_1_0d EXIST::FUNCTION: +SM2_compute_message_digest 18 1_1_0d EXIST::FUNCTION:SM2 +X509_STORE_CTX_new 19 1_1_0d EXIST::FUNCTION: +DH_up_ref 20 1_1_0d EXIST::FUNCTION:DH +ASN1_UTCTIME_it 21 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_UTCTIME_it 21 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +EC_KEY_set_conv_form 22 1_1_0d EXIST::FUNCTION:EC +d2i_ASN1_UINTEGER 23 1_1_0d EXIST::FUNCTION: +EVP_PKEY_type 24 1_1_0d EXIST::FUNCTION: +RSA_get0_engine 25 1_1_0d EXIST::FUNCTION:RSA +CTLOG_STORE_get0_log_by_id 26 1_1_0d EXIST::FUNCTION:CT +ASIdentifierChoice_free 27 1_1_0d EXIST::FUNCTION:RFC3779 +PEM_read_RSAPrivateKey 28 1_1_0d EXIST::FUNCTION:RSA,STDIO +EVP_camellia_256_cfb128 29 1_1_0d EXIST::FUNCTION:CAMELLIA +BN_GF2m_mod_sqr 30 1_1_0d EXIST::FUNCTION:EC2M +SCT_set1_extensions 31 1_1_0d EXIST::FUNCTION:CT +CTLOG_STORE_free 32 1_1_0d EXIST::FUNCTION:CT +DH_test_flags 33 1_1_0d EXIST::FUNCTION:DH +i2d_OCSP_SINGLERESP 34 1_1_0d EXIST::FUNCTION:OCSP +BN_set_flags 35 1_1_0d EXIST::FUNCTION: +ECIES_CIPHERTEXT_VALUE_get_ECCCIPHERBLOB 36 1_1_0d EXIST::FUNCTION:EC,ECIES,GMAPI,SKF +SHA512_Final 37 1_1_0d EXIST:!VMSVAX:FUNCTION: +OCSP_SIGNATURE_it 38 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:OCSP +OCSP_SIGNATURE_it 38 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:OCSP +i2d_CRL_DIST_POINTS 39 1_1_0d EXIST::FUNCTION: +BN_bntest_rand 40 1_1_0d EXIST::FUNCTION: +X509_STORE_get_cleanup 41 1_1_0d EXIST::FUNCTION: +EC_KEY_METHOD_get_compute_key 42 1_1_0d EXIST::FUNCTION:EC +EC_GROUP_set_curve_GF2m 43 1_1_0d EXIST::FUNCTION:EC,EC2M +X509_CRL_get0_nextUpdate 44 1_1_0d EXIST::FUNCTION: +EVP_PKEY_asn1_set_ctrl 45 1_1_0d EXIST::FUNCTION: +SDF_ImportKeyWithISK_RSA 46 1_1_0d EXIST::FUNCTION: +ENGINE_get_next 47 1_1_0d EXIST::FUNCTION:ENGINE +d2i_OCSP_RESPONSE 48 1_1_0d EXIST::FUNCTION:OCSP +EVP_MD_meth_get_init 49 1_1_0d EXIST::FUNCTION: +CMS_encrypt 50 1_1_0d EXIST::FUNCTION:CMS +TS_RESP_verify_token 51 1_1_0d EXIST::FUNCTION:TS +i2d_ASN1_ENUMERATED 52 1_1_0d EXIST::FUNCTION: +i2d_ECIESParameters 53 1_1_0d EXIST::FUNCTION:ECIES +EVP_CIPHER_meth_get_get_asn1_params 54 1_1_0d EXIST::FUNCTION: +CMS_SharedInfo_encode 55 1_1_0d EXIST::FUNCTION:CMS +ASN1_BMPSTRING_it 56 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_BMPSTRING_it 56 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_STORE_add_lookup 57 1_1_0d EXIST::FUNCTION: +ENGINE_get_last 58 1_1_0d EXIST::FUNCTION:ENGINE +ASN1_GENERALIZEDTIME_new 59 1_1_0d EXIST::FUNCTION: +i2d_OCSP_SERVICELOC 60 1_1_0d EXIST::FUNCTION:OCSP +PEM_read_EC_PUBKEY 61 1_1_0d EXIST::FUNCTION:EC,STDIO +EVP_PKEY_keygen 62 1_1_0d EXIST::FUNCTION: +X509_add1_trust_object 63 1_1_0d EXIST::FUNCTION: +PKCS12_SAFEBAG_get0_safes 64 1_1_0d EXIST::FUNCTION: +RAND_egd 65 1_1_0d EXIST::FUNCTION:EGD +OCSP_RESPID_set_by_name 66 1_1_0d EXIST::FUNCTION:OCSP +EVP_DecodeUpdate 67 1_1_0d EXIST::FUNCTION: +OCSP_RESPBYTES_it 68 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:OCSP +OCSP_RESPBYTES_it 68 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:OCSP +i2d_TS_RESP 69 1_1_0d EXIST::FUNCTION:TS +ENGINE_set_default_RSA 70 1_1_0d EXIST::FUNCTION:ENGINE +X509_VERIFY_PARAM_set_auth_level 71 1_1_0d EXIST::FUNCTION: +OCSP_ONEREQ_new 72 1_1_0d EXIST::FUNCTION:OCSP +d2i_X509_CRL_fp 73 1_1_0d EXIST::FUNCTION:STDIO +ASN1_BIT_STRING_new 74 1_1_0d EXIST::FUNCTION: +OPENSSL_memcmp 75 1_1_0d EXIST::FUNCTION: +EVP_PKEY_paramgen 76 1_1_0d EXIST::FUNCTION: +UI_method_get_opener 77 1_1_0d EXIST::FUNCTION:UI +EVP_DigestFinal_ex 78 1_1_0d EXIST::FUNCTION: +i2d_TS_RESP_fp 79 1_1_0d EXIST::FUNCTION:STDIO,TS +i2d_PUBKEY 80 1_1_0d EXIST::FUNCTION: +i2d_TS_REQ_bio 81 1_1_0d EXIST::FUNCTION:TS +PKCS7_SIGNED_free 82 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_is_sorted 83 1_1_0d EXIST::FUNCTION: +EVP_MD_meth_set_update 84 1_1_0d EXIST::FUNCTION: +i2s_ASN1_OCTET_STRING 85 1_1_0d EXIST::FUNCTION: +b2i_PublicKey 86 1_1_0d EXIST::FUNCTION:DSA +ISSUING_DIST_POINT_new 87 1_1_0d EXIST::FUNCTION: +UI_set_default_method 88 1_1_0d EXIST::FUNCTION:UI +ERR_load_ASYNC_strings 89 1_1_0d EXIST::FUNCTION: +ENGINE_set_load_privkey_function 90 1_1_0d EXIST::FUNCTION:ENGINE +ASN1_GENERALIZEDTIME_adj 91 1_1_0d EXIST::FUNCTION: +X509_subject_name_hash 92 1_1_0d EXIST::FUNCTION: +PKCS8_PRIV_KEY_INFO_free 93 1_1_0d EXIST::FUNCTION: +BN_get_params 94 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_0_9_8 +X509_REQ_verify 95 1_1_0d EXIST::FUNCTION: +X509_CINF_new 96 1_1_0d EXIST::FUNCTION: +d2i_ASN1_UNIVERSALSTRING 97 1_1_0d EXIST::FUNCTION: +BF_ecb_encrypt 98 1_1_0d EXIST::FUNCTION:BF +X509_VERIFY_PARAM_set1 99 1_1_0d EXIST::FUNCTION: +PKCS12_add_friendlyname_asc 100 1_1_0d EXIST::FUNCTION: +BN_zero_ex 101 1_1_0d EXIST::FUNCTION: +i2d_SM2_COSIGNER1_SHARE 102 1_1_0d EXIST::FUNCTION:SM2 +X509_STORE_set1_param 103 1_1_0d EXIST::FUNCTION: +EC_POINT_cmp 104 1_1_0d EXIST::FUNCTION:EC +EC_POINT_is_on_curve 105 1_1_0d EXIST::FUNCTION:EC +RSA_new_from_RSArefPrivateKey 106 1_1_0d EXIST::FUNCTION:GMAPI,RSA,SDF +BIO_meth_set_read 107 1_1_0d EXIST::FUNCTION: +EVP_ENCODE_CTX_copy 108 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_get_asn1_iv 109 1_1_0d EXIST::FUNCTION: +SKF_EnumDev 110 1_1_0d EXIST::FUNCTION:SKF +X509_TRUST_add 111 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_CTX_iv_noconst 112 1_1_0d EXIST::FUNCTION: +d2i_X509_CINF 113 1_1_0d EXIST::FUNCTION: +X509_SIG_get0 114 1_1_0d EXIST::FUNCTION: +EVP_ENCODE_CTX_num 115 1_1_0d EXIST::FUNCTION: +EVP_DigestFinal 116 1_1_0d EXIST::FUNCTION: +DIST_POINT_set_dpname 117 1_1_0d EXIST::FUNCTION: +d2i_PKCS7_bio 118 1_1_0d EXIST::FUNCTION: +X509at_get_attr_by_NID 119 1_1_0d EXIST::FUNCTION: +ASIdentifierChoice_new 120 1_1_0d EXIST::FUNCTION:RFC3779 +CRL_DIST_POINTS_it 121 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +CRL_DIST_POINTS_it 121 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +i2d_RSA_PUBKEY_fp 122 1_1_0d EXIST::FUNCTION:RSA,STDIO +BN_kronecker 123 1_1_0d EXIST::FUNCTION: +RSA_private_encrypt 124 1_1_0d EXIST::FUNCTION:RSA +EC_KEY_get0_public_key 125 1_1_0d EXIST::FUNCTION:EC +SKF_ClearSecureState 126 1_1_0d EXIST::FUNCTION:SKF +X509_VERIFY_PARAM_set1_ip_asc 127 1_1_0d EXIST::FUNCTION: +EVP_MD_CTX_new 128 1_1_0d EXIST::FUNCTION: +ASN1_TYPE_free 129 1_1_0d EXIST::FUNCTION: +d2i_ASN1_GENERALSTRING 130 1_1_0d EXIST::FUNCTION: +DES_is_weak_key 131 1_1_0d EXIST::FUNCTION:DES +EVP_get_digestbyname 132 1_1_0d EXIST::FUNCTION: +PEM_write_bio_SM9_PUBKEY 133 1_1_0d EXIST::FUNCTION:SM9 +ENGINE_get_digest 134 1_1_0d EXIST::FUNCTION:ENGINE +DH_set_default_method 135 1_1_0d EXIST::FUNCTION:DH +DSA_meth_set0_app_data 136 1_1_0d EXIST::FUNCTION:DSA +PEM_write_bio_PKCS7 137 1_1_0d EXIST::FUNCTION: +X509_LOOKUP_by_issuer_serial 138 1_1_0d EXIST::FUNCTION: +GENERAL_NAME_it 139 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +GENERAL_NAME_it 139 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +BIO_new_fp 140 1_1_0d EXIST::FUNCTION:STDIO +EC_KEY_METHOD_set_keygen 141 1_1_0d EXIST::FUNCTION:EC +ECDSA_do_sign_ex 142 1_1_0d EXIST::FUNCTION:EC +ECDSA_verify 143 1_1_0d EXIST::FUNCTION:EC +ENGINE_unregister_EC 144 1_1_0d EXIST::FUNCTION:ENGINE +PKCS7_SIGN_ENVELOPE_it 145 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_SIGN_ENVELOPE_it 145 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_VERIFY_PARAM_get_flags 146 1_1_0d EXIST::FUNCTION: +UI_get0_output_string 147 1_1_0d EXIST::FUNCTION:UI +CMS_signed_add1_attr 148 1_1_0d EXIST::FUNCTION:CMS +DES_cfb_encrypt 149 1_1_0d EXIST::FUNCTION:DES +X509_print 150 1_1_0d EXIST::FUNCTION: +d2i_ASN1_TYPE 151 1_1_0d EXIST::FUNCTION: +X509_STORE_set_verify 152 1_1_0d EXIST::FUNCTION: +TS_CONF_set_signer_cert 153 1_1_0d EXIST::FUNCTION:TS +PEM_read_ECPKParameters 154 1_1_0d EXIST::FUNCTION:EC,STDIO +X509_VERIFY_PARAM_set_hostflags 155 1_1_0d EXIST::FUNCTION: +UI_set_method 156 1_1_0d EXIST::FUNCTION:UI +i2d_DISPLAYTEXT 157 1_1_0d EXIST::FUNCTION: +PKCS5_PBKDF2_HMAC_SHA1 158 1_1_0d EXIST::FUNCTION:SHA +EC_GROUP_method_of 159 1_1_0d EXIST::FUNCTION:EC +TS_STATUS_INFO_set_status 160 1_1_0d EXIST::FUNCTION:TS +DSA_SIG_set0 161 1_1_0d EXIST::FUNCTION:DSA +X509_ALGOR_it 162 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_ALGOR_it 162 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +CONF_modules_load 163 1_1_0d EXIST::FUNCTION: +UI_method_get_flusher 164 1_1_0d EXIST::FUNCTION:UI +EVP_PKEY_meth_set_init 165 1_1_0d EXIST::FUNCTION: +d2i_EXTENDED_KEY_USAGE 166 1_1_0d EXIST::FUNCTION: +PKCS8_PRIV_KEY_INFO_new 167 1_1_0d EXIST::FUNCTION: +ZUC_generate_keystream 168 1_1_0d EXIST::FUNCTION:ZUC +TS_RESP_CTX_set_status_info_cond 169 1_1_0d EXIST::FUNCTION:TS +UI_method_get_prompt_constructor 170 1_1_0d EXIST::FUNCTION:UI +BIO_next 171 1_1_0d EXIST::FUNCTION: +PROXY_CERT_INFO_EXTENSION_free 172 1_1_0d EXIST::FUNCTION: +i2d_SXNET 173 1_1_0d EXIST::FUNCTION: +BIO_s_bio 174 1_1_0d EXIST::FUNCTION: +X509_TRUST_get0 175 1_1_0d EXIST::FUNCTION: +EC_KEY_get_method 176 1_1_0d EXIST::FUNCTION:EC +X509_NAME_digest 177 1_1_0d EXIST::FUNCTION: +X509v3_addr_subset 178 1_1_0d EXIST::FUNCTION:RFC3779 +X509at_get0_data_by_OBJ 179 1_1_0d EXIST::FUNCTION: +SHA384_Update 180 1_1_0d EXIST:!VMSVAX:FUNCTION: +ERR_load_OCSP_strings 181 1_1_0d EXIST::FUNCTION:OCSP +PKCS7_get_signed_attribute 182 1_1_0d EXIST::FUNCTION: +i2d_DSAPublicKey 183 1_1_0d EXIST::FUNCTION:DSA +DSA_print 184 1_1_0d EXIST::FUNCTION:DSA +i2d_EXTENDED_KEY_USAGE 185 1_1_0d EXIST::FUNCTION: +X509_CRL_add_ext 186 1_1_0d EXIST::FUNCTION: +err_free_strings_int 187 1_1_0d EXIST::FUNCTION: +EVP_des_ede3_wrap 188 1_1_0d EXIST::FUNCTION:DES +X509_VAL_free 189 1_1_0d EXIST::FUNCTION: +PKCS7_ISSUER_AND_SERIAL_free 190 1_1_0d EXIST::FUNCTION: +ENGINE_get_RSA 191 1_1_0d EXIST::FUNCTION:ENGINE +OCSP_SERVICELOC_it 192 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:OCSP +OCSP_SERVICELOC_it 192 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:OCSP +i2d_SCT_LIST 193 1_1_0d EXIST::FUNCTION:CT +ERR_load_OBJ_strings 194 1_1_0d EXIST::FUNCTION: +ERR_get_error 195 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_set_verify_cb 196 1_1_0d EXIST::FUNCTION: +BN_sub_word 197 1_1_0d EXIST::FUNCTION: +EVP_PKEY_CTX_get_sgd 198 1_1_0d EXIST::FUNCTION:GMAPI +EVP_DigestVerifyFinal 199 1_1_0d EXIST::FUNCTION: +ZUC_128eea3_encrypt 200 1_1_0d EXIST::FUNCTION:ZUC +EVP_sms4_xts 201 1_1_0d EXIST::FUNCTION:SMS4 +X509_signature_dump 202 1_1_0d EXIST::FUNCTION: +Camellia_encrypt 203 1_1_0d EXIST::FUNCTION:CAMELLIA +EVP_CIPHER_nid 204 1_1_0d EXIST::FUNCTION: +ASN1_PCTX_set_nm_flags 205 1_1_0d EXIST::FUNCTION: +X509_EXTENSION_it 206 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_EXTENSION_it 206 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +TS_VERIFY_CTX_set_imprint 207 1_1_0d EXIST::FUNCTION:TS +i2d_X509_REVOKED 208 1_1_0d EXIST::FUNCTION: +d2i_X509_EXTENSIONS 209 1_1_0d EXIST::FUNCTION: +ASN1_BIT_STRING_name_print 210 1_1_0d EXIST::FUNCTION: +CRYPTO_num_locks 211 1_1_0d EXIST::FUNCTION: +ECDSA_SIG_get_ECCSignature 212 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF +CMS_verify 213 1_1_0d EXIST::FUNCTION:CMS +PKCS12_verify_mac 214 1_1_0d EXIST::FUNCTION: +EC_GROUP_get_asn1_flag 215 1_1_0d EXIST::FUNCTION:EC +BIO_ADDR_rawport 216 1_1_0d EXIST::FUNCTION:SOCK +BIO_s_null 217 1_1_0d EXIST::FUNCTION: +X509_OBJECT_retrieve_match 218 1_1_0d EXIST::FUNCTION: +SM9_VerifyFinal 219 1_1_0d EXIST::FUNCTION:SM9 +X509_VERIFY_PARAM_set1_ip 220 1_1_0d EXIST::FUNCTION: +ENGINE_unregister_pkey_meths 221 1_1_0d EXIST::FUNCTION:ENGINE +i2d_SM9PrivateKey_bio 222 1_1_0d EXIST::FUNCTION:SM9 +EVP_camellia_256_ctr 223 1_1_0d EXIST::FUNCTION:CAMELLIA +OCSP_RESPDATA_free 224 1_1_0d EXIST::FUNCTION:OCSP +OCSP_RESPONSE_print 225 1_1_0d EXIST::FUNCTION:OCSP +i2d_X509_REQ_INFO 226 1_1_0d EXIST::FUNCTION: +EVP_idea_ecb 227 1_1_0d EXIST::FUNCTION:IDEA +OBJ_create 228 1_1_0d EXIST::FUNCTION: +CT_POLICY_EVAL_CTX_set_time 229 1_1_0d EXIST::FUNCTION:CT +EVP_des_cfb64 230 1_1_0d EXIST::FUNCTION:DES +BIO_f_null 231 1_1_0d EXIST::FUNCTION: +EVP_set_pw_prompt 232 1_1_0d EXIST::FUNCTION:UI +OCSP_SIGNATURE_new 233 1_1_0d EXIST::FUNCTION:OCSP +BN_BLINDING_invert 234 1_1_0d EXIST::FUNCTION: +EVP_enc_null 235 1_1_0d EXIST::FUNCTION: +i2d_ISSUING_DIST_POINT 236 1_1_0d EXIST::FUNCTION: +EVP_PKEY_get0_SM9_MASTER 237 1_1_0d EXIST::FUNCTION:SM9 +X509_VERIFY_PARAM_clear_flags 238 1_1_0d EXIST::FUNCTION: +SRP_get_default_gN 239 1_1_0d EXIST::FUNCTION:SRP +ENGINE_new 240 1_1_0d EXIST::FUNCTION:ENGINE +IPAddressRange_free 241 1_1_0d EXIST::FUNCTION:RFC3779 +d2i_PBKDF2PARAM 242 1_1_0d EXIST::FUNCTION: +BIO_meth_get_puts 243 1_1_0d EXIST::FUNCTION: +RAND_screen 244 1_1_0d EXIST:_WIN32:FUNCTION:DEPRECATEDIN_1_1_0 +EVP_PKEY_verify_init 245 1_1_0d EXIST::FUNCTION: +RSAPublicKey_dup 246 1_1_0d EXIST::FUNCTION:RSA +EVP_MD_type 247 1_1_0d EXIST::FUNCTION: +PAILLIER_size 248 1_1_0d EXIST::FUNCTION:PAILLIER +DSA_meth_get_sign_setup 249 1_1_0d EXIST::FUNCTION:DSA +X509V3_get_d2i 250 1_1_0d EXIST::FUNCTION: +EVP_camellia_128_cfb128 251 1_1_0d EXIST::FUNCTION:CAMELLIA +SMIME_read_PKCS7 252 1_1_0d EXIST::FUNCTION: +d2i_RSAPublicKey_fp 253 1_1_0d EXIST::FUNCTION:RSA,STDIO +SDF_GetPrivateKeyAccessRight 254 1_1_0d EXIST::FUNCTION: +X509_CRL_print 255 1_1_0d EXIST::FUNCTION: +X509V3_EXT_val_prn 256 1_1_0d EXIST::FUNCTION: +X509_issuer_name_hash_old 257 1_1_0d EXIST::FUNCTION:MD5 +SM9_decrypt 258 1_1_0d EXIST::FUNCTION:SM9 +TS_VERIFY_CTX_set_store 259 1_1_0d EXIST::FUNCTION:TS +CRYPTO_mem_debug_push 260 1_1_0d EXIST::FUNCTION:CRYPTO_MDEBUG +d2i_NETSCAPE_SPKAC 261 1_1_0d EXIST::FUNCTION: +ASN1_INTEGER_new 262 1_1_0d EXIST::FUNCTION: +CTLOG_new_from_base64 263 1_1_0d EXIST::FUNCTION:CT +BIO_ADDR_rawmake 264 1_1_0d EXIST::FUNCTION:SOCK +X509v3_addr_get_range 265 1_1_0d EXIST::FUNCTION:RFC3779 +EVP_des_ede3_cfb8 266 1_1_0d EXIST::FUNCTION:DES +ECPKPARAMETERS_it 267 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:EC +ECPKPARAMETERS_it 267 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:EC +OCSP_resp_get0_signature 268 1_1_0d EXIST::FUNCTION:OCSP +ASN1_INTEGER_set_uint64 269 1_1_0d EXIST::FUNCTION: +d2i_X509_ALGORS 270 1_1_0d EXIST::FUNCTION: +X509_to_X509_REQ 271 1_1_0d EXIST::FUNCTION: +OCSP_ONEREQ_get_ext_count 272 1_1_0d EXIST::FUNCTION:OCSP +X509_CRL_sort 273 1_1_0d EXIST::FUNCTION: +EXTENDED_KEY_USAGE_new 274 1_1_0d EXIST::FUNCTION: +DSAparams_print 275 1_1_0d EXIST::FUNCTION:DSA +RSA_meth_set_init 276 1_1_0d EXIST::FUNCTION:RSA +RSA_up_ref 277 1_1_0d EXIST::FUNCTION:RSA +EVP_sha224 278 1_1_0d EXIST::FUNCTION: +DISPLAYTEXT_free 279 1_1_0d EXIST::FUNCTION: +i2d_PKCS7_ENCRYPT 280 1_1_0d EXIST::FUNCTION: +o2i_SM2CiphertextValue 281 1_1_0d EXIST::FUNCTION:SM2 +BN_free 282 1_1_0d EXIST::FUNCTION: +i2d_ASN1_BIT_STRING 283 1_1_0d EXIST::FUNCTION: +CONF_get_section 284 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_block_size 285 1_1_0d EXIST::FUNCTION: +EC_GROUP_set_seed 286 1_1_0d EXIST::FUNCTION:EC +BN_CTX_free 287 1_1_0d EXIST::FUNCTION: +EC_KEY_METHOD_get_keygen 288 1_1_0d EXIST::FUNCTION:EC +EVP_aes_128_cfb8 289 1_1_0d EXIST::FUNCTION: +UI_method_get_writer 290 1_1_0d EXIST::FUNCTION:UI +CMAC_CTX_free 291 1_1_0d EXIST::FUNCTION:CMAC +EVP_sha1 292 1_1_0d EXIST::FUNCTION: +PEM_write_bio_ASN1_stream 293 1_1_0d EXIST::FUNCTION: +RSA_padding_check_PKCS1_type_2 294 1_1_0d EXIST::FUNCTION:RSA +PEM_X509_INFO_read_bio 295 1_1_0d EXIST::FUNCTION: +EVP_MD_CTX_pkey_ctx 296 1_1_0d EXIST::FUNCTION: +d2i_RSA_PUBKEY_bio 297 1_1_0d EXIST::FUNCTION:RSA +SHA256_Init 298 1_1_0d EXIST::FUNCTION: +DSA_print_fp 299 1_1_0d EXIST::FUNCTION:DSA,STDIO +DES_encrypt1 300 1_1_0d EXIST::FUNCTION:DES +ASN1_BOOLEAN_it 301 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_BOOLEAN_it 301 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_STORE_set_default_paths 302 1_1_0d EXIST::FUNCTION: +RSA_padding_add_SSLv23 303 1_1_0d EXIST::FUNCTION:RSA +ISSUING_DIST_POINT_it 304 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ISSUING_DIST_POINT_it 304 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509v3_addr_inherits 305 1_1_0d EXIST::FUNCTION:RFC3779 +ASN1_TYPE_new 306 1_1_0d EXIST::FUNCTION: +X509at_delete_attr 307 1_1_0d EXIST::FUNCTION: +PKCS7_digest_from_attributes 308 1_1_0d EXIST::FUNCTION: +PEM_write_SM9PublicKey 309 1_1_0d EXIST::FUNCTION:SM9,STDIO +X509v3_get_ext_by_critical 310 1_1_0d EXIST::FUNCTION: +SDF_LoadLibrary 311 1_1_0d EXIST::FUNCTION:SDF +X509_STORE_CTX_get0_cert 312 1_1_0d EXIST::FUNCTION: +ASN1_TYPE_unpack_sequence 313 1_1_0d EXIST::FUNCTION: +EC_GROUP_get_order 314 1_1_0d EXIST::FUNCTION:EC +BIO_set_data 315 1_1_0d EXIST::FUNCTION: +OPENSSL_hexstr2buf 316 1_1_0d EXIST::FUNCTION: +SMIME_crlf_copy 317 1_1_0d EXIST::FUNCTION: +i2d_PKCS7_SIGN_ENVELOPE 318 1_1_0d EXIST::FUNCTION: +BN_lshift1 319 1_1_0d EXIST::FUNCTION: +i2d_PublicKey 320 1_1_0d EXIST::FUNCTION: +i2d_SM2_COSIGNER1_PROOF 321 1_1_0d EXIST::FUNCTION:SM2 +i2d_PrivateKey 322 1_1_0d EXIST::FUNCTION: +sms4_encrypt_8blocks 323 1_1_0d EXIST::FUNCTION:SMS4 +TS_CONF_set_default_engine 324 1_1_0d EXIST::FUNCTION:ENGINE,TS +X509_getm_notAfter 325 1_1_0d EXIST::FUNCTION: +ECDSA_sign_ex 326 1_1_0d EXIST::FUNCTION:EC +X509_REVOKED_get0_extensions 327 1_1_0d EXIST::FUNCTION: +d2i_PKCS7_ENC_CONTENT 328 1_1_0d EXIST::FUNCTION: +ERR_load_ENGINE_strings 329 1_1_0d EXIST::FUNCTION:ENGINE +PAILLIER_check_key 330 1_1_0d EXIST::FUNCTION:PAILLIER +EVP_aes_192_cfb8 331 1_1_0d EXIST::FUNCTION: +d2i_ECDSA_SIG 332 1_1_0d EXIST::FUNCTION:EC +PKCS5_pbe2_set_scrypt 333 1_1_0d EXIST::FUNCTION:SCRYPT +ASN1_item_verify 334 1_1_0d EXIST::FUNCTION: +DH_compute_key 335 1_1_0d EXIST::FUNCTION:DH +ASN1_STRING_length 336 1_1_0d EXIST::FUNCTION: +EC_KEY_check_key 337 1_1_0d EXIST::FUNCTION:EC +i2d_ESS_CERT_ID 338 1_1_0d EXIST::FUNCTION:TS +ASN1_BIT_STRING_check 339 1_1_0d EXIST::FUNCTION: +i2d_DIRECTORYSTRING 340 1_1_0d EXIST::FUNCTION: +PEM_write_bio_SM9_MASTER_PUBKEY 341 1_1_0d EXIST::FUNCTION:SM9 +PEM_write_PaillierPublicKey 342 1_1_0d EXIST::FUNCTION:PAILLIER,STDIO +ASN1_ENUMERATED_get 343 1_1_0d EXIST::FUNCTION: +ASN1_mbstring_ncopy 344 1_1_0d EXIST::FUNCTION: +EC_KEY_get_conv_form 345 1_1_0d EXIST::FUNCTION:EC +i2d_PKCS12_bio 346 1_1_0d EXIST::FUNCTION: +SDF_ExternalEncrypt_ECC 347 1_1_0d EXIST::FUNCTION: +UI_dup_error_string 348 1_1_0d EXIST::FUNCTION:UI +EC_KEY_METHOD_get_init 349 1_1_0d EXIST::FUNCTION:EC +PAILLIER_up_ref 350 1_1_0d EXIST::FUNCTION:PAILLIER +EC_KEY_can_sign 351 1_1_0d EXIST::FUNCTION:EC +SCT_get0_extensions 352 1_1_0d EXIST::FUNCTION:CT +ERR_unload_strings 353 1_1_0d EXIST::FUNCTION: +ERR_load_DH_strings 354 1_1_0d EXIST::FUNCTION:DH +EVP_camellia_128_ofb 355 1_1_0d EXIST::FUNCTION:CAMELLIA +X509_REQ_dup 356 1_1_0d EXIST::FUNCTION: +i2d_ASN1_PRINTABLESTRING 357 1_1_0d EXIST::FUNCTION: +PEM_write_PKCS8 358 1_1_0d EXIST::FUNCTION:STDIO +RSA_padding_add_PKCS1_OAEP 359 1_1_0d EXIST::FUNCTION:RSA +SKF_GenExtRSAKey 360 1_1_0d EXIST::FUNCTION:SKF +SHA1 361 1_1_0d EXIST::FUNCTION: +ASN1_item_d2i_fp 362 1_1_0d EXIST::FUNCTION:STDIO +ENGINE_register_all_DSA 363 1_1_0d EXIST::FUNCTION:ENGINE +EVP_PKEY_meth_get_decrypt 364 1_1_0d EXIST::FUNCTION: +ASYNC_WAIT_CTX_set_wait_fd 365 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_num 366 1_1_0d EXIST::FUNCTION: +i2d_PBEPARAM 367 1_1_0d EXIST::FUNCTION: +Camellia_cfb8_encrypt 368 1_1_0d EXIST::FUNCTION:CAMELLIA +NETSCAPE_SPKI_get_pubkey 369 1_1_0d EXIST::FUNCTION: +BIO_meth_set_callback_ctrl 370 1_1_0d EXIST::FUNCTION: +WHIRLPOOL 371 1_1_0d EXIST::FUNCTION:WHIRLPOOL +OCSP_BASICRESP_get_ext_by_OBJ 372 1_1_0d EXIST::FUNCTION:OCSP +X509V3_section_free 373 1_1_0d EXIST::FUNCTION: +SRP_Verify_A_mod_N 374 1_1_0d EXIST::FUNCTION:SRP +HMAC_Update 375 1_1_0d EXIST::FUNCTION: +X509_REVOKED_add1_ext_i2d 376 1_1_0d EXIST::FUNCTION: +X509_PUBKEY_get0_param 377 1_1_0d EXIST::FUNCTION: +DES_check_key_parity 378 1_1_0d EXIST::FUNCTION:DES +i2d_PKCS8PrivateKey_nid_fp 379 1_1_0d EXIST::FUNCTION:STDIO +EVP_PKEY_get0 380 1_1_0d EXIST::FUNCTION: +PKCS7_SIGNER_INFO_new 381 1_1_0d EXIST::FUNCTION: +EC_KEY_METHOD_set_encrypt 382 1_1_0d EXIST::FUNCTION:SM2 +i2d_PUBKEY_bio 383 1_1_0d EXIST::FUNCTION: +ENGINE_ctrl 384 1_1_0d EXIST::FUNCTION:ENGINE +X509_get0_notAfter 385 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_set_derive 386 1_1_0d EXIST::FUNCTION: +TS_REQ_dup 387 1_1_0d EXIST::FUNCTION:TS +BN_lshift 388 1_1_0d EXIST::FUNCTION: +X509_get0_extensions 389 1_1_0d EXIST::FUNCTION: +RC2_encrypt 390 1_1_0d EXIST::FUNCTION:RC2 +SRP_VBASE_free 391 1_1_0d EXIST::FUNCTION:SRP +PEM_write_X509_CRL 392 1_1_0d EXIST::FUNCTION:STDIO +ASN1_item_ex_free 393 1_1_0d EXIST::FUNCTION: +ASN1_STRING_set_default_mask 394 1_1_0d EXIST::FUNCTION: +AES_options 395 1_1_0d EXIST::FUNCTION: +RSA_meth_set_pub_dec 396 1_1_0d EXIST::FUNCTION:RSA +DH_meth_set1_name 397 1_1_0d EXIST::FUNCTION:DH +DSA_get0_key 398 1_1_0d EXIST::FUNCTION:DSA +sm3_hmac_init 399 1_1_0d EXIST::FUNCTION:SM3 +EVP_CIPHER_CTX_set_cipher_data 400 1_1_0d EXIST::FUNCTION: +OBJ_create_objects 401 1_1_0d EXIST::FUNCTION: +X509_REVOKED_get0_serialNumber 402 1_1_0d EXIST::FUNCTION: +BN_get_rfc3526_prime_6144 403 1_1_0d EXIST::FUNCTION: +d2i_IPAddressRange 404 1_1_0d EXIST::FUNCTION:RFC3779 +BN_cmp 405 1_1_0d EXIST::FUNCTION: +ASN1_UNIVERSALSTRING_to_string 406 1_1_0d EXIST::FUNCTION: +ASN1_item_sign_ctx 407 1_1_0d EXIST::FUNCTION: +b2i_PublicKey_bio 408 1_1_0d EXIST::FUNCTION:DSA +CRYPTO_gcm128_tag 409 1_1_0d EXIST::FUNCTION: +OPENSSL_LH_num_items 410 1_1_0d EXIST::FUNCTION: +IPAddressOrRange_new 411 1_1_0d EXIST::FUNCTION:RFC3779 +i2d_IPAddressFamily 412 1_1_0d EXIST::FUNCTION:RFC3779 +PKCS8_decrypt 413 1_1_0d EXIST::FUNCTION: +X509_dup 414 1_1_0d EXIST::FUNCTION: +i2d_SM2CiphertextValue_fp 415 1_1_0d EXIST::FUNCTION:SM2,STDIO +X509_VERIFY_PARAM_add0_policy 416 1_1_0d EXIST::FUNCTION: +BIO_meth_set_ctrl 417 1_1_0d EXIST::FUNCTION: +EVP_MD_meth_set_ctrl 418 1_1_0d EXIST::FUNCTION: +ASN1_TIME_diff 419 1_1_0d EXIST::FUNCTION: +EC_KEY_split 420 1_1_0d EXIST::FUNCTION:EC +RSA_verify 421 1_1_0d EXIST::FUNCTION:RSA +ASN1_STRING_TABLE_get 422 1_1_0d EXIST::FUNCTION: +X509_CRL_sign_ctx 423 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_set_paramgen 424 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_get_keygen 425 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_meth_set_set_asn1_params 426 1_1_0d EXIST::FUNCTION: +DSA_meth_set_init 427 1_1_0d EXIST::FUNCTION:DSA +OPENSSL_LH_stats_bio 428 1_1_0d EXIST::FUNCTION: +IDEA_cbc_encrypt 429 1_1_0d EXIST::FUNCTION:IDEA +PEM_read_bio_DSA_PUBKEY 430 1_1_0d EXIST::FUNCTION:DSA +X509at_add1_attr_by_txt 431 1_1_0d EXIST::FUNCTION: +BIO_ptr_ctrl 432 1_1_0d EXIST::FUNCTION: +CRYPTO_free_ex_data 433 1_1_0d EXIST::FUNCTION: +X509_CRL_get_nextUpdate 434 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0 +RSA_meth_new 435 1_1_0d EXIST::FUNCTION:RSA +COMP_get_type 436 1_1_0d EXIST::FUNCTION:COMP +MD2 437 1_1_0d EXIST::FUNCTION:MD2 +ENGINE_register_pkey_asn1_meths 438 1_1_0d EXIST::FUNCTION:ENGINE +CRYPTO_free 439 1_1_0d EXIST::FUNCTION: +i2d_AUTHORITY_KEYID 440 1_1_0d EXIST::FUNCTION: +EVP_PKEY_up_ref 441 1_1_0d EXIST::FUNCTION: +X509_NAME_get_text_by_NID 442 1_1_0d EXIST::FUNCTION: +TS_TST_INFO_set_ordering 443 1_1_0d EXIST::FUNCTION:TS +SKF_PrintECCPublicKey 444 1_1_0d EXIST::FUNCTION:SKF +EVP_PKEY_get1_DH 445 1_1_0d EXIST::FUNCTION:DH +ACCESS_DESCRIPTION_free 446 1_1_0d EXIST::FUNCTION: +DSO_up_ref 447 1_1_0d EXIST::FUNCTION: +RSA_meth_get_sign 448 1_1_0d EXIST::FUNCTION:RSA +CRYPTO_gcm128_decrypt_ctr32 449 1_1_0d EXIST::FUNCTION: +i2d_PKCS7_NDEF 450 1_1_0d EXIST::FUNCTION: +RSA_get_RSAPRIVATEKEYBLOB 451 1_1_0d EXIST::FUNCTION:GMAPI,RSA,SKF +EVP_SealInit 452 1_1_0d EXIST::FUNCTION:RSA +PKCS7_ATTR_VERIFY_it 453 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_ATTR_VERIFY_it 453 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +CERTIFICATEPOLICIES_free 454 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_get_sgd 455 1_1_0d EXIST::FUNCTION:GMAPI +ASN1_digest 456 1_1_0d EXIST::FUNCTION: +X509V3_EXT_CRL_add_nconf 457 1_1_0d EXIST::FUNCTION: +TS_RESP_print_bio 458 1_1_0d EXIST::FUNCTION:TS +CRYPTO_ctr128_encrypt_ctr32 459 1_1_0d EXIST::FUNCTION: +i2d_PKEY_USAGE_PERIOD 460 1_1_0d EXIST::FUNCTION: +X509_check_email 461 1_1_0d EXIST::FUNCTION: +EC_GROUP_new_curve_GFp 462 1_1_0d EXIST::FUNCTION:EC +BIO_get_port 463 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,SOCK +DSO_global_lookup 464 1_1_0d EXIST::FUNCTION: +i2v_GENERAL_NAMES 465 1_1_0d EXIST::FUNCTION: +EVP_sms4_ocb 466 1_1_0d EXIST::FUNCTION:SMS4 +BIO_asn1_set_prefix 467 1_1_0d EXIST::FUNCTION: +EC_KEY_new_from_ECCPUBLICKEYBLOB 468 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF +EVP_PKEY_print_private 469 1_1_0d EXIST::FUNCTION: +AES_ige_encrypt 470 1_1_0d EXIST::FUNCTION: +ERR_add_error_data 471 1_1_0d EXIST::FUNCTION: +TS_REQ_set_msg_imprint 472 1_1_0d EXIST::FUNCTION:TS +CRYPTO_free_ex_index 473 1_1_0d EXIST::FUNCTION: +i2d_X509_AUX 474 1_1_0d EXIST::FUNCTION: +EVP_PKEY_set1_SM9_MASTER 475 1_1_0d EXIST::FUNCTION:SM9 +d2i_AUTHORITY_INFO_ACCESS 476 1_1_0d EXIST::FUNCTION: +PEM_write_bio_PaillierPublicKey 477 1_1_0d EXIST::FUNCTION:PAILLIER +CMS_signed_get_attr_by_NID 478 1_1_0d EXIST::FUNCTION:CMS +d2i_ASN1_SEQUENCE_ANY 479 1_1_0d EXIST::FUNCTION: +PEM_write_SM9MasterSecret 480 1_1_0d EXIST::FUNCTION:SM9,STDIO +X509V3_parse_list 481 1_1_0d EXIST::FUNCTION: +CRYPTO_nistcts128_encrypt 482 1_1_0d EXIST::FUNCTION: +SM9_MASTER_KEY_new 483 1_1_0d EXIST::FUNCTION:SM9 +SKF_DeleteFile 484 1_1_0d EXIST::FUNCTION:SKF +i2d_ASIdentifierChoice 485 1_1_0d EXIST::FUNCTION:RFC3779 +i2o_SCT_LIST 486 1_1_0d EXIST::FUNCTION:CT +CTLOG_get0_public_key 487 1_1_0d EXIST::FUNCTION:CT +X509_http_nbio 488 1_1_0d EXIST::FUNCTION:OCSP +RSAPublicKey_it 489 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RSA +RSAPublicKey_it 489 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RSA +ECDSA_SIG_set0 490 1_1_0d EXIST::FUNCTION:EC +EVP_CIPHER_meth_set_cleanup 491 1_1_0d EXIST::FUNCTION: +X509_check_ip_asc 492 1_1_0d EXIST::FUNCTION: +ASN1_NULL_it 493 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_NULL_it 493 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +EVP_CIPHER_meth_set_iv_length 494 1_1_0d EXIST::FUNCTION: +OCSP_id_issuer_cmp 495 1_1_0d EXIST::FUNCTION:OCSP +PEM_read_PKCS7 496 1_1_0d EXIST::FUNCTION:STDIO +RC4_options 497 1_1_0d EXIST::FUNCTION:RC4 +X509_PURPOSE_add 498 1_1_0d EXIST::FUNCTION: +RSA_set_default_method 499 1_1_0d EXIST::FUNCTION:RSA +X509_get_ext 500 1_1_0d EXIST::FUNCTION: +d2i_GENERAL_NAME 501 1_1_0d EXIST::FUNCTION: +ASN1_PCTX_get_str_flags 502 1_1_0d EXIST::FUNCTION: +EVP_PKEY_sign 503 1_1_0d EXIST::FUNCTION: +ASN1_BMPSTRING_free 504 1_1_0d EXIST::FUNCTION: +ECIES_CIPHERTEXT_VALUE_ciphertext_length 505 1_1_0d EXIST::FUNCTION:ECIES +EVP_PKEY_get_attr_count 506 1_1_0d EXIST::FUNCTION: +BIO_vfree 507 1_1_0d EXIST::FUNCTION: +BN_set_params 508 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_0_9_8 +BIO_hex_string 509 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_new 510 1_1_0d EXIST::FUNCTION: +i2d_OCSP_REVOKEDINFO 511 1_1_0d EXIST::FUNCTION:OCSP +PEM_read_bio_DHparams 512 1_1_0d EXIST::FUNCTION:DH +i2d_PKCS7_fp 513 1_1_0d EXIST::FUNCTION:STDIO +sms4_cbc_encrypt 514 1_1_0d EXIST::FUNCTION:SMS4 +CONF_imodule_set_flags 515 1_1_0d EXIST::FUNCTION: +d2i_X509_SIG 516 1_1_0d EXIST::FUNCTION: +BN_usub 517 1_1_0d EXIST::FUNCTION: +i2d_GENERAL_NAME 518 1_1_0d EXIST::FUNCTION: +BN_GF2m_arr2poly 519 1_1_0d EXIST::FUNCTION:EC2M +EVP_PKEY_missing_parameters 520 1_1_0d EXIST::FUNCTION: +CAST_ofb64_encrypt 521 1_1_0d EXIST::FUNCTION:CAST +X509_EXTENSION_set_data 522 1_1_0d EXIST::FUNCTION: +EVP_PKEY_sign_init 523 1_1_0d EXIST::FUNCTION: +X509_ATTRIBUTE_create 524 1_1_0d EXIST::FUNCTION: +SM9_MASTER_KEY_up_ref 525 1_1_0d EXIST::FUNCTION:SM9 +BN_RECP_CTX_new 526 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_get_check_revocation 527 1_1_0d EXIST::FUNCTION: +ASN1_BIT_STRING_set 528 1_1_0d EXIST::FUNCTION: +PKCS12_SAFEBAG_new 529 1_1_0d EXIST::FUNCTION: +OCSP_RESPID_free 530 1_1_0d EXIST::FUNCTION:OCSP +ASYNC_unblock_pause 531 1_1_0d EXIST::FUNCTION: +BIO_dgram_sctp_wait_for_dry 532 1_1_0d EXIST::FUNCTION:DGRAM,SCTP +DSO_METHOD_openssl 533 1_1_0d EXIST::FUNCTION: +X509_STORE_set_verify_cb 534 1_1_0d EXIST::FUNCTION: +i2d_PKCS12_MAC_DATA 535 1_1_0d EXIST::FUNCTION: +SDF_InternalPublicKeyOperation_RSA 536 1_1_0d EXIST::FUNCTION: +PEM_read_bio_PaillierPrivateKey 537 1_1_0d EXIST::FUNCTION:PAILLIER +PKCS12_gen_mac 538 1_1_0d EXIST::FUNCTION: +EVP_chacha20 539 1_1_0d EXIST::FUNCTION:CHACHA +DH_check_pub_key 540 1_1_0d EXIST::FUNCTION:DH +ESS_ISSUER_SERIAL_new 541 1_1_0d EXIST::FUNCTION:TS +ASN1_STRING_type 542 1_1_0d EXIST::FUNCTION: +BN_is_one 543 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_pop_free 544 1_1_0d EXIST::FUNCTION: +SM9_compute_share_key_B 545 1_1_0d EXIST::FUNCTION:SM9 +TS_CONF_set_tsa_name 546 1_1_0d EXIST::FUNCTION:TS +PKCS12_SAFEBAG_get0_p8inf 547 1_1_0d EXIST::FUNCTION: +sm3_hmac_update 548 1_1_0d EXIST::FUNCTION:SM3 +ASN1_STRING_print_ex 549 1_1_0d EXIST::FUNCTION: +OCSP_REQ_CTX_get0_mem_bio 550 1_1_0d EXIST::FUNCTION:OCSP +SM2CiphertextValue_set_ECCCipher 551 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF,SM2 +X509_STORE_get_lookup_crls 552 1_1_0d EXIST::FUNCTION: +BIO_new_dgram_sctp 553 1_1_0d EXIST::FUNCTION:DGRAM,SCTP +ESS_ISSUER_SERIAL_free 554 1_1_0d EXIST::FUNCTION:TS +PEM_write_PKCS8_PRIV_KEY_INFO 555 1_1_0d EXIST::FUNCTION:STDIO +EVP_bf_cfb64 556 1_1_0d EXIST::FUNCTION:BF +RSA_OAEP_PARAMS_free 557 1_1_0d EXIST::FUNCTION:RSA +EC_KEY_get0_private_key 558 1_1_0d EXIST::FUNCTION:EC +PEM_write_bio_PrivateKey_traditional 559 1_1_0d EXIST::FUNCTION: +EVP_MD_meth_set_init 560 1_1_0d EXIST::FUNCTION: +PEM_write_bio_SM9PublicParameters 561 1_1_0d EXIST::FUNCTION:SM9 +DSA_meth_set_verify 562 1_1_0d EXIST::FUNCTION:DSA +CRYPTO_strdup 563 1_1_0d EXIST::FUNCTION: +TS_RESP_CTX_set_certs 564 1_1_0d EXIST::FUNCTION:TS +PEM_read_CMS 565 1_1_0d EXIST::FUNCTION:CMS,STDIO +RSA_meth_get_flags 566 1_1_0d EXIST::FUNCTION:RSA +sm3_final 567 1_1_0d EXIST::FUNCTION:SM3 +OPENSSL_LH_get_down_load 568 1_1_0d EXIST::FUNCTION: +BIO_new_file 569 1_1_0d EXIST::FUNCTION: +d2i_TS_ACCURACY 570 1_1_0d EXIST::FUNCTION:TS +CBIGNUM_it 571 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +CBIGNUM_it 571 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +EVP_CIPHER_meth_set_init 572 1_1_0d EXIST::FUNCTION: +EVP_PKEY_get0_EC_KEY 573 1_1_0d EXIST::FUNCTION:EC +BN_nist_mod_384 574 1_1_0d EXIST::FUNCTION: +X509at_get_attr_by_OBJ 575 1_1_0d EXIST::FUNCTION: +EC_KEY_get_ECCPRIVATEKEYBLOB 576 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF +X509_VERIFY_PARAM_move_peername 577 1_1_0d EXIST::FUNCTION: +ENGINE_load_builtin_engines 578 1_1_0d EXIST::FUNCTION:ENGINE +PKCS12_pbe_crypt 579 1_1_0d EXIST::FUNCTION: +OCSP_ONEREQ_get_ext_by_critical 580 1_1_0d EXIST::FUNCTION:OCSP +X509_VERIFY_PARAM_set_flags 581 1_1_0d EXIST::FUNCTION: +OCSP_request_add1_nonce 582 1_1_0d EXIST::FUNCTION:OCSP +NETSCAPE_CERT_SEQUENCE_it 583 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +NETSCAPE_CERT_SEQUENCE_it 583 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +BN_GF2m_mod_exp 584 1_1_0d EXIST::FUNCTION:EC2M +CT_POLICY_EVAL_CTX_free 585 1_1_0d EXIST::FUNCTION:CT +CMS_ReceiptRequest_free 586 1_1_0d EXIST::FUNCTION:CMS +PKCS7_DIGEST_it 587 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_DIGEST_it 587 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509V3_EXT_i2d 588 1_1_0d EXIST::FUNCTION: +RSA_null_method 589 1_1_0d EXIST::FUNCTION:RSA +RSA_set0_factors 590 1_1_0d EXIST::FUNCTION:RSA +BIO_new 591 1_1_0d EXIST::FUNCTION: +d2i_EDIPARTYNAME 592 1_1_0d EXIST::FUNCTION: +RAND_bytes 593 1_1_0d EXIST::FUNCTION: +RSA_meth_set_sign 594 1_1_0d EXIST::FUNCTION:RSA +d2i_TS_RESP 595 1_1_0d EXIST::FUNCTION:TS +EVP_get_default_cipher 596 1_1_0d EXIST::FUNCTION: +ASN1_STRING_copy 597 1_1_0d EXIST::FUNCTION: +SM9PrivateKey_it 598 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:SM9 +SM9PrivateKey_it 598 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:SM9 +TS_REQ_set_cert_req 599 1_1_0d EXIST::FUNCTION:TS +DSA_meth_get_verify 600 1_1_0d EXIST::FUNCTION:DSA +EVP_PKEY_get0_DSA 601 1_1_0d EXIST::FUNCTION:DSA +PEM_read_bio_EC_PUBKEY 602 1_1_0d EXIST::FUNCTION:EC +EVP_PKEY_get0_asn1 603 1_1_0d EXIST::FUNCTION: +ENGINE_set_EC 604 1_1_0d EXIST::FUNCTION:ENGINE +DSA_meth_set_sign 605 1_1_0d EXIST::FUNCTION:DSA +RSA_public_encrypt 606 1_1_0d EXIST::FUNCTION:RSA +DH_meth_set_generate_params 607 1_1_0d EXIST::FUNCTION:DH +NCONF_WIN32 608 1_1_0d EXIST::FUNCTION: +CMS_get0_eContentType 609 1_1_0d EXIST::FUNCTION:CMS +BF_ofb64_encrypt 610 1_1_0d EXIST::FUNCTION:BF +ENGINE_set_default_DSA 611 1_1_0d EXIST::FUNCTION:ENGINE +DH_compute_key_padded 612 1_1_0d EXIST::FUNCTION:DH +BIO_meth_get_gets 613 1_1_0d EXIST::FUNCTION: +ASN1_SCTX_free 614 1_1_0d EXIST::FUNCTION: +i2d_ECCSignature 615 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF +ASN1_item_i2d_bio 616 1_1_0d EXIST::FUNCTION: +EVP_PKEY_id 617 1_1_0d EXIST::FUNCTION: +HMAC_CTX_new 618 1_1_0d EXIST::FUNCTION: +DHparams_print 619 1_1_0d EXIST::FUNCTION:DH +EVP_CIPHER_CTX_copy 620 1_1_0d EXIST::FUNCTION: +EC_KEY_METHOD_set_decrypt 621 1_1_0d EXIST::FUNCTION:SM2 +NETSCAPE_SPKI_b64_encode 622 1_1_0d EXIST::FUNCTION: +TS_STATUS_INFO_new 623 1_1_0d EXIST::FUNCTION:TS +o2i_SCT 624 1_1_0d EXIST::FUNCTION:CT +BN_mpi2bn 625 1_1_0d EXIST::FUNCTION: +X509_CRL_diff 626 1_1_0d EXIST::FUNCTION: +PAILLIER_generate_key 627 1_1_0d EXIST::FUNCTION:PAILLIER +CMS_add0_RevocationInfoChoice 628 1_1_0d EXIST::FUNCTION:CMS +X509_get0_reject_objects 629 1_1_0d EXIST::FUNCTION: +SKF_ExtRSAPubKeyOperation 630 1_1_0d EXIST::FUNCTION:SKF +OCSP_resp_get0 631 1_1_0d EXIST::FUNCTION:OCSP +RSA_get_default_method 632 1_1_0d EXIST::FUNCTION:RSA +DH_set_ex_data 633 1_1_0d EXIST::FUNCTION:DH +i2o_ECPublicKey 634 1_1_0d EXIST::FUNCTION:EC +ASN1_BIT_STRING_set_asc 635 1_1_0d EXIST::FUNCTION: +PEM_read_bio_PKCS8 636 1_1_0d EXIST::FUNCTION: +X509V3_EXT_add_nconf_sk 637 1_1_0d EXIST::FUNCTION: +TS_TST_INFO_dup 638 1_1_0d EXIST::FUNCTION:TS +PKCS7_encrypt 639 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_get_current_cert 640 1_1_0d EXIST::FUNCTION: +SDF_HashUpdate 641 1_1_0d EXIST::FUNCTION: +SM2CiphertextValue_set_ECCCIPHERBLOB 642 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF,SM2 +X509_get0_tbs_sigalg 643 1_1_0d EXIST::FUNCTION: +TS_REQ_print_bio 644 1_1_0d EXIST::FUNCTION:TS +EC_POINT_get_affine_coordinates_GFp 645 1_1_0d EXIST::FUNCTION:EC +ASN1_UTCTIME_free 646 1_1_0d EXIST::FUNCTION: +DES_ofb_encrypt 647 1_1_0d EXIST::FUNCTION:DES +X509_STORE_CTX_get1_certs 648 1_1_0d EXIST::FUNCTION: +CONF_get_number 649 1_1_0d EXIST::FUNCTION: +EVP_idea_cbc 650 1_1_0d EXIST::FUNCTION:IDEA +BN_X931_generate_Xpq 651 1_1_0d EXIST::FUNCTION: +OCSP_CERTID_it 652 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:OCSP +OCSP_CERTID_it 652 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:OCSP +RSA_verify_PKCS1_PSS 653 1_1_0d EXIST::FUNCTION:RSA +RSA_verify_PKCS1_PSS_mgf1 654 1_1_0d EXIST::FUNCTION:RSA +X509_set_proxy_flag 655 1_1_0d EXIST::FUNCTION: +ASN1_BIT_STRING_set_bit 656 1_1_0d EXIST::FUNCTION: +CMS_RecipientInfo_kari_get0_ctx 657 1_1_0d EXIST::FUNCTION:CMS +SHA224 658 1_1_0d EXIST::FUNCTION: +X509_CRL_up_ref 659 1_1_0d EXIST::FUNCTION: +CMS_add_smimecap 660 1_1_0d EXIST::FUNCTION:CMS +SCT_set_source 661 1_1_0d EXIST::FUNCTION:CT +CRYPTO_get_ex_new_index 662 1_1_0d EXIST::FUNCTION: +NETSCAPE_SPKAC_it 663 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +NETSCAPE_SPKAC_it 663 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +EVP_camellia_256_ofb 664 1_1_0d EXIST::FUNCTION:CAMELLIA +TS_RESP_CTX_free 665 1_1_0d EXIST::FUNCTION:TS +ASN1_ENUMERATED_to_BN 666 1_1_0d EXIST::FUNCTION: +d2i_X509_PUBKEY 667 1_1_0d EXIST::FUNCTION: +TS_VERIFY_CTX_set_flags 668 1_1_0d EXIST::FUNCTION:TS +X509_STORE_get_get_crl 669 1_1_0d EXIST::FUNCTION: +OCSP_REQ_CTX_add1_header 670 1_1_0d EXIST::FUNCTION:OCSP +EC_POINT_free 671 1_1_0d EXIST::FUNCTION:EC +PKCS7_add_recipient_info 672 1_1_0d EXIST::FUNCTION: +UI_process 673 1_1_0d EXIST::FUNCTION:UI +EVP_MD_meth_set_flags 674 1_1_0d EXIST::FUNCTION: +BN_get0_nist_prime_256 675 1_1_0d EXIST::FUNCTION: +SM2_KAP_compute_key 676 1_1_0d EXIST::FUNCTION:SM2 +OCSP_request_onereq_count 677 1_1_0d EXIST::FUNCTION:OCSP +ASN1_ENUMERATED_new 678 1_1_0d EXIST::FUNCTION: +SCT_get_timestamp 679 1_1_0d EXIST::FUNCTION:CT +TS_REQ_set_policy_id 680 1_1_0d EXIST::FUNCTION:TS +OPENSSL_init 681 1_1_0d EXIST::FUNCTION: +sm3_init 682 1_1_0d EXIST::FUNCTION:SM3 +SKF_GenerateAgreementDataWithECC 683 1_1_0d EXIST::FUNCTION:SKF +sms4_ctr128_encrypt 684 1_1_0d EXIST::FUNCTION:SMS4 +BIO_sock_info 685 1_1_0d EXIST::FUNCTION:SOCK +OCSP_REQUEST_get_ext_by_OBJ 686 1_1_0d EXIST::FUNCTION:OCSP +i2d_ASN1_BMPSTRING 687 1_1_0d EXIST::FUNCTION: +BN_mod_exp_simple 688 1_1_0d EXIST::FUNCTION: +OPENSSL_LH_retrieve 689 1_1_0d EXIST::FUNCTION: +d2i_SM2_COSIGNER2_SHARE 690 1_1_0d EXIST::FUNCTION:SM2 +CRYPTO_ocb128_new 691 1_1_0d EXIST::FUNCTION:OCB +ASN1_OCTET_STRING_it 692 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_OCTET_STRING_it 692 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509v3_addr_canonize 693 1_1_0d EXIST::FUNCTION:RFC3779 +X509V3_EXT_conf 694 1_1_0d EXIST::FUNCTION: +CRYPTO_gcm128_release 695 1_1_0d EXIST::FUNCTION: +X509_set_serialNumber 696 1_1_0d EXIST::FUNCTION: +d2i_ASN1_OBJECT 697 1_1_0d EXIST::FUNCTION: +BN_CTX_new 698 1_1_0d EXIST::FUNCTION: +d2i_DSAPrivateKey_fp 699 1_1_0d EXIST::FUNCTION:DSA,STDIO +TS_RESP_CTX_set_status_info 700 1_1_0d EXIST::FUNCTION:TS +X509_STORE_up_ref 701 1_1_0d EXIST::FUNCTION: +SMIME_read_CMS 702 1_1_0d EXIST::FUNCTION:CMS +UI_get_default_method 703 1_1_0d EXIST::FUNCTION:UI +EC_KEY_is_sm2p256v1 704 1_1_0d EXIST::FUNCTION:SM2 +TS_RESP_CTX_get_tst_info 705 1_1_0d EXIST::FUNCTION:TS +EVP_sms4_cfb8 706 1_1_0d EXIST::FUNCTION:SMS4 +SKF_DecryptFinal 707 1_1_0d EXIST::FUNCTION:SKF +i2d_PaillierPrivateKey 708 1_1_0d EXIST::FUNCTION:PAILLIER +ASN1_TIME_to_generalizedtime 709 1_1_0d EXIST::FUNCTION: +ASYNC_get_current_job 710 1_1_0d EXIST::FUNCTION: +ERR_load_RAND_strings 711 1_1_0d EXIST::FUNCTION: +ASN1_ENUMERATED_set 712 1_1_0d EXIST::FUNCTION: +SM2_COSIGNER2_PROOF_free 713 1_1_0d EXIST::FUNCTION:SM2 +DH_meth_dup 714 1_1_0d EXIST::FUNCTION:DH +EVP_MD_meth_get_flags 715 1_1_0d EXIST::FUNCTION: +EVP_EncryptFinal_ex 716 1_1_0d EXIST::FUNCTION: +d2i_PROXY_CERT_INFO_EXTENSION 717 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_get0_current_issuer 718 1_1_0d EXIST::FUNCTION: +ECPARAMETERS_it 719 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:EC +ECPARAMETERS_it 719 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:EC +o2i_SCT_LIST 720 1_1_0d EXIST::FUNCTION:CT +EVP_CIPHER_iv_length 721 1_1_0d EXIST::FUNCTION: +EC_GROUP_new_curve_GF2m 722 1_1_0d EXIST::FUNCTION:EC,EC2M +i2d_PKCS7_RECIP_INFO 723 1_1_0d EXIST::FUNCTION: +d2i_ECDSA_SIG_fp 724 1_1_0d EXIST::FUNCTION:EC,STDIO +CMAC_resume 725 1_1_0d EXIST::FUNCTION:CMAC +X509_STORE_CTX_get_lookup_crls 726 1_1_0d EXIST::FUNCTION: +CAST_decrypt 727 1_1_0d EXIST::FUNCTION:CAST +ASN1_STRING_free 728 1_1_0d EXIST::FUNCTION: +ECPKParameters_print 729 1_1_0d EXIST::FUNCTION:EC +EVP_MD_do_all_sorted 730 1_1_0d EXIST::FUNCTION: +TS_TST_INFO_get_ext_by_critical 731 1_1_0d EXIST::FUNCTION:TS +ASN1_STRING_data 732 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0 +EVP_PKEY_decrypt 733 1_1_0d EXIST::FUNCTION: +CRYPTO_mem_ctrl 734 1_1_0d EXIST::FUNCTION: +EVP_aes_128_cfb128 735 1_1_0d EXIST::FUNCTION: +ASN1_TIME_free 736 1_1_0d EXIST::FUNCTION: +ASN1_IA5STRING_free 737 1_1_0d EXIST::FUNCTION: +DSAparams_dup 738 1_1_0d EXIST::FUNCTION:DSA +CMS_decrypt 739 1_1_0d EXIST::FUNCTION:CMS +ENGINE_get_flags 740 1_1_0d EXIST::FUNCTION:ENGINE +d2i_PUBKEY 741 1_1_0d EXIST::FUNCTION: +i2d_ASN1_SEQUENCE_ANY 742 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_set_keygen 743 1_1_0d EXIST::FUNCTION: +ASIdOrRange_new 744 1_1_0d EXIST::FUNCTION:RFC3779 +i2d_DSA_PUBKEY_bio 745 1_1_0d EXIST::FUNCTION:DSA +EVP_PKEY_add1_attr_by_NID 746 1_1_0d EXIST::FUNCTION: +SCT_get0_signature 747 1_1_0d EXIST::FUNCTION:CT +DES_cfb64_encrypt 748 1_1_0d EXIST::FUNCTION:DES +CMS_add1_crl 749 1_1_0d EXIST::FUNCTION:CMS +CT_POLICY_EVAL_CTX_get0_cert 750 1_1_0d EXIST::FUNCTION:CT +AES_wrap_key 751 1_1_0d EXIST::FUNCTION: +BN_GF2m_mod_div_arr 752 1_1_0d EXIST::FUNCTION:EC2M +UI_dup_verify_string 753 1_1_0d EXIST::FUNCTION:UI +TS_VERIFY_CTX_add_flags 754 1_1_0d EXIST::FUNCTION:TS +CMS_ReceiptRequest_get0_values 755 1_1_0d EXIST::FUNCTION:CMS +X509_NAME_print 756 1_1_0d EXIST::FUNCTION: +X509_print_fp 757 1_1_0d EXIST::FUNCTION:STDIO +CT_POLICY_EVAL_CTX_set_shared_CTLOG_STORE 758 1_1_0d EXIST::FUNCTION:CT +SRP_Calc_client_key 759 1_1_0d EXIST::FUNCTION:SRP +d2i_SM9MasterSecret_fp 760 1_1_0d EXIST::FUNCTION:SM9,STDIO +BIO_f_nbio_test 761 1_1_0d EXIST::FUNCTION: +BIO_meth_set_create 762 1_1_0d EXIST::FUNCTION: +i2d_X509_VAL 763 1_1_0d EXIST::FUNCTION: +i2d_RSAPublicKey_fp 764 1_1_0d EXIST::FUNCTION:RSA,STDIO +SKF_CreateFile 765 1_1_0d EXIST::FUNCTION:SKF +CMS_add0_CertificateChoices 766 1_1_0d EXIST::FUNCTION:CMS +OBJ_obj2nid 767 1_1_0d EXIST::FUNCTION: +X509V3_EXT_add_nconf 768 1_1_0d EXIST::FUNCTION: +RSA_padding_add_PKCS1_type_2 769 1_1_0d EXIST::FUNCTION:RSA +i2d_NETSCAPE_SPKI 770 1_1_0d EXIST::FUNCTION: +OCSP_SINGLERESP_new 771 1_1_0d EXIST::FUNCTION:OCSP +SM9PrivateKey_get_public_key 772 1_1_0d EXIST::FUNCTION:SM9 +CONF_load_fp 773 1_1_0d EXIST::FUNCTION:STDIO +X509_set_pubkey 774 1_1_0d EXIST::FUNCTION: +CMAC_CTX_copy 775 1_1_0d EXIST::FUNCTION:CMAC +BIO_new_mem_buf 776 1_1_0d EXIST::FUNCTION: +SDF_HashFinal 777 1_1_0d EXIST::FUNCTION: +TS_VERIFY_CTX_cleanup 778 1_1_0d EXIST::FUNCTION:TS +EVP_camellia_128_ecb 779 1_1_0d EXIST::FUNCTION:CAMELLIA +SM2_COSIGNER2_SHARE_free 780 1_1_0d EXIST::FUNCTION:SM2 +GENERAL_NAME_dup 781 1_1_0d EXIST::FUNCTION: +d2i_TS_REQ_bio 782 1_1_0d EXIST::FUNCTION:TS +ERR_print_errors 783 1_1_0d EXIST::FUNCTION: +CMAC_Update 784 1_1_0d EXIST::FUNCTION:CMAC +SDF_OpenSession 785 1_1_0d EXIST::FUNCTION: +PEM_write_bio_X509_AUX 786 1_1_0d EXIST::FUNCTION: +UI_method_get_reader 787 1_1_0d EXIST::FUNCTION:UI +ENGINE_register_all_RAND 788 1_1_0d EXIST::FUNCTION:ENGINE +WHIRLPOOL_Update 789 1_1_0d EXIST::FUNCTION:WHIRLPOOL +X509_CRL_get0_lastUpdate 790 1_1_0d EXIST::FUNCTION: +CMS_dataFinal 791 1_1_0d EXIST::FUNCTION:CMS +OBJ_length 792 1_1_0d EXIST::FUNCTION: +X509_LOOKUP_new 793 1_1_0d EXIST::FUNCTION: +BN_GENCB_get_arg 794 1_1_0d EXIST::FUNCTION: +d2i_ASN1_BIT_STRING 795 1_1_0d EXIST::FUNCTION: +ASYNC_WAIT_CTX_get_changed_fds 796 1_1_0d EXIST::FUNCTION: +RSA_meth_get_verify 797 1_1_0d EXIST::FUNCTION:RSA +PEM_write_bio_RSAPrivateKey 798 1_1_0d EXIST::FUNCTION:RSA +X509_getm_notBefore 799 1_1_0d EXIST::FUNCTION: +ENGINE_get_default_RAND 800 1_1_0d EXIST::FUNCTION:ENGINE +RSA_get_RSArefPublicKey 801 1_1_0d EXIST::FUNCTION:GMAPI,RSA,SDF +PKEY_USAGE_PERIOD_it 802 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKEY_USAGE_PERIOD_it 802 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +i2v_GENERAL_NAME 803 1_1_0d EXIST::FUNCTION: +EVP_rc5_32_12_16_ecb 804 1_1_0d EXIST::FUNCTION:RC5 +RIPEMD160_Final 805 1_1_0d EXIST::FUNCTION:RMD160 +CRYPTO_new_ex_data 806 1_1_0d EXIST::FUNCTION: +EVP_MD_CTX_clear_flags 807 1_1_0d EXIST::FUNCTION: +ECDSA_SIG_free 808 1_1_0d EXIST::FUNCTION:EC +DH_meth_get0_name 809 1_1_0d EXIST::FUNCTION:DH +ERR_load_ERR_strings 810 1_1_0d EXIST::FUNCTION: +DES_string_to_key 811 1_1_0d EXIST::FUNCTION:DES +CRYPTO_gcm128_aad 812 1_1_0d EXIST::FUNCTION: +CONF_imodule_get_module 813 1_1_0d EXIST::FUNCTION: +i2b_PrivateKey_bio 814 1_1_0d EXIST::FUNCTION:DSA +SKF_GenerateKeyWithECC 815 1_1_0d EXIST::FUNCTION:SKF +RC5_32_encrypt 816 1_1_0d EXIST::FUNCTION:RC5 +ENGINE_load_ssl_client_cert 817 1_1_0d EXIST::FUNCTION:ENGINE +PEM_write_bio_X509_CRL 818 1_1_0d EXIST::FUNCTION: +UI_get_result_maxsize 819 1_1_0d EXIST::FUNCTION:UI +X509_CRL_get0_by_serial 820 1_1_0d EXIST::FUNCTION: +ERR_load_CMS_strings 821 1_1_0d EXIST::FUNCTION:CMS +X509_aux_print 822 1_1_0d EXIST::FUNCTION: +X509_CRL_set1_lastUpdate 823 1_1_0d EXIST::FUNCTION: +ECIES_CIPHERTEXT_VALUE_set_ECCCipher 824 1_1_0d EXIST::FUNCTION:EC,ECIES,GMAPI,SDF +ASN1_UTF8STRING_new 825 1_1_0d EXIST::FUNCTION: +MD5_Init 826 1_1_0d EXIST::FUNCTION:MD5 +EC_GROUP_check 827 1_1_0d EXIST::FUNCTION:EC +IPAddressFamily_free 828 1_1_0d EXIST::FUNCTION:RFC3779 +ERR_error_string_n 829 1_1_0d EXIST::FUNCTION: +EVP_PKEY_CTX_ctrl 830 1_1_0d EXIST::FUNCTION: +ERR_load_BIO_strings 831 1_1_0d EXIST::FUNCTION: +EVP_get_cipherbysgd 832 1_1_0d EXIST::FUNCTION:GMAPI +EC_KEY_get_ECCrefPublicKey 833 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF +i2d_ASN1_OCTET_STRING 834 1_1_0d EXIST::FUNCTION: +EVP_sms4_ecb 835 1_1_0d EXIST::FUNCTION:SMS4 +PKCS12_SAFEBAGS_it 836 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS12_SAFEBAGS_it 836 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +DH_meth_set_init 837 1_1_0d EXIST::FUNCTION:DH +RSA_meth_get0_app_data 838 1_1_0d EXIST::FUNCTION:RSA +EC_GFp_nistp521_method 839 1_1_0d EXIST::FUNCTION:EC,EC_NISTP_64_GCC_128 +BIO_s_datagram_sctp 840 1_1_0d EXIST::FUNCTION:DGRAM,SCTP +X509_NAME_get_index_by_NID 841 1_1_0d EXIST::FUNCTION: +X509_STORE_get_check_crl 842 1_1_0d EXIST::FUNCTION: +X509_ATTRIBUTE_it 843 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_ATTRIBUTE_it 843 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +EVP_CIPHER_CTX_get_cipher_data 844 1_1_0d EXIST::FUNCTION: +RSA_padding_add_PKCS1_PSS_mgf1 845 1_1_0d EXIST::FUNCTION:RSA +BN_X931_generate_prime_ex 846 1_1_0d EXIST::FUNCTION: +EC_curve_nid2nist 847 1_1_0d EXIST::FUNCTION:EC +X509v3_addr_validate_path 848 1_1_0d EXIST::FUNCTION:RFC3779 +SHA384 849 1_1_0d EXIST:!VMSVAX:FUNCTION: +ENGINE_get_first 850 1_1_0d EXIST::FUNCTION:ENGINE +DIRECTORYSTRING_new 851 1_1_0d EXIST::FUNCTION: +X509_STORE_new 852 1_1_0d EXIST::FUNCTION: +DSA_meth_get_mod_exp 853 1_1_0d EXIST::FUNCTION:DSA +X509_check_ca 854 1_1_0d EXIST::FUNCTION: +PKCS7_RECIP_INFO_it 855 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_RECIP_INFO_it 855 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +i2d_X509_PUBKEY 856 1_1_0d EXIST::FUNCTION: +EVP_MD_block_size 857 1_1_0d EXIST::FUNCTION: +X509V3_set_nconf 858 1_1_0d EXIST::FUNCTION: +PKCS7_add1_attrib_digest 859 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_get_init 860 1_1_0d EXIST::FUNCTION: +SKF_ECCDecrypt 861 1_1_0d EXIST::FUNCTION:SKF +EVP_PKEY_meth_set_decrypt 862 1_1_0d EXIST::FUNCTION: +TS_RESP_CTX_add_flags 863 1_1_0d EXIST::FUNCTION:TS +EC_GROUP_copy 864 1_1_0d EXIST::FUNCTION:EC +BN_BLINDING_lock 865 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_meth_set_impl_ctx_size 866 1_1_0d EXIST::FUNCTION: +X509_OBJECT_get_type 867 1_1_0d EXIST::FUNCTION: +d2i_PBE2PARAM 868 1_1_0d EXIST::FUNCTION: +d2i_TS_MSG_IMPRINT 869 1_1_0d EXIST::FUNCTION:TS +i2d_OCSP_REQUEST 870 1_1_0d EXIST::FUNCTION:OCSP +RSA_meth_get_priv_enc 871 1_1_0d EXIST::FUNCTION:RSA +SM9_generate_key_exchange 872 1_1_0d EXIST::FUNCTION:SM9 +RSA_meth_set_bn_mod_exp 873 1_1_0d EXIST::FUNCTION:RSA +NETSCAPE_SPKI_print 874 1_1_0d EXIST::FUNCTION: +X509_REVOKED_delete_ext 875 1_1_0d EXIST::FUNCTION: +EVP_read_pw_string 876 1_1_0d EXIST::FUNCTION:UI +EVP_sms4_wrap 877 1_1_0d EXIST::FUNCTION:SMS4 +BIO_ctrl_get_read_request 878 1_1_0d EXIST::FUNCTION: +d2i_ASN1_BMPSTRING 879 1_1_0d EXIST::FUNCTION: +MD4 880 1_1_0d EXIST::FUNCTION:MD4 +EC_KEY_priv2oct 881 1_1_0d EXIST::FUNCTION:EC +X509v3_addr_is_canonical 882 1_1_0d EXIST::FUNCTION:RFC3779 +DSA_new 883 1_1_0d EXIST::FUNCTION:DSA +X509_STORE_CTX_get_ex_data 884 1_1_0d EXIST::FUNCTION: +RC5_32_decrypt 885 1_1_0d EXIST::FUNCTION:RC5 +DH_get_2048_256 886 1_1_0d EXIST::FUNCTION:DH +EVP_PKEY_asn1_set_public 887 1_1_0d EXIST::FUNCTION: +SKF_ExtECCEncrypt 888 1_1_0d EXIST::FUNCTION:SKF +EVP_aes_128_cbc_hmac_sha256 889 1_1_0d EXIST::FUNCTION: +X509v3_get_ext_by_OBJ 890 1_1_0d EXIST::FUNCTION: +BN_clear_free 891 1_1_0d EXIST::FUNCTION: +BN_GF2m_mod_solve_quad_arr 892 1_1_0d EXIST::FUNCTION:EC2M +X509_STORE_CTX_set_error 893 1_1_0d EXIST::FUNCTION: +OCSP_ONEREQ_get_ext 894 1_1_0d EXIST::FUNCTION:OCSP +i2d_OCSP_RESPBYTES 895 1_1_0d EXIST::FUNCTION:OCSP +X509_gmtime_adj 896 1_1_0d EXIST::FUNCTION: +ZUC_128eia3_final 897 1_1_0d EXIST::FUNCTION:ZUC +X509_REQ_print 898 1_1_0d EXIST::FUNCTION: +DH_meth_set_generate_key 899 1_1_0d EXIST::FUNCTION:DH +TS_TST_INFO_get_ext_count 900 1_1_0d EXIST::FUNCTION:TS +d2i_SM2CiphertextValue_bio 901 1_1_0d EXIST::FUNCTION:SM2 +PKCS5_PBE_add 902 1_1_0d EXIST::FUNCTION: +EVP_read_pw_string_min 903 1_1_0d EXIST::FUNCTION:UI +ASN1_UTCTIME_set_string 904 1_1_0d EXIST::FUNCTION: +OCSP_SINGLERESP_free 905 1_1_0d EXIST::FUNCTION:OCSP +d2i_PrivateKey 906 1_1_0d EXIST::FUNCTION: +PKCS7_set_content 907 1_1_0d EXIST::FUNCTION: +DH_get0_pqg 908 1_1_0d EXIST::FUNCTION:DH +SDF_ExternalPublicKeyOperation_RSA 909 1_1_0d EXIST::FUNCTION: +X509_NAME_ENTRY_create_by_NID 910 1_1_0d EXIST::FUNCTION: +OCSP_RESPID_new 911 1_1_0d EXIST::FUNCTION:OCSP +X509_STORE_CTX_set_verify 912 1_1_0d EXIST::FUNCTION: +ASYNC_cleanup_thread 913 1_1_0d EXIST::FUNCTION: +Camellia_ctr128_encrypt 914 1_1_0d EXIST::FUNCTION:CAMELLIA +ECDSA_SIG_get_ECCSIGNATUREBLOB 915 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF +ECIES_CIPHERTEXT_VALUE_it 916 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:ECIES +ECIES_CIPHERTEXT_VALUE_it 916 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:ECIES +BIO_set_retry_reason 917 1_1_0d EXIST::FUNCTION: +DES_set_key_checked 918 1_1_0d EXIST::FUNCTION:DES +OCSP_resp_get0_id 919 1_1_0d EXIST::FUNCTION:OCSP +i2d_PKCS7_bio 920 1_1_0d EXIST::FUNCTION: +ENGINE_get_ciphers 921 1_1_0d EXIST::FUNCTION:ENGINE +PKCS12_key_gen_uni 922 1_1_0d EXIST::FUNCTION: +RSA_private_decrypt 923 1_1_0d EXIST::FUNCTION:RSA +EVP_aes_256_ocb 924 1_1_0d EXIST::FUNCTION:OCB +DH_get0_key 925 1_1_0d EXIST::FUNCTION:DH +EC_POINT_new 926 1_1_0d EXIST::FUNCTION:EC +X509_PURPOSE_get_by_sname 927 1_1_0d EXIST::FUNCTION: +X509_set_issuer_name 928 1_1_0d EXIST::FUNCTION: +ZUC_set_key 929 1_1_0d EXIST::FUNCTION:ZUC +EC_KEY_GmSSL 930 1_1_0d EXIST::FUNCTION:SM2 +SEED_encrypt 931 1_1_0d EXIST::FUNCTION:SEED +IDEA_options 932 1_1_0d EXIST::FUNCTION:IDEA +i2d_PKCS8_bio 933 1_1_0d EXIST::FUNCTION: +BN_rand 934 1_1_0d EXIST::FUNCTION: +OCSP_REVOKEDINFO_it 935 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:OCSP +OCSP_REVOKEDINFO_it 935 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:OCSP +X509v3_asid_add_inherit 936 1_1_0d EXIST::FUNCTION:RFC3779 +X509_REQ_set_version 937 1_1_0d EXIST::FUNCTION: +X509_CRL_get_ext_by_NID 938 1_1_0d EXIST::FUNCTION: +X509_STORE_set_depth 939 1_1_0d EXIST::FUNCTION: +DSA_SIG_free 940 1_1_0d EXIST::FUNCTION:DSA +BIO_asn1_get_suffix 941 1_1_0d EXIST::FUNCTION: +SKF_OpenDevice 942 1_1_0d EXIST::FUNCTION:SKF +ASN1_TYPE_set1 943 1_1_0d EXIST::FUNCTION: +EVP_bf_ecb 944 1_1_0d EXIST::FUNCTION:BF +CMS_data 945 1_1_0d EXIST::FUNCTION:CMS +TS_RESP_CTX_set_time_cb 946 1_1_0d EXIST::FUNCTION:TS +BN_ucmp 947 1_1_0d EXIST::FUNCTION: +OCSP_crlID_new 948 1_1_0d EXIST:!VMS:FUNCTION:OCSP +OCSP_crlID2_new 948 1_1_0d EXIST:VMS:FUNCTION:OCSP +ENGINE_get_pkey_asn1_meth_engine 949 1_1_0d EXIST::FUNCTION:ENGINE +CRYPTO_THREAD_lock_free 950 1_1_0d EXIST::FUNCTION: +d2i_RSAPrivateKey_fp 951 1_1_0d EXIST::FUNCTION:RSA,STDIO +X509_OBJECT_get0_X509_CRL 952 1_1_0d EXIST::FUNCTION: +DES_ede3_ofb64_encrypt 953 1_1_0d EXIST::FUNCTION:DES +CRYPTO_mem_leaks 954 1_1_0d EXIST::FUNCTION:CRYPTO_MDEBUG +BIO_lookup 955 1_1_0d EXIST::FUNCTION:SOCK +ERR_remove_state 956 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_0_0 +PKCS7_final 957 1_1_0d EXIST::FUNCTION: +EVP_MD_CTX_md_data 958 1_1_0d EXIST::FUNCTION: +SRP_user_pwd_free 959 1_1_0d EXIST::FUNCTION:SRP +i2d_TS_ACCURACY 960 1_1_0d EXIST::FUNCTION:TS +BIO_get_shutdown 961 1_1_0d EXIST::FUNCTION: +i2d_RSA_OAEP_PARAMS 962 1_1_0d EXIST::FUNCTION:RSA +OCSP_BASICRESP_free 963 1_1_0d EXIST::FUNCTION:OCSP +BIO_set_flags 964 1_1_0d EXIST::FUNCTION: +EVP_MD_meth_get_cleanup 965 1_1_0d EXIST::FUNCTION: +d2i_ASRange 966 1_1_0d EXIST::FUNCTION:RFC3779 +i2d_PKCS8PrivateKeyInfo_bio 967 1_1_0d EXIST::FUNCTION: +BN_mod_exp_recp 968 1_1_0d EXIST::FUNCTION: +DSA_set_method 969 1_1_0d EXIST::FUNCTION:DSA +CONF_imodule_set_usr_data 970 1_1_0d EXIST::FUNCTION: +d2i_SM9MasterSecret_bio 971 1_1_0d EXIST::FUNCTION:SM9 +PKCS7_SIGNED_new 972 1_1_0d EXIST::FUNCTION: +X509_VERIFY_PARAM_inherit 973 1_1_0d EXIST::FUNCTION: +ENGINE_get_prev 974 1_1_0d EXIST::FUNCTION:ENGINE +ENGINE_set_default_pkey_meths 975 1_1_0d EXIST::FUNCTION:ENGINE +X509at_get_attr 976 1_1_0d EXIST::FUNCTION: +X509_PURPOSE_cleanup 977 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_set_copy 978 1_1_0d EXIST::FUNCTION: +RSA_padding_check_none 979 1_1_0d EXIST::FUNCTION:RSA +X509_REQ_set_subject_name 980 1_1_0d EXIST::FUNCTION: +CMS_sign 981 1_1_0d EXIST::FUNCTION:CMS +EVP_aes_256_cbc_hmac_sha1 982 1_1_0d EXIST::FUNCTION: +ECPKPARAMETERS_free 983 1_1_0d EXIST::FUNCTION:EC +OCSP_SINGLERESP_get0_id 984 1_1_0d EXIST::FUNCTION:OCSP +EVP_des_ede3 985 1_1_0d EXIST::FUNCTION:DES +DES_decrypt3 986 1_1_0d EXIST::FUNCTION:DES +SCT_validation_status_string 987 1_1_0d EXIST::FUNCTION:CT +EC_KEY_new 988 1_1_0d EXIST::FUNCTION:EC +a2i_ASN1_INTEGER 989 1_1_0d EXIST::FUNCTION: +OPENSSL_INIT_free 990 1_1_0d EXIST::FUNCTION: +ENGINE_set_flags 991 1_1_0d EXIST::FUNCTION:ENGINE +ESS_CERT_ID_new 992 1_1_0d EXIST::FUNCTION:TS +d2i_ECPKParameters 993 1_1_0d EXIST::FUNCTION:EC +PKCS5_pbe_set0_algor 994 1_1_0d EXIST::FUNCTION: +X509_VERIFY_PARAM_get_inh_flags 995 1_1_0d EXIST::FUNCTION: +RAND_set_rand_method 996 1_1_0d EXIST::FUNCTION: +SDF_PrintECCPublicKey 997 1_1_0d EXIST::FUNCTION:SDF +BN_CTX_secure_new 998 1_1_0d EXIST::FUNCTION: +OPENSSL_thread_stop 999 1_1_0d EXIST::FUNCTION: +Camellia_ecb_encrypt 1000 1_1_0d EXIST::FUNCTION:CAMELLIA +EC_KEY_METHOD_set_verify 1001 1_1_0d EXIST::FUNCTION:EC +EC_KEY_new_method 1002 1_1_0d EXIST::FUNCTION:EC +DSO_get_filename 1003 1_1_0d EXIST::FUNCTION: +EC_POINT_bn2point 1004 1_1_0d EXIST::FUNCTION:EC +EC_KEY_METHOD_new 1005 1_1_0d EXIST::FUNCTION:EC +CMS_RecipientInfo_set0_password 1006 1_1_0d EXIST::FUNCTION:CMS +BN_get_rfc3526_prime_4096 1007 1_1_0d EXIST::FUNCTION: +d2i_NOTICEREF 1008 1_1_0d EXIST::FUNCTION: +ASN1_check_infinite_end 1009 1_1_0d EXIST::FUNCTION: +i2d_X509_EXTENSION 1010 1_1_0d EXIST::FUNCTION: +RSA_test_flags 1011 1_1_0d EXIST::FUNCTION:RSA +BIO_ADDRINFO_family 1012 1_1_0d EXIST::FUNCTION:SOCK +OCSP_response_get1_basic 1013 1_1_0d EXIST::FUNCTION:OCSP +AES_set_encrypt_key 1014 1_1_0d EXIST::FUNCTION: +ASN1_item_ex_new 1015 1_1_0d EXIST::FUNCTION: +SKF_OpenContainer 1016 1_1_0d EXIST::FUNCTION:SKF +SKF_PrintDevInfo 1017 1_1_0d EXIST::FUNCTION:SKF +i2d_PBKDF2PARAM 1018 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_set0_crls 1019 1_1_0d EXIST::FUNCTION: +CMS_ContentInfo_print_ctx 1020 1_1_0d EXIST::FUNCTION:CMS +EVP_CIPHER_meth_set_get_asn1_params 1021 1_1_0d EXIST::FUNCTION: +SHA256_Final 1022 1_1_0d EXIST::FUNCTION: +EVP_aes_128_gcm 1023 1_1_0d EXIST::FUNCTION: +sms4_encrypt 1024 1_1_0d EXIST::FUNCTION:SMS4 +ECDSA_SIG_set_ECCSignature 1025 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF +TS_REQ_get_ext_d2i 1026 1_1_0d EXIST::FUNCTION:TS +ENGINE_unregister_DSA 1027 1_1_0d EXIST::FUNCTION:ENGINE +ENGINE_get_EC 1028 1_1_0d EXIST::FUNCTION:ENGINE +SM2_COSIGNER1_SHARE_free 1029 1_1_0d EXIST::FUNCTION:SM2 +PEM_write_PrivateKey 1030 1_1_0d EXIST::FUNCTION:STDIO +EC_GROUP_precompute_mult 1031 1_1_0d EXIST::FUNCTION:EC +ENGINE_get_DSA 1032 1_1_0d EXIST::FUNCTION:ENGINE +RAND_seed 1033 1_1_0d EXIST::FUNCTION: +SRP_VBASE_get_by_user 1034 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,SRP +EVP_CIPHER_CTX_get_sgd 1035 1_1_0d EXIST::FUNCTION:GMAPI +PEM_write_bio_X509 1036 1_1_0d EXIST::FUNCTION: +DH_meth_set_flags 1037 1_1_0d EXIST::FUNCTION:DH +BN_sqr 1038 1_1_0d EXIST::FUNCTION: +BIO_copy_next_retry 1039 1_1_0d EXIST::FUNCTION: +SMIME_text 1040 1_1_0d EXIST::FUNCTION: +i2d_ASIdentifiers 1041 1_1_0d EXIST::FUNCTION:RFC3779 +ERR_add_error_vdata 1042 1_1_0d EXIST::FUNCTION: +SKF_CloseApplication 1043 1_1_0d EXIST::FUNCTION:SKF +EVP_aes_192_ctr 1044 1_1_0d EXIST::FUNCTION: +CRYPTO_gcm128_setiv 1045 1_1_0d EXIST::FUNCTION: +X509v3_addr_add_range 1046 1_1_0d EXIST::FUNCTION:RFC3779 +X509_pubkey_digest 1047 1_1_0d EXIST::FUNCTION: +d2i_OCSP_SIGNATURE 1048 1_1_0d EXIST::FUNCTION:OCSP +ENGINE_set_RAND 1049 1_1_0d EXIST::FUNCTION:ENGINE +PKCS12_get_friendlyname 1050 1_1_0d EXIST::FUNCTION: +SM2_cosigner2_generate_proof 1051 1_1_0d EXIST::FUNCTION:SM2 +BN_generate_prime 1052 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_0_9_8 +OCSP_basic_sign 1053 1_1_0d EXIST::FUNCTION:OCSP +PKCS12_SAFEBAG_get0_attr 1054 1_1_0d EXIST::FUNCTION: +X509_NAME_ENTRY_get_object 1055 1_1_0d EXIST::FUNCTION: +SKF_LockDev 1056 1_1_0d EXIST::FUNCTION:SKF +CRYPTO_set_mem_functions 1057 1_1_0d EXIST::FUNCTION: +BN_hex2bn 1058 1_1_0d EXIST::FUNCTION: +AUTHORITY_KEYID_it 1059 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +AUTHORITY_KEYID_it 1059 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PKCS12_SAFEBAG_get1_crl 1060 1_1_0d EXIST::FUNCTION: +ENGINE_set_default_EC 1061 1_1_0d EXIST::FUNCTION:ENGINE +EVP_MD_meth_get_final 1062 1_1_0d EXIST::FUNCTION: +BIO_f_linebuffer 1063 1_1_0d EXIST::FUNCTION: +d2i_PUBKEY_bio 1064 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_pop 1065 1_1_0d EXIST::FUNCTION: +EVP_camellia_192_cfb128 1066 1_1_0d EXIST::FUNCTION:CAMELLIA +TS_MSG_IMPRINT_set_algo 1067 1_1_0d EXIST::FUNCTION:TS +RSA_set0_crt_params 1068 1_1_0d EXIST::FUNCTION:RSA +BN_is_odd 1069 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_asn1_to_param 1070 1_1_0d EXIST::FUNCTION: +X509_NAME_delete_entry 1071 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_get_verify 1072 1_1_0d EXIST::FUNCTION: +i2d_OCSP_CERTID 1073 1_1_0d EXIST::FUNCTION:OCSP +sm3_compress 1074 1_1_0d EXIST::FUNCTION:SM3 +ENGINE_get_pkey_asn1_meth_str 1075 1_1_0d EXIST::FUNCTION:ENGINE +ENGINE_get_table_flags 1076 1_1_0d EXIST::FUNCTION:ENGINE +COMP_zlib 1077 1_1_0d EXIST::FUNCTION:COMP +PEM_read_bio_SM9_MASTER_PUBKEY 1078 1_1_0d EXIST::FUNCTION:SM9 +SCT_free 1079 1_1_0d EXIST::FUNCTION:CT +BUF_reverse 1080 1_1_0d EXIST::FUNCTION: +RSA_generate_key_ex 1081 1_1_0d EXIST::FUNCTION:RSA +X509_REQ_get0_pubkey 1082 1_1_0d EXIST::FUNCTION: +OCSP_REQUEST_it 1083 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:OCSP +OCSP_REQUEST_it 1083 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:OCSP +d2i_PKCS7_SIGN_ENVELOPE 1084 1_1_0d EXIST::FUNCTION: +X509_REVOKED_get_ext_by_NID 1085 1_1_0d EXIST::FUNCTION: +EC_KEY_OpenSSL 1086 1_1_0d EXIST::FUNCTION:EC +OCSP_crl_reason_str 1087 1_1_0d EXIST::FUNCTION:OCSP +d2i_X509_REQ_fp 1088 1_1_0d EXIST::FUNCTION:STDIO +ASN1_INTEGER_to_BN 1089 1_1_0d EXIST::FUNCTION: +CMS_get1_certs 1090 1_1_0d EXIST::FUNCTION:CMS +BIO_get_retry_reason 1091 1_1_0d EXIST::FUNCTION: +i2d_CMS_bio 1092 1_1_0d EXIST::FUNCTION:CMS +CRYPTO_secure_malloc_initialized 1093 1_1_0d EXIST::FUNCTION: +PEM_write_PAILLIER_PUBKEY 1094 1_1_0d EXIST::FUNCTION:PAILLIER,STDIO +DSO_set_filename 1095 1_1_0d EXIST::FUNCTION: +BN_mod_lshift_quick 1096 1_1_0d EXIST::FUNCTION: +d2i_OCSP_RESPBYTES 1097 1_1_0d EXIST::FUNCTION:OCSP +DH_get_default_method 1098 1_1_0d EXIST::FUNCTION:DH +DES_random_key 1099 1_1_0d EXIST::FUNCTION:DES +BN_mod_exp_mont_word 1100 1_1_0d EXIST::FUNCTION: +ASN1_OCTET_STRING_dup 1101 1_1_0d EXIST::FUNCTION: +X509_get_serialNumber 1102 1_1_0d EXIST::FUNCTION: +EVP_DigestVerifyInit 1103 1_1_0d EXIST::FUNCTION: +SM9_KEY_new 1104 1_1_0d EXIST::FUNCTION:SM9 +EC_KEY_new_from_ECCrefPublicKey 1105 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF +X509_NAME_hash_old 1106 1_1_0d EXIST::FUNCTION: +PROXY_POLICY_new 1107 1_1_0d EXIST::FUNCTION: +X509_get_ext_by_critical 1108 1_1_0d EXIST::FUNCTION: +X509_VERIFY_PARAM_set_purpose 1109 1_1_0d EXIST::FUNCTION: +OCSP_SINGLERESP_get_ext_by_OBJ 1110 1_1_0d EXIST::FUNCTION:OCSP +SKF_PrintECCSignature 1111 1_1_0d EXIST::FUNCTION:SKF +d2i_CMS_bio 1112 1_1_0d EXIST::FUNCTION:CMS +SDF_FreeECCCipher 1113 1_1_0d EXIST::FUNCTION:SDF +PKCS7_sign_add_signer 1114 1_1_0d EXIST::FUNCTION: +ECDSA_sign_setup 1115 1_1_0d EXIST::FUNCTION:EC +OPENSSL_isservice 1116 1_1_0d EXIST::FUNCTION: +BIO_dump_fp 1117 1_1_0d EXIST::FUNCTION:STDIO +ECIES_PARAMS_get_mac 1118 1_1_0d EXIST::FUNCTION:ECIES +BIO_new_connect 1119 1_1_0d EXIST::FUNCTION:SOCK +OCSP_REQUEST_delete_ext 1120 1_1_0d EXIST::FUNCTION:OCSP +i2d_OCSP_BASICRESP 1121 1_1_0d EXIST::FUNCTION:OCSP +GENERAL_NAMES_new 1122 1_1_0d EXIST::FUNCTION: +SKF_ExportCertificate 1123 1_1_0d EXIST::FUNCTION:SKF +CRYPTO_cfb128_encrypt 1124 1_1_0d EXIST::FUNCTION: +ENGINE_get_ctrl_function 1125 1_1_0d EXIST::FUNCTION:ENGINE +EVP_aes_256_ofb 1126 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_set_sign 1127 1_1_0d EXIST::FUNCTION: +RAND_write_file 1128 1_1_0d EXIST::FUNCTION: +PEM_write_PUBKEY 1129 1_1_0d EXIST::FUNCTION:STDIO +USERNOTICE_free 1130 1_1_0d EXIST::FUNCTION: +PEM_write_bio 1131 1_1_0d EXIST::FUNCTION: +EC_GF2m_simple_method 1132 1_1_0d EXIST::FUNCTION:EC,EC2M +EVP_SignFinal 1133 1_1_0d EXIST::FUNCTION: +EC_KEY_priv2buf 1134 1_1_0d EXIST::FUNCTION:EC +OPENSSL_buf2hexstr 1135 1_1_0d EXIST::FUNCTION: +EVP_des_ede3_cbc 1136 1_1_0d EXIST::FUNCTION:DES +AES_ofb128_encrypt 1137 1_1_0d EXIST::FUNCTION: +OPENSSL_issetugid 1138 1_1_0d EXIST::FUNCTION: +OCSP_basic_add1_status 1139 1_1_0d EXIST::FUNCTION:OCSP +BN_nist_mod_256 1140 1_1_0d EXIST::FUNCTION: +PKCS7_add0_attrib_signing_time 1141 1_1_0d EXIST::FUNCTION: +X509_CRL_get_ext_by_critical 1142 1_1_0d EXIST::FUNCTION: +CMS_add0_crl 1143 1_1_0d EXIST::FUNCTION:CMS +BN_mul 1144 1_1_0d EXIST::FUNCTION: +i2d_EC_PUBKEY_bio 1145 1_1_0d EXIST::FUNCTION:EC +NAME_CONSTRAINTS_it 1146 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +NAME_CONSTRAINTS_it 1146 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_issuer_name_cmp 1147 1_1_0d EXIST::FUNCTION: +BIO_indent 1148 1_1_0d EXIST::FUNCTION: +EC_KEY_copy 1149 1_1_0d EXIST::FUNCTION:EC +SCT_new 1150 1_1_0d EXIST::FUNCTION:CT +DES_ecb_encrypt 1151 1_1_0d EXIST::FUNCTION:DES +OCSP_ONEREQ_get1_ext_d2i 1152 1_1_0d EXIST::FUNCTION:OCSP +SHA224_Final 1153 1_1_0d EXIST::FUNCTION: +SM2_encrypt 1154 1_1_0d EXIST::FUNCTION:SM2 +ASIdOrRange_it 1155 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779 +ASIdOrRange_it 1155 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779 +X509_SIG_free 1156 1_1_0d EXIST::FUNCTION: +DSA_meth_get_keygen 1157 1_1_0d EXIST::FUNCTION:DSA +ENGINE_get_pkey_asn1_meth 1158 1_1_0d EXIST::FUNCTION:ENGINE +GENERAL_SUBTREE_new 1159 1_1_0d EXIST::FUNCTION: +EVP_add_cipher 1160 1_1_0d EXIST::FUNCTION: +ERR_load_X509_strings 1161 1_1_0d EXIST::FUNCTION: +BIO_puts 1162 1_1_0d EXIST::FUNCTION: +CRYPTO_malloc 1163 1_1_0d EXIST::FUNCTION: +BN_BLINDING_create_param 1164 1_1_0d EXIST::FUNCTION: +i2s_ASN1_ENUMERATED_TABLE 1165 1_1_0d EXIST::FUNCTION: +SM9_KEY_print 1166 1_1_0d EXIST::FUNCTION:SM9 +TS_TST_INFO_get_ext_by_OBJ 1167 1_1_0d EXIST::FUNCTION:TS +PEM_write_PaillierPrivateKey 1168 1_1_0d EXIST::FUNCTION:PAILLIER,STDIO +ASN1_STRING_cmp 1169 1_1_0d EXIST::FUNCTION: +PEM_write_RSAPublicKey 1170 1_1_0d EXIST::FUNCTION:RSA,STDIO +PKCS7_RECIP_INFO_free 1171 1_1_0d EXIST::FUNCTION: +CRYPTO_gcm128_encrypt_ctr32 1172 1_1_0d EXIST::FUNCTION: +CONF_imodule_get_flags 1173 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_new_null 1174 1_1_0d EXIST::FUNCTION: +DH_meth_new 1175 1_1_0d EXIST::FUNCTION:DH +Camellia_ofb128_encrypt 1176 1_1_0d EXIST::FUNCTION:CAMELLIA +sm3_hmac_final 1177 1_1_0d EXIST::FUNCTION:SM3 +X509_LOOKUP_shutdown 1178 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_dup 1179 1_1_0d EXIST::FUNCTION: +OCSP_CERTSTATUS_it 1180 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:OCSP +OCSP_CERTSTATUS_it 1180 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:OCSP +X509_TRUST_get_trust 1181 1_1_0d EXIST::FUNCTION: +d2i_SCT_LIST 1182 1_1_0d EXIST::FUNCTION:CT +ENGINE_register_all_EC 1183 1_1_0d EXIST::FUNCTION:ENGINE +TS_RESP_dup 1184 1_1_0d EXIST::FUNCTION:TS +SKF_ImportX509Certificate 1185 1_1_0d EXIST::FUNCTION:SKF +PEM_read_PUBKEY 1186 1_1_0d EXIST::FUNCTION:STDIO +ASYNC_pause_job 1187 1_1_0d EXIST::FUNCTION: +RSA_print 1188 1_1_0d EXIST::FUNCTION:RSA +ENGINE_unregister_ciphers 1189 1_1_0d EXIST::FUNCTION:ENGINE +EVP_PKEY_asn1_get_count 1190 1_1_0d EXIST::FUNCTION: +X509_STORE_set_check_crl 1191 1_1_0d EXIST::FUNCTION: +X509_subject_name_cmp 1192 1_1_0d EXIST::FUNCTION: +EVP_PKEY_get1_PAILLIER 1193 1_1_0d EXIST::FUNCTION:PAILLIER +SDF_PrintECCCipher 1194 1_1_0d EXIST::FUNCTION:SDF +EC_KEY_METHOD_free 1195 1_1_0d EXIST::FUNCTION:EC +CMS_SignerInfo_get0_signature 1196 1_1_0d EXIST::FUNCTION:CMS +PKCS7_verify 1197 1_1_0d EXIST::FUNCTION: +X509_get0_pubkey_bitstr 1198 1_1_0d EXIST::FUNCTION: +PKCS7_SIGNER_INFO_sign 1199 1_1_0d EXIST::FUNCTION: +OCSP_REQUEST_get_ext_by_NID 1200 1_1_0d EXIST::FUNCTION:OCSP +BN_bn2mpi 1201 1_1_0d EXIST::FUNCTION: +X509_STORE_set_check_issued 1202 1_1_0d EXIST::FUNCTION: +EVP_DigestSignInit 1203 1_1_0d EXIST::FUNCTION: +DSA_do_verify 1204 1_1_0d EXIST::FUNCTION:DSA +CONF_parse_list 1205 1_1_0d EXIST::FUNCTION: +d2i_X509_REQ_bio 1206 1_1_0d EXIST::FUNCTION: +PKCS7_SIGNER_INFO_it 1207 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_SIGNER_INFO_it 1207 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +OBJ_nid2ln 1208 1_1_0d EXIST::FUNCTION: +EVP_PKEY_verify_recover 1209 1_1_0d EXIST::FUNCTION: +ASN1_STRING_set_by_NID 1210 1_1_0d EXIST::FUNCTION: +d2i_DSAPrivateKey_bio 1211 1_1_0d EXIST::FUNCTION:DSA +EVP_MD_meth_get_update 1212 1_1_0d EXIST::FUNCTION: +MD4_Init 1213 1_1_0d EXIST::FUNCTION:MD4 +BN_num_bits 1214 1_1_0d EXIST::FUNCTION: +ASN1_ENUMERATED_free 1215 1_1_0d EXIST::FUNCTION: +CT_POLICY_EVAL_CTX_get_time 1216 1_1_0d EXIST::FUNCTION:CT +EVP_PKEY_asn1_get0_info 1217 1_1_0d EXIST::FUNCTION: +PEM_read_DSAparams 1218 1_1_0d EXIST::FUNCTION:DSA,STDIO +DH_meth_set_compute_key 1219 1_1_0d EXIST::FUNCTION:DH +CMS_unsigned_add1_attr_by_OBJ 1220 1_1_0d EXIST::FUNCTION:CMS +RSA_set_RSAPUBLICKEYBLOB 1221 1_1_0d EXIST::FUNCTION:GMAPI,RSA,SKF +SCT_set0_extensions 1222 1_1_0d EXIST::FUNCTION:CT +OPENSSL_LH_stats 1223 1_1_0d EXIST::FUNCTION:STDIO +i2d_ASN1_OBJECT 1224 1_1_0d EXIST::FUNCTION: +i2d_PKCS8PrivateKey_fp 1225 1_1_0d EXIST::FUNCTION:STDIO +EC_KEY_clear_flags 1226 1_1_0d EXIST::FUNCTION:EC +d2i_X509_AUX 1227 1_1_0d EXIST::FUNCTION: +OCSP_SINGLERESP_get_ext_count 1228 1_1_0d EXIST::FUNCTION:OCSP +CRYPTO_secure_used 1229 1_1_0d EXIST::FUNCTION: +EVP_rc4_40 1230 1_1_0d EXIST::FUNCTION:RC4 +X509_LOOKUP_hash_dir 1231 1_1_0d EXIST::FUNCTION: +BN_mod_lshift1 1232 1_1_0d EXIST::FUNCTION: +PKCS7_add_crl 1233 1_1_0d EXIST::FUNCTION: +EVP_MD_CTX_copy 1234 1_1_0d EXIST::FUNCTION: +EVP_PKEY_size 1235 1_1_0d EXIST::FUNCTION: +SM2_KAP_final_check 1236 1_1_0d EXIST::FUNCTION:SM2 +TS_TST_INFO_get_nonce 1237 1_1_0d EXIST::FUNCTION:TS +DH_get0_engine 1238 1_1_0d EXIST::FUNCTION:DH +OCSP_BASICRESP_get_ext_by_NID 1239 1_1_0d EXIST::FUNCTION:OCSP +X509_get_extension_flags 1240 1_1_0d EXIST::FUNCTION: +ENGINE_get_destroy_function 1241 1_1_0d EXIST::FUNCTION:ENGINE +EC_POINT_make_affine 1242 1_1_0d EXIST::FUNCTION:EC +SM2_COSIGNER1_SHARE_new 1243 1_1_0d EXIST::FUNCTION:SM2 +EC_KEY_get_enc_flags 1244 1_1_0d EXIST::FUNCTION:EC +EVP_idea_cfb64 1245 1_1_0d EXIST::FUNCTION:IDEA +i2d_OCSP_RESPDATA 1246 1_1_0d EXIST::FUNCTION:OCSP +CRYPTO_secure_malloc_done 1247 1_1_0d EXIST::FUNCTION: +PKCS12_add_localkeyid 1248 1_1_0d EXIST::FUNCTION: +BIO_get_init 1249 1_1_0d EXIST::FUNCTION: +Camellia_cfb1_encrypt 1250 1_1_0d EXIST::FUNCTION:CAMELLIA +X509_OBJECT_idx_by_subject 1251 1_1_0d EXIST::FUNCTION: +BN_copy 1252 1_1_0d EXIST::FUNCTION: +ENGINE_get_cipher 1253 1_1_0d EXIST::FUNCTION:ENGINE +BN_asc2bn 1254 1_1_0d EXIST::FUNCTION: +CRYPTO_cbc128_encrypt 1255 1_1_0d EXIST::FUNCTION: +DHparams_print_fp 1256 1_1_0d EXIST::FUNCTION:DH,STDIO +CMS_set_detached 1257 1_1_0d EXIST::FUNCTION:CMS +ECCPRIVATEKEYBLOB_set_private_key 1258 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF +BN_consttime_swap 1259 1_1_0d EXIST::FUNCTION: +X509_STORE_set_flags 1260 1_1_0d EXIST::FUNCTION: +PEM_write_bio_DHxparams 1261 1_1_0d EXIST::FUNCTION:DH +PEM_write_bio_DSA_PUBKEY 1262 1_1_0d EXIST::FUNCTION:DSA +TS_TST_INFO_add_ext 1263 1_1_0d EXIST::FUNCTION:TS +X509_REQ_extension_nid 1264 1_1_0d EXIST::FUNCTION: +EC_KEY_dup 1265 1_1_0d EXIST::FUNCTION:EC +IDEA_set_decrypt_key 1266 1_1_0d EXIST::FUNCTION:IDEA +X509_ATTRIBUTE_get0_object 1267 1_1_0d EXIST::FUNCTION: +SKF_ExtECCSign 1268 1_1_0d EXIST::FUNCTION:SKF +CAST_encrypt 1269 1_1_0d EXIST::FUNCTION:CAST +AES_encrypt 1270 1_1_0d EXIST::FUNCTION: +X509V3_get_value_int 1271 1_1_0d EXIST::FUNCTION: +PEM_write_RSA_PUBKEY 1272 1_1_0d EXIST::FUNCTION:RSA,STDIO +EVP_PBE_alg_add_type 1273 1_1_0d EXIST::FUNCTION: +EVP_MD_CTX_set_flags 1274 1_1_0d EXIST::FUNCTION: +BIO_get_callback 1275 1_1_0d EXIST::FUNCTION: +BN_pseudo_rand_range 1276 1_1_0d EXIST::FUNCTION: +PKCS12_item_pack_safebag 1277 1_1_0d EXIST::FUNCTION: +BIO_get_accept_socket 1278 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,SOCK +EC_POINT_set_Jprojective_coordinates_GFp 1279 1_1_0d EXIST::FUNCTION:EC +X509_STORE_set_lookup_certs 1280 1_1_0d EXIST::FUNCTION: +BASIC_CONSTRAINTS_new 1281 1_1_0d EXIST::FUNCTION: +SKF_Transmit 1282 1_1_0d EXIST::FUNCTION:SKF +ASN1_PCTX_set_cert_flags 1283 1_1_0d EXIST::FUNCTION: +AES_set_decrypt_key 1284 1_1_0d EXIST::FUNCTION: +PEM_write_bio_DHparams 1285 1_1_0d EXIST::FUNCTION:DH +BIO_ctrl_get_write_guarantee 1286 1_1_0d EXIST::FUNCTION: +OCSP_RESPONSE_new 1287 1_1_0d EXIST::FUNCTION:OCSP +X509_get_ext_count 1288 1_1_0d EXIST::FUNCTION: +PEM_read_PKCS8_PRIV_KEY_INFO 1289 1_1_0d EXIST::FUNCTION:STDIO +ASN1_INTEGER_dup 1290 1_1_0d EXIST::FUNCTION: +EVP_PKEY_CTX_ctrl_str 1291 1_1_0d EXIST::FUNCTION: +PKCS7_ENVELOPE_free 1292 1_1_0d EXIST::FUNCTION: +TS_REQ_new 1293 1_1_0d EXIST::FUNCTION:TS +X509_STORE_set_get_crl 1294 1_1_0d EXIST::FUNCTION: +SKF_CancelWaitForDevEvent 1295 1_1_0d EXIST::FUNCTION:SKF +X509_ATTRIBUTE_create_by_OBJ 1296 1_1_0d EXIST::FUNCTION: +TS_TST_INFO_set_nonce 1297 1_1_0d EXIST::FUNCTION:TS +SKF_DecryptInit 1298 1_1_0d EXIST::FUNCTION:SKF +SCT_print 1299 1_1_0d EXIST::FUNCTION:CT +i2d_TS_REQ 1300 1_1_0d EXIST::FUNCTION:TS +OCSP_REQ_CTX_http 1301 1_1_0d EXIST::FUNCTION:OCSP +ENGINE_register_DH 1302 1_1_0d EXIST::FUNCTION:ENGINE +CMS_verify_receipt 1303 1_1_0d EXIST::FUNCTION:CMS +UI_method_get_closer 1304 1_1_0d EXIST::FUNCTION:UI +EVP_MD_CTX_reset 1305 1_1_0d EXIST::FUNCTION: +EVP_sms4_ctr 1306 1_1_0d EXIST::FUNCTION:SMS4 +d2i_OCSP_CRLID 1307 1_1_0d EXIST::FUNCTION:OCSP +DSA_verify 1308 1_1_0d EXIST::FUNCTION:DSA +SKF_DigestInit 1309 1_1_0d EXIST::FUNCTION:SKF +EVP_DecryptUpdate 1310 1_1_0d EXIST::FUNCTION: +ENGINE_set_id 1311 1_1_0d EXIST::FUNCTION:ENGINE +X509_INFO_new 1312 1_1_0d EXIST::FUNCTION: +EVP_PKEY_asn1_find_str 1313 1_1_0d EXIST::FUNCTION: +PEM_write_bio_PUBKEY 1314 1_1_0d EXIST::FUNCTION: +EVP_aes_128_wrap 1315 1_1_0d EXIST::FUNCTION: +BIO_f_buffer 1316 1_1_0d EXIST::FUNCTION: +CMS_uncompress 1317 1_1_0d EXIST::FUNCTION:CMS +EVP_CIPHER_CTX_set_flags 1318 1_1_0d EXIST::FUNCTION: +POLICYINFO_it 1319 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +POLICYINFO_it 1319 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_REQ_check_private_key 1320 1_1_0d EXIST::FUNCTION: +ASN1_FBOOLEAN_it 1321 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_FBOOLEAN_it 1321 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +TS_ACCURACY_dup 1322 1_1_0d EXIST::FUNCTION:TS +POLICYINFO_new 1323 1_1_0d EXIST::FUNCTION: +d2i_TS_STATUS_INFO 1324 1_1_0d EXIST::FUNCTION:TS +X509_get_default_cert_dir_env 1325 1_1_0d EXIST::FUNCTION: +AES_decrypt 1326 1_1_0d EXIST::FUNCTION: +BN_is_prime_ex 1327 1_1_0d EXIST::FUNCTION: +SM9Ciphertext_it 1328 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:SM9 +SM9Ciphertext_it 1328 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:SM9 +EVP_PKEY_cmp_parameters 1329 1_1_0d EXIST::FUNCTION: +i2d_ASN1_UNIVERSALSTRING 1330 1_1_0d EXIST::FUNCTION: +PKCS7_DIGEST_free 1331 1_1_0d EXIST::FUNCTION: +X509_ALGOR_dup 1332 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_free 1333 1_1_0d EXIST::FUNCTION: +X509at_add1_attr 1334 1_1_0d EXIST::FUNCTION: +ENGINE_set_table_flags 1335 1_1_0d EXIST::FUNCTION:ENGINE +BN_div_recp 1336 1_1_0d EXIST::FUNCTION: +PKCS8_pkey_set0 1337 1_1_0d EXIST::FUNCTION: +OBJ_new_nid 1338 1_1_0d EXIST::FUNCTION: +X509_set_version 1339 1_1_0d EXIST::FUNCTION: +EVP_PKEY_set1_PAILLIER 1340 1_1_0d EXIST::FUNCTION:PAILLIER +d2i_DSA_PUBKEY 1341 1_1_0d EXIST::FUNCTION:DSA +OCSP_request_verify 1342 1_1_0d EXIST::FUNCTION:OCSP +BN_MONT_CTX_set 1343 1_1_0d EXIST::FUNCTION: +PKCS7_dataDecode 1344 1_1_0d EXIST::FUNCTION: +CONF_get1_default_config_file 1345 1_1_0d EXIST::FUNCTION: +RSA_get0_key 1346 1_1_0d EXIST::FUNCTION:RSA +ASN1_mbstring_copy 1347 1_1_0d EXIST::FUNCTION: +d2i_DIST_POINT 1348 1_1_0d EXIST::FUNCTION: +BN_mod_mul_montgomery 1349 1_1_0d EXIST::FUNCTION: +DSA_meth_get_bn_mod_exp 1350 1_1_0d EXIST::FUNCTION:DSA +a2d_ASN1_OBJECT 1351 1_1_0d EXIST::FUNCTION: +OPENSSL_strlcat 1352 1_1_0d EXIST::FUNCTION: +X509_chain_check_suiteb 1353 1_1_0d EXIST::FUNCTION: +ASN1_item_unpack 1354 1_1_0d EXIST::FUNCTION: +BASIC_CONSTRAINTS_free 1355 1_1_0d EXIST::FUNCTION: +d2i_ASN1_NULL 1356 1_1_0d EXIST::FUNCTION: +SKF_DecryptUpdate 1357 1_1_0d EXIST::FUNCTION:SKF +X509_STORE_CTX_get_cleanup 1358 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_get_error_depth 1359 1_1_0d EXIST::FUNCTION: +BIO_s_connect 1360 1_1_0d EXIST::FUNCTION:SOCK +UI_get_method 1361 1_1_0d EXIST::FUNCTION:UI +CRYPTO_set_ex_data 1362 1_1_0d EXIST::FUNCTION: +X509_LOOKUP_by_fingerprint 1363 1_1_0d EXIST::FUNCTION: +DSO_ctrl 1364 1_1_0d EXIST::FUNCTION: +EVP_DigestUpdate 1365 1_1_0d EXIST::FUNCTION: +X509_CRL_INFO_new 1366 1_1_0d EXIST::FUNCTION: +CMS_RecipientInfo_ktri_cert_cmp 1367 1_1_0d EXIST::FUNCTION:CMS +ASN1_generate_v3 1368 1_1_0d EXIST::FUNCTION: +HMAC_CTX_get_md 1369 1_1_0d EXIST::FUNCTION: +CMS_signed_add1_attr_by_txt 1370 1_1_0d EXIST::FUNCTION:CMS +EVP_camellia_192_cfb8 1371 1_1_0d EXIST::FUNCTION:CAMELLIA +EC_GROUP_new_from_ecpkparameters 1372 1_1_0d EXIST::FUNCTION:EC +SHA256_Transform 1373 1_1_0d EXIST::FUNCTION: +OCSP_BASICRESP_get_ext 1374 1_1_0d EXIST::FUNCTION:OCSP +OCSP_BASICRESP_get1_ext_d2i 1375 1_1_0d EXIST::FUNCTION:OCSP +sms4_ecb_encrypt 1376 1_1_0d EXIST::FUNCTION:SMS4 +PKCS12_add_cert 1377 1_1_0d EXIST::FUNCTION: +PKCS12_PBE_add 1378 1_1_0d EXIST::FUNCTION: +d2i_DIRECTORYSTRING 1379 1_1_0d EXIST::FUNCTION: +RSA_meth_set_verify 1380 1_1_0d EXIST::FUNCTION:RSA +SKF_ImportX509CertificateByKeyUsage 1381 1_1_0d EXIST::FUNCTION:SKF +PKCS7_get_issuer_and_serial 1382 1_1_0d EXIST::FUNCTION: +X509_get_X509_PUBKEY 1383 1_1_0d EXIST::FUNCTION: +BN_nist_mod_192 1384 1_1_0d EXIST::FUNCTION: +ASN1_SCTX_get_item 1385 1_1_0d EXIST::FUNCTION: +SM2_sign_setup 1386 1_1_0d EXIST::FUNCTION:SM2 +i2d_SM9MasterSecret_fp 1387 1_1_0d EXIST::FUNCTION:SM9,STDIO +OPENSSL_sk_find_ex 1388 1_1_0d EXIST::FUNCTION: +TS_TST_INFO_get_tsa 1389 1_1_0d EXIST::FUNCTION:TS +PEM_read_bio_SM9PublicKey 1390 1_1_0d EXIST::FUNCTION:SM9 +OPENSSL_sk_zero 1391 1_1_0d EXIST::FUNCTION: +BN_to_ASN1_ENUMERATED 1392 1_1_0d EXIST::FUNCTION: +ECIES_do_encrypt 1393 1_1_0d EXIST::FUNCTION:ECIES +BIO_fd_non_fatal_error 1394 1_1_0d EXIST::FUNCTION: +X509_VERIFY_PARAM_free 1395 1_1_0d EXIST::FUNCTION: +BN_bn2bin 1396 1_1_0d EXIST::FUNCTION: +OCSP_SERVICELOC_new 1397 1_1_0d EXIST::FUNCTION:OCSP +EC_GROUP_get_curve_GFp 1398 1_1_0d EXIST::FUNCTION:EC +PKCS7_ISSUER_AND_SERIAL_it 1399 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_ISSUER_AND_SERIAL_it 1399 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PEM_read_bio_NETSCAPE_CERT_SEQUENCE 1400 1_1_0d EXIST::FUNCTION: +EVP_rc2_64_cbc 1401 1_1_0d EXIST::FUNCTION:RC2 +PEM_ASN1_read 1402 1_1_0d EXIST::FUNCTION:STDIO +i2d_RSAPrivateKey 1403 1_1_0d EXIST::FUNCTION:RSA +CMS_unsigned_get_attr 1404 1_1_0d EXIST::FUNCTION:CMS +WHIRLPOOL_BitUpdate 1405 1_1_0d EXIST::FUNCTION:WHIRLPOOL +CTLOG_STORE_load_default_file 1406 1_1_0d EXIST::FUNCTION:CT +d2i_ASN1_UTCTIME 1407 1_1_0d EXIST::FUNCTION: +EVP_aes_256_cfb8 1408 1_1_0d EXIST::FUNCTION: +CRYPTO_clear_free 1409 1_1_0d EXIST::FUNCTION: +EVP_sha256 1410 1_1_0d EXIST::FUNCTION: +ASN1_TYPE_get 1411 1_1_0d EXIST::FUNCTION: +i2d_PKCS7 1412 1_1_0d EXIST::FUNCTION: +EVP_zuc 1413 1_1_0d EXIST::FUNCTION:ZUC +OCSP_CRLID_free 1414 1_1_0d EXIST::FUNCTION:OCSP +OCSP_REQUEST_new 1415 1_1_0d EXIST::FUNCTION:OCSP +RSA_security_bits 1416 1_1_0d EXIST::FUNCTION:RSA +EVP_OpenInit 1417 1_1_0d EXIST::FUNCTION:RSA +ASN1_SCTX_get_app_data 1418 1_1_0d EXIST::FUNCTION: +BIO_accept_ex 1419 1_1_0d EXIST::FUNCTION:SOCK +PKCS5_pbe2_set_iv 1420 1_1_0d EXIST::FUNCTION: +CTLOG_STORE_load_file 1421 1_1_0d EXIST::FUNCTION:CT +ENGINE_set_default_RAND 1422 1_1_0d EXIST::FUNCTION:ENGINE +OCSP_check_nonce 1423 1_1_0d EXIST::FUNCTION:OCSP +d2i_TS_MSG_IMPRINT_bio 1424 1_1_0d EXIST::FUNCTION:TS +X509_REQ_add_extensions_nid 1425 1_1_0d EXIST::FUNCTION: +RSA_meth_free 1426 1_1_0d EXIST::FUNCTION:RSA +EVP_CIPHER_CTX_set_num 1427 1_1_0d EXIST::FUNCTION: +CMS_signed_add1_attr_by_NID 1428 1_1_0d EXIST::FUNCTION:CMS +EC_POINT_copy 1429 1_1_0d EXIST::FUNCTION:EC +EVP_MD_meth_get_result_size 1430 1_1_0d EXIST::FUNCTION: +d2i_PKCS8_PRIV_KEY_INFO 1431 1_1_0d EXIST::FUNCTION: +ASN1_PRINTABLE_it 1432 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_PRINTABLE_it 1432 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +DSA_up_ref 1433 1_1_0d EXIST::FUNCTION:DSA +X509_CRL_add1_ext_i2d 1434 1_1_0d EXIST::FUNCTION: +ASN1_item_i2d_fp 1435 1_1_0d EXIST::FUNCTION:STDIO +EVP_aes_192_cfb128 1436 1_1_0d EXIST::FUNCTION: +NCONF_new 1437 1_1_0d EXIST::FUNCTION: +TS_RESP_verify_signature 1438 1_1_0d EXIST::FUNCTION:TS +PEM_write_SM9_PUBKEY 1439 1_1_0d EXIST::FUNCTION:SM9,STDIO +X509_REQ_sign_ctx 1440 1_1_0d EXIST::FUNCTION: +X509_policy_tree_free 1441 1_1_0d EXIST::FUNCTION: +OPENSSL_LH_strhash 1442 1_1_0d EXIST::FUNCTION: +CRYPTO_THREAD_cleanup_local 1443 1_1_0d EXIST::FUNCTION: +ENGINE_get_ssl_client_cert_function 1444 1_1_0d EXIST::FUNCTION:ENGINE +EC_POINT_set_compressed_coordinates_GFp 1445 1_1_0d EXIST::FUNCTION:EC +SEED_cbc_encrypt 1446 1_1_0d EXIST::FUNCTION:SEED +EC_GROUP_get0_generator 1447 1_1_0d EXIST::FUNCTION:EC +CONF_dump_fp 1448 1_1_0d EXIST::FUNCTION:STDIO +SHA256 1449 1_1_0d EXIST::FUNCTION: +d2i_ASN1_OCTET_STRING 1450 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_CTX_reset 1451 1_1_0d EXIST::FUNCTION: +UI_OpenSSL 1452 1_1_0d EXIST::FUNCTION:UI +COMP_compress_block 1453 1_1_0d EXIST::FUNCTION:COMP +TS_STATUS_INFO_get0_text 1454 1_1_0d EXIST::FUNCTION:TS +EC_GROUP_new 1455 1_1_0d EXIST::FUNCTION:EC +SM9Signature_new 1456 1_1_0d EXIST::FUNCTION:SM9 +ENGINE_ctrl_cmd_string 1457 1_1_0d EXIST::FUNCTION:ENGINE +ASN1_SCTX_get_template 1458 1_1_0d EXIST::FUNCTION: +EVP_des_ede3_cfb64 1459 1_1_0d EXIST::FUNCTION:DES +SKF_PrintECCPrivateKey 1460 1_1_0d EXIST::FUNCTION:SKF +i2d_PKCS12 1461 1_1_0d EXIST::FUNCTION: +PKCS12_PBE_keyivgen 1462 1_1_0d EXIST::FUNCTION: +ENGINE_get_name 1463 1_1_0d EXIST::FUNCTION:ENGINE +CMS_sign_receipt 1464 1_1_0d EXIST::FUNCTION:CMS +i2d_X509_REQ 1465 1_1_0d EXIST::FUNCTION: +PKCS7_RECIP_INFO_set 1466 1_1_0d EXIST::FUNCTION: +X509_VERIFY_PARAM_set_inh_flags 1467 1_1_0d EXIST::FUNCTION: +i2d_TS_MSG_IMPRINT 1468 1_1_0d EXIST::FUNCTION:TS +EVP_CIPHER_meth_get_ctrl 1469 1_1_0d EXIST::FUNCTION: +RAND_query_egd_bytes 1470 1_1_0d EXIST::FUNCTION:EGD +TS_REQ_set_nonce 1471 1_1_0d EXIST::FUNCTION:TS +PKCS12_new 1472 1_1_0d EXIST::FUNCTION: +d2i_SM2CiphertextValue 1473 1_1_0d EXIST::FUNCTION:SM2 +CMS_RecipientInfo_kari_orig_id_cmp 1474 1_1_0d EXIST::FUNCTION:CMS +PEM_write_bio_NETSCAPE_CERT_SEQUENCE 1475 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_CTX_rand_key 1476 1_1_0d EXIST::FUNCTION: +OCSP_response_status 1477 1_1_0d EXIST::FUNCTION:OCSP +PKCS7_decrypt 1478 1_1_0d EXIST::FUNCTION: +ENGINE_set_default_ciphers 1479 1_1_0d EXIST::FUNCTION:ENGINE +i2d_ECCCIPHERBLOB 1480 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF +BN_is_zero 1481 1_1_0d EXIST::FUNCTION: +PKCS12_pack_p7data 1482 1_1_0d EXIST::FUNCTION: +OCSP_basic_add1_cert 1483 1_1_0d EXIST::FUNCTION:OCSP +PBEPARAM_free 1484 1_1_0d EXIST::FUNCTION: +SKF_PrintECCCipher 1485 1_1_0d EXIST::FUNCTION:SKF +ENGINE_set_ctrl_function 1486 1_1_0d EXIST::FUNCTION:ENGINE +EVP_get_cipherbyname 1487 1_1_0d EXIST::FUNCTION: +OBJ_NAME_do_all 1488 1_1_0d EXIST::FUNCTION: +d2i_X509_NAME 1489 1_1_0d EXIST::FUNCTION: +EVP_PKEY_set1_DH 1490 1_1_0d EXIST::FUNCTION:DH +AES_unwrap_key 1491 1_1_0d EXIST::FUNCTION: +RSA_new_from_RSAPRIVATEKEYBLOB 1492 1_1_0d EXIST::FUNCTION:GMAPI,RSA,SKF +d2i_SM9MasterSecret 1493 1_1_0d EXIST::FUNCTION:SM9 +X509V3_EXT_nconf_nid 1494 1_1_0d EXIST::FUNCTION: +SRP_Calc_server_key 1495 1_1_0d EXIST::FUNCTION:SRP +CERTIFICATEPOLICIES_it 1496 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +CERTIFICATEPOLICIES_it 1496 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +SDF_ExportSignPublicKey_ECC 1497 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_set_verify 1498 1_1_0d EXIST::FUNCTION: +ASN1_TIME_set 1499 1_1_0d EXIST::FUNCTION: +CRYPTO_mem_debug_realloc 1500 1_1_0d EXIST::FUNCTION:CRYPTO_MDEBUG +BN_mask_bits 1501 1_1_0d EXIST::FUNCTION: +EVP_camellia_192_cfb1 1502 1_1_0d EXIST::FUNCTION:CAMELLIA +SM9Ciphertext_new 1503 1_1_0d EXIST::FUNCTION:SM9 +PKCS7_get0_signers 1504 1_1_0d EXIST::FUNCTION: +BN_lebin2bn 1505 1_1_0d EXIST::FUNCTION: +b2i_PrivateKey_bio 1506 1_1_0d EXIST::FUNCTION:DSA +ASN1_INTEGER_free 1507 1_1_0d EXIST::FUNCTION: +CMS_unsigned_get_attr_count 1508 1_1_0d EXIST::FUNCTION:CMS +WHIRLPOOL_Init 1509 1_1_0d EXIST::FUNCTION:WHIRLPOOL +X509_CRL_print_fp 1510 1_1_0d EXIST::FUNCTION:STDIO +CRYPTO_secure_free 1511 1_1_0d EXIST::FUNCTION: +EVP_DigestInit_ex 1512 1_1_0d EXIST::FUNCTION: +TS_STATUS_INFO_get0_status 1513 1_1_0d EXIST::FUNCTION:TS +TS_TST_INFO_set_version 1514 1_1_0d EXIST::FUNCTION:TS +CMS_unsigned_add1_attr_by_txt 1515 1_1_0d EXIST::FUNCTION:CMS +ERR_load_X509V3_strings 1516 1_1_0d EXIST::FUNCTION: +OCSP_basic_add1_nonce 1517 1_1_0d EXIST::FUNCTION:OCSP +ASN1_STRING_TABLE_add 1518 1_1_0d EXIST::FUNCTION: +EVP_aes_128_xts 1519 1_1_0d EXIST::FUNCTION: +EVP_bf_cbc 1520 1_1_0d EXIST::FUNCTION:BF +X509_PKEY_free 1521 1_1_0d EXIST::FUNCTION: +ASN1_GENERALSTRING_it 1522 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_GENERALSTRING_it 1522 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_STORE_CTX_get_obj_by_subject 1523 1_1_0d EXIST::FUNCTION: +TS_RESP_CTX_new 1524 1_1_0d EXIST::FUNCTION:TS +EVP_aes_128_ocb 1525 1_1_0d EXIST::FUNCTION:OCB +d2i_CMS_ContentInfo 1526 1_1_0d EXIST::FUNCTION:CMS +i2d_SM2_COSIGNER2_PROOF 1527 1_1_0d EXIST::FUNCTION:SM2 +i2d_SM9PrivateKey_fp 1528 1_1_0d EXIST::FUNCTION:SM9,STDIO +ERR_load_COMP_strings 1529 1_1_0d EXIST::FUNCTION:COMP +X509_NAME_ENTRY_set 1530 1_1_0d EXIST::FUNCTION: +X509_REQ_print_fp 1531 1_1_0d EXIST::FUNCTION:STDIO +ECIES_decrypt 1532 1_1_0d EXIST::FUNCTION:ECIES +X509_ATTRIBUTE_set1_object 1533 1_1_0d EXIST::FUNCTION: +BIO_meth_new 1534 1_1_0d EXIST::FUNCTION: +RIPEMD160_Update 1535 1_1_0d EXIST::FUNCTION:RMD160 +d2i_SM2_COSIGNER2_PROOF 1536 1_1_0d EXIST::FUNCTION:SM2 +EVP_CIPHER_key_length 1537 1_1_0d EXIST::FUNCTION: +CRYPTO_gcm128_encrypt 1538 1_1_0d EXIST::FUNCTION: +OBJ_txt2obj 1539 1_1_0d EXIST::FUNCTION: +PKCS7_SIGNER_INFO_free 1540 1_1_0d EXIST::FUNCTION: +X509_ALGOR_get0 1541 1_1_0d EXIST::FUNCTION: +i2d_X509_CRL_fp 1542 1_1_0d EXIST::FUNCTION:STDIO +GENERAL_NAME_get0_otherName 1543 1_1_0d EXIST::FUNCTION: +CT_POLICY_EVAL_CTX_new 1544 1_1_0d EXIST::FUNCTION:CT +TS_REQ_to_TS_VERIFY_CTX 1545 1_1_0d EXIST::FUNCTION:TS +CRYPTO_secure_actual_size 1546 1_1_0d EXIST::FUNCTION: +ZUC_generate_keyword 1547 1_1_0d EXIST::FUNCTION:ZUC +CMS_RecipientInfo_kekri_get0_id 1548 1_1_0d EXIST::FUNCTION:CMS +d2i_PaillierPrivateKey 1549 1_1_0d EXIST::FUNCTION:PAILLIER +OCSP_sendreq_new 1550 1_1_0d EXIST::FUNCTION:OCSP +CMS_SignerInfo_get0_algs 1551 1_1_0d EXIST::FUNCTION:CMS +CRYPTO_ocb128_encrypt 1552 1_1_0d EXIST::FUNCTION:OCB +PKCS12_item_decrypt_d2i 1553 1_1_0d EXIST::FUNCTION: +X509_LOOKUP_free 1554 1_1_0d EXIST::FUNCTION: +SXNET_it 1555 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +SXNET_it 1555 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +NETSCAPE_SPKAC_new 1556 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_get_cert_crl 1557 1_1_0d EXIST::FUNCTION: +OCSP_resp_find 1558 1_1_0d EXIST::FUNCTION:OCSP +BN_GF2m_mod_sqr_arr 1559 1_1_0d EXIST::FUNCTION:EC2M +SKF_ECCVerify 1560 1_1_0d EXIST::FUNCTION:SKF +d2i_ASIdentifiers 1561 1_1_0d EXIST::FUNCTION:RFC3779 +DH_free 1562 1_1_0d EXIST::FUNCTION:DH +SKF_MacFinal 1563 1_1_0d EXIST::FUNCTION:SKF +PKCS12_SAFEBAG_create0_p8inf 1564 1_1_0d EXIST::FUNCTION: +d2i_NETSCAPE_SPKI 1565 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_delete 1566 1_1_0d EXIST::FUNCTION: +OCSP_request_add0_id 1567 1_1_0d EXIST::FUNCTION:OCSP +POLICYQUALINFO_free 1568 1_1_0d EXIST::FUNCTION: +OPENSSL_strnlen 1569 1_1_0d EXIST::FUNCTION: +DES_options 1570 1_1_0d EXIST::FUNCTION:DES +d2i_OCSP_CERTSTATUS 1571 1_1_0d EXIST::FUNCTION:OCSP +CRYPTO_secure_allocated 1572 1_1_0d EXIST::FUNCTION: +X509_VERIFY_PARAM_set_depth 1573 1_1_0d EXIST::FUNCTION: +d2i_SM9PublicParameters_fp 1574 1_1_0d EXIST::FUNCTION:SM9,STDIO +TS_RESP_free 1575 1_1_0d EXIST::FUNCTION:TS +TS_TST_INFO_ext_free 1576 1_1_0d EXIST::FUNCTION:TS +SRP_Verify_B_mod_N 1577 1_1_0d EXIST::FUNCTION:SRP +BIO_method_name 1578 1_1_0d EXIST::FUNCTION: +ERR_load_PEM_strings 1579 1_1_0d EXIST::FUNCTION: +ASN1_STRING_dup 1580 1_1_0d EXIST::FUNCTION: +ERR_load_DSA_strings 1581 1_1_0d EXIST::FUNCTION:DSA +CMS_get1_crls 1582 1_1_0d EXIST::FUNCTION:CMS +d2i_OCSP_SERVICELOC 1583 1_1_0d EXIST::FUNCTION:OCSP +EVP_aes_256_cfb128 1584 1_1_0d EXIST::FUNCTION: +X509_check_private_key 1585 1_1_0d EXIST::FUNCTION: +SKF_EnumFiles 1586 1_1_0d EXIST::FUNCTION:SKF +SM9Signature_free 1587 1_1_0d EXIST::FUNCTION:SM9 +X509_PURPOSE_get0 1588 1_1_0d EXIST::FUNCTION: +i2b_PublicKey_bio 1589 1_1_0d EXIST::FUNCTION:DSA +d2i_OCSP_BASICRESP 1590 1_1_0d EXIST::FUNCTION:OCSP +X509V3_EXT_add_alias 1591 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_get_derive 1592 1_1_0d EXIST::FUNCTION: +TS_CONF_set_signer_digest 1593 1_1_0d EXIST::FUNCTION:TS +SEED_ecb_encrypt 1594 1_1_0d EXIST::FUNCTION:SEED +EVP_rc2_40_cbc 1595 1_1_0d EXIST::FUNCTION:RC2 +ASN1_PRINTABLE_free 1596 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_CTX_iv 1597 1_1_0d EXIST::FUNCTION: +ESS_SIGNING_CERT_free 1598 1_1_0d EXIST::FUNCTION:TS +X509_VERIFY_PARAM_add1_host 1599 1_1_0d EXIST::FUNCTION: +CRYPTO_secure_malloc 1600 1_1_0d EXIST::FUNCTION: +ENGINE_set_ex_data 1601 1_1_0d EXIST::FUNCTION:ENGINE +EC_GROUP_get_basis_type 1602 1_1_0d EXIST::FUNCTION:EC +ASN1_TIME_adj 1603 1_1_0d EXIST::FUNCTION: +BN_MONT_CTX_new 1604 1_1_0d EXIST::FUNCTION: +MD5_Update 1605 1_1_0d EXIST::FUNCTION:MD5 +BN_get0_nist_prime_521 1606 1_1_0d EXIST::FUNCTION: +PEM_write_bio_CMS_stream 1607 1_1_0d EXIST::FUNCTION:CMS +CMS_add1_ReceiptRequest 1608 1_1_0d EXIST::FUNCTION:CMS +SMIME_write_CMS 1609 1_1_0d EXIST::FUNCTION:CMS +TS_TST_INFO_get_accuracy 1610 1_1_0d EXIST::FUNCTION:TS +BUF_MEM_new 1611 1_1_0d EXIST::FUNCTION: +i2d_ASN1_UTCTIME 1612 1_1_0d EXIST::FUNCTION: +GENERAL_NAMES_free 1613 1_1_0d EXIST::FUNCTION: +EVP_EncodeFinal 1614 1_1_0d EXIST::FUNCTION: +SDF_PrintECCPrivateKey 1615 1_1_0d EXIST::FUNCTION:SDF +OPENSSL_gmtime 1616 1_1_0d EXIST::FUNCTION: +ASN1_bn_print 1617 1_1_0d EXIST::FUNCTION: +EC_POINT_point2bn 1618 1_1_0d EXIST::FUNCTION:EC +OCSP_RESPBYTES_free 1619 1_1_0d EXIST::FUNCTION:OCSP +EC_KEY_merge 1620 1_1_0d EXIST::FUNCTION:EC +OBJ_NAME_remove 1621 1_1_0d EXIST::FUNCTION: +ENGINE_set_cmd_defns 1622 1_1_0d EXIST::FUNCTION:ENGINE +UI_get_string_type 1623 1_1_0d EXIST::FUNCTION:UI +X509_STORE_CTX_get1_issuer 1624 1_1_0d EXIST::FUNCTION: +i2d_RSAPrivateKey_bio 1625 1_1_0d EXIST::FUNCTION:RSA +EVP_get_ciphernames 1626 1_1_0d EXIST::FUNCTION: +SM9_do_verify 1627 1_1_0d EXIST::FUNCTION:SM9 +X509_CRL_INFO_free 1628 1_1_0d EXIST::FUNCTION: +d2i_DSAPrivateKey 1629 1_1_0d EXIST::FUNCTION:DSA +BN_GF2m_mod_exp_arr 1630 1_1_0d EXIST::FUNCTION:EC2M +X509_STORE_set_trust 1631 1_1_0d EXIST::FUNCTION: +DH_generate_parameters_ex 1632 1_1_0d EXIST::FUNCTION:DH +PKCS7_add_attrib_content_type 1633 1_1_0d EXIST::FUNCTION: +HMAC_Final 1634 1_1_0d EXIST::FUNCTION: +RC2_cbc_encrypt 1635 1_1_0d EXIST::FUNCTION:RC2 +BN_value_one 1636 1_1_0d EXIST::FUNCTION: +EVP_MD_CTX_ctrl 1637 1_1_0d EXIST::FUNCTION: +PBKDF2PARAM_free 1638 1_1_0d EXIST::FUNCTION: +UI_add_verify_string 1639 1_1_0d EXIST::FUNCTION:UI +X509_STORE_CTX_get_by_subject 1640 1_1_0d EXIST::FUNCTION: +SM2CiphertextValue_new_from_ECCCIPHERBLOB 1641 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF,SM2 +SM9_KEY_up_ref 1642 1_1_0d EXIST::FUNCTION:SM9 +d2i_PaillierPublicKey 1643 1_1_0d EXIST::FUNCTION:PAILLIER +CRYPTO_128_unwrap_pad 1644 1_1_0d EXIST::FUNCTION: +X509_STORE_set_check_policy 1645 1_1_0d EXIST::FUNCTION: +i2d_re_X509_CRL_tbs 1646 1_1_0d EXIST::FUNCTION: +PKCS7_SIGNER_INFO_get0_algs 1647 1_1_0d EXIST::FUNCTION: +SM9_setup 1648 1_1_0d EXIST::FUNCTION:SM9 +CONF_free 1649 1_1_0d EXIST::FUNCTION: +i2d_ASN1_GENERALSTRING 1650 1_1_0d EXIST::FUNCTION: +X509_NAME_print_ex 1651 1_1_0d EXIST::FUNCTION: +DH_get_1024_160 1652 1_1_0d EXIST::FUNCTION:DH +X509_STORE_CTX_get_check_policy 1653 1_1_0d EXIST::FUNCTION: +X509_NAME_get0_der 1654 1_1_0d EXIST::FUNCTION: +X509_cmp_time 1655 1_1_0d EXIST::FUNCTION: +SCT_get_version 1656 1_1_0d EXIST::FUNCTION:CT +X509_ALGORS_it 1657 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_ALGORS_it 1657 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +SDF_InternalPrivateKeyOperation_RSA 1658 1_1_0d EXIST::FUNCTION: +CMS_RecipientInfo_kari_get0_reks 1659 1_1_0d EXIST::FUNCTION:CMS +RSA_sign_ASN1_OCTET_STRING 1660 1_1_0d EXIST::FUNCTION:RSA +TS_REQ_get_ext_count 1661 1_1_0d EXIST::FUNCTION:TS +PAILLIER_decrypt 1662 1_1_0d EXIST::FUNCTION:PAILLIER +EVP_PKEY_meth_get_cleanup 1663 1_1_0d EXIST::FUNCTION: +EC_POINT_add 1664 1_1_0d EXIST::FUNCTION:EC +ENGINE_add 1665 1_1_0d EXIST::FUNCTION:ENGINE +X509_STORE_set_get_issuer 1666 1_1_0d EXIST::FUNCTION: +i2d_PrivateKey_fp 1667 1_1_0d EXIST::FUNCTION:STDIO +X509_get0_subject_key_id 1668 1_1_0d EXIST::FUNCTION: +BIO_ctrl_wpending 1669 1_1_0d EXIST::FUNCTION: +BIO_new_bio_pair 1670 1_1_0d EXIST::FUNCTION: +DH_get_2048_224 1671 1_1_0d EXIST::FUNCTION:DH +EC_KEY_set_default_method 1672 1_1_0d EXIST::FUNCTION:EC +PKCS5_pbkdf2_set 1673 1_1_0d EXIST::FUNCTION: +X509_REQ_add_extensions 1674 1_1_0d EXIST::FUNCTION: +EVP_aes_128_ofb 1675 1_1_0d EXIST::FUNCTION: +EVP_PKCS82PKEY 1676 1_1_0d EXIST::FUNCTION: +PEM_read_X509 1677 1_1_0d EXIST::FUNCTION:STDIO +ASN1_STRING_length_set 1678 1_1_0d EXIST::FUNCTION: +EVP_idea_ofb 1679 1_1_0d EXIST::FUNCTION:IDEA +EVP_PKEY_meth_find 1680 1_1_0d EXIST::FUNCTION: +PEM_read_ECPrivateKey 1681 1_1_0d EXIST::FUNCTION:EC,STDIO +RC2_decrypt 1682 1_1_0d EXIST::FUNCTION:RC2 +OCSP_SINGLERESP_get1_ext_d2i 1683 1_1_0d EXIST::FUNCTION:OCSP +OBJ_sn2nid 1684 1_1_0d EXIST::FUNCTION: +SM9_encrypt 1685 1_1_0d EXIST::FUNCTION:SM9 +SXNETID_free 1686 1_1_0d EXIST::FUNCTION: +AUTHORITY_INFO_ACCESS_new 1687 1_1_0d EXIST::FUNCTION: +ECIES_CIPHERTEXT_VALUE_free 1688 1_1_0d EXIST::FUNCTION:ECIES +CRYPTO_mem_leaks_fp 1689 1_1_0d EXIST::FUNCTION:CRYPTO_MDEBUG,STDIO +BIO_dgram_non_fatal_error 1690 1_1_0d EXIST::FUNCTION:DGRAM +TS_RESP_create_response 1691 1_1_0d EXIST::FUNCTION:TS +RSA_meth_get_pub_dec 1692 1_1_0d EXIST::FUNCTION:RSA +OBJ_NAME_get 1693 1_1_0d EXIST::FUNCTION: +ASN1_VISIBLESTRING_new 1694 1_1_0d EXIST::FUNCTION: +EVP_EncryptUpdate 1695 1_1_0d EXIST::FUNCTION: +X509_PURPOSE_get_trust 1696 1_1_0d EXIST::FUNCTION: +EVP_CipherFinal_ex 1697 1_1_0d EXIST::FUNCTION: +BN_GF2m_mod_mul 1698 1_1_0d EXIST::FUNCTION:EC2M +IPAddressRange_new 1699 1_1_0d EXIST::FUNCTION:RFC3779 +OCSP_REQINFO_free 1700 1_1_0d EXIST::FUNCTION:OCSP +i2d_ECPrivateKey_bio 1701 1_1_0d EXIST::FUNCTION:EC +OCSP_cert_status_str 1702 1_1_0d EXIST::FUNCTION:OCSP +OpenSSL_version 1703 1_1_0d EXIST::FUNCTION: +ENGINE_set_default_DH 1704 1_1_0d EXIST::FUNCTION:ENGINE +RAND_event 1705 1_1_0d EXIST:_WIN32:FUNCTION:DEPRECATEDIN_1_1_0 +BIO_parse_hostserv 1706 1_1_0d EXIST::FUNCTION:SOCK +RSA_meth_get0_name 1707 1_1_0d EXIST::FUNCTION:RSA +USERNOTICE_it 1708 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +USERNOTICE_it 1708 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +OCSP_request_is_signed 1709 1_1_0d EXIST::FUNCTION:OCSP +X509_STORE_CTX_purpose_inherit 1710 1_1_0d EXIST::FUNCTION: +EVP_des_ecb 1711 1_1_0d EXIST::FUNCTION:DES +i2d_DSAPrivateKey_fp 1712 1_1_0d EXIST::FUNCTION:DSA,STDIO +d2i_DHxparams 1713 1_1_0d EXIST::FUNCTION:DH +BN_get0_nist_prime_224 1714 1_1_0d EXIST::FUNCTION: +DIST_POINT_it 1715 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +DIST_POINT_it 1715 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +NOTICEREF_it 1716 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +NOTICEREF_it 1716 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +OCSP_sendreq_nbio 1717 1_1_0d EXIST::FUNCTION:OCSP +CRYPTO_THREAD_set_local 1718 1_1_0d EXIST::FUNCTION: +CTLOG_get0_name 1719 1_1_0d EXIST::FUNCTION:CT +EVP_DigestSignFinal 1720 1_1_0d EXIST::FUNCTION: +X509_REQ_get_version 1721 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_set_trust 1722 1_1_0d EXIST::FUNCTION: +EVP_MD_CTX_md 1723 1_1_0d EXIST::FUNCTION: +SKF_GetPINInfo 1724 1_1_0d EXIST::FUNCTION:SKF +TS_CONF_set_certs 1725 1_1_0d EXIST::FUNCTION:TS +PEM_write_bio_X509_REQ 1726 1_1_0d EXIST::FUNCTION: +EVP_PKEY_get1_tls_encodedpoint 1727 1_1_0d EXIST::FUNCTION: +d2i_RSAPrivateKey_bio 1728 1_1_0d EXIST::FUNCTION:RSA +SKF_ExtECCDecrypt 1729 1_1_0d EXIST::FUNCTION:SKF +ASN1_item_i2d 1730 1_1_0d EXIST::FUNCTION: +SM9PublicParameters_it 1731 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:SM9 +SM9PublicParameters_it 1731 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:SM9 +UI_free 1732 1_1_0d EXIST::FUNCTION:UI +X509_VERIFY_PARAM_lookup 1733 1_1_0d EXIST::FUNCTION: +ASN1_IA5STRING_new 1734 1_1_0d EXIST::FUNCTION: +d2i_PKCS12 1735 1_1_0d EXIST::FUNCTION: +MD5 1736 1_1_0d EXIST::FUNCTION:MD5 +i2d_CERTIFICATEPOLICIES 1737 1_1_0d EXIST::FUNCTION: +OCSP_REQUEST_get_ext 1738 1_1_0d EXIST::FUNCTION:OCSP +ERR_load_SKF_strings 1739 1_1_0d EXIST::FUNCTION:SKF +EVP_sha512 1740 1_1_0d EXIST:!VMSVAX:FUNCTION: +i2d_SM9Signature 1741 1_1_0d EXIST::FUNCTION:SM9 +IPAddressChoice_new 1742 1_1_0d EXIST::FUNCTION:RFC3779 +X509_STORE_CTX_set0_trusted_stack 1743 1_1_0d EXIST::FUNCTION: +BN_get0_nist_prime_384 1744 1_1_0d EXIST::FUNCTION: +X509_REVOKED_it 1745 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_REVOKED_it 1745 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_VAL_new 1746 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_copy 1747 1_1_0d EXIST::FUNCTION: +X509_REQ_free 1748 1_1_0d EXIST::FUNCTION: +EVP_whirlpool 1749 1_1_0d EXIST::FUNCTION:WHIRLPOOL +SEED_decrypt 1750 1_1_0d EXIST::FUNCTION:SEED +PKCS12_it 1751 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS12_it 1751 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +d2i_IPAddressChoice 1752 1_1_0d EXIST::FUNCTION:RFC3779 +d2i_POLICYINFO 1753 1_1_0d EXIST::FUNCTION: +UI_dup_info_string 1754 1_1_0d EXIST::FUNCTION:UI +CMS_add1_signer 1755 1_1_0d EXIST::FUNCTION:CMS +PAILLIER_ciphertext_add 1756 1_1_0d EXIST::FUNCTION:PAILLIER +i2d_POLICYQUALINFO 1757 1_1_0d EXIST::FUNCTION: +X509_set1_notBefore 1758 1_1_0d EXIST::FUNCTION: +BIO_new_PKCS7 1759 1_1_0d EXIST::FUNCTION: +EVP_PKEY_get0_RSA 1760 1_1_0d EXIST::FUNCTION:RSA +EVP_VerifyFinal 1761 1_1_0d EXIST::FUNCTION: +d2i_X509_REVOKED 1762 1_1_0d EXIST::FUNCTION: +COMP_get_name 1763 1_1_0d EXIST::FUNCTION:COMP +OPENSSL_LH_doall 1764 1_1_0d EXIST::FUNCTION: +EDIPARTYNAME_new 1765 1_1_0d EXIST::FUNCTION: +ASN1_STRING_type_new 1766 1_1_0d EXIST::FUNCTION: +PEM_write_X509_REQ 1767 1_1_0d EXIST::FUNCTION:STDIO +i2d_re_X509_REQ_tbs 1768 1_1_0d EXIST::FUNCTION: +SDF_UnloadLibrary 1769 1_1_0d EXIST::FUNCTION:SDF +X509_add1_ext_i2d 1770 1_1_0d EXIST::FUNCTION: +EVP_DecryptInit 1771 1_1_0d EXIST::FUNCTION: +BN_bn2dec 1772 1_1_0d EXIST::FUNCTION: +d2i_PKCS8PrivateKey_bio 1773 1_1_0d EXIST::FUNCTION: +TS_REQ_get_ext 1774 1_1_0d EXIST::FUNCTION:TS +EVP_PKEY_add1_attr 1775 1_1_0d EXIST::FUNCTION: +RAND_file_name 1776 1_1_0d EXIST::FUNCTION: +ENGINE_set_pkey_asn1_meths 1777 1_1_0d EXIST::FUNCTION:ENGINE +PKCS7_dataVerify 1778 1_1_0d EXIST::FUNCTION: +X509V3_set_conf_lhash 1779 1_1_0d EXIST::FUNCTION: +X509_EXTENSION_create_by_OBJ 1780 1_1_0d EXIST::FUNCTION: +NOTICEREF_new 1781 1_1_0d EXIST::FUNCTION: +ERR_load_SDF_strings 1782 1_1_0d EXIST::FUNCTION:SDF +SKF_EncryptInit 1783 1_1_0d EXIST::FUNCTION:SKF +EVP_CIPHER_meth_set_flags 1784 1_1_0d EXIST::FUNCTION: +BN_BLINDING_is_current_thread 1785 1_1_0d EXIST::FUNCTION: +ENGINE_get_static_state 1786 1_1_0d EXIST::FUNCTION:ENGINE +ECIES_CIPHERTEXT_VALUE_set_ECCCIPHERBLOB 1787 1_1_0d EXIST::FUNCTION:EC,ECIES,GMAPI,SKF +PKCS12_create 1788 1_1_0d EXIST::FUNCTION: +DHparams_it 1789 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:DH +DHparams_it 1789 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:DH +OPENSSL_LH_free 1790 1_1_0d EXIST::FUNCTION: +X509_PURPOSE_get_by_id 1791 1_1_0d EXIST::FUNCTION: +PKCS12_add_safes 1792 1_1_0d EXIST::FUNCTION: +CMS_RecipientInfo_set0_key 1793 1_1_0d EXIST::FUNCTION:CMS +ERR_func_error_string 1794 1_1_0d EXIST::FUNCTION: +X509at_add1_attr_by_OBJ 1795 1_1_0d EXIST::FUNCTION: +PKCS7_add_recipient 1796 1_1_0d EXIST::FUNCTION: +i2d_DSAPrivateKey 1797 1_1_0d EXIST::FUNCTION:DSA +SDF_OpenDevice 1798 1_1_0d EXIST::FUNCTION: +PEM_SignInit 1799 1_1_0d EXIST::FUNCTION: +EVP_MD_meth_set_copy 1800 1_1_0d EXIST::FUNCTION: +d2i_SM9Signature_bio 1801 1_1_0d EXIST::FUNCTION:SM9 +DSA_get0_pqg 1802 1_1_0d EXIST::FUNCTION:DSA +BN_add_word 1803 1_1_0d EXIST::FUNCTION: +SKF_WaitForDevEvent 1804 1_1_0d EXIST::FUNCTION:SKF +EVP_EncryptInit_ex 1805 1_1_0d EXIST::FUNCTION: +X509v3_asid_subset 1806 1_1_0d EXIST::FUNCTION:RFC3779 +SDF_GenerateKeyWithIPK_ECC 1807 1_1_0d EXIST::FUNCTION: +X509V3_EXT_REQ_add_conf 1808 1_1_0d EXIST::FUNCTION: +EVP_aes_192_ecb 1809 1_1_0d EXIST::FUNCTION: +d2i_RSA_PSS_PARAMS 1810 1_1_0d EXIST::FUNCTION:RSA +OBJ_NAME_new_index 1811 1_1_0d EXIST::FUNCTION: +OCSP_set_max_response_length 1812 1_1_0d EXIST::FUNCTION:OCSP +i2d_ASRange 1813 1_1_0d EXIST::FUNCTION:RFC3779 +CRYPTO_ocb128_decrypt 1814 1_1_0d EXIST::FUNCTION:OCB +d2i_OCSP_ONEREQ 1815 1_1_0d EXIST::FUNCTION:OCSP +X509v3_asid_validate_path 1816 1_1_0d EXIST::FUNCTION:RFC3779 +i2d_TS_TST_INFO 1817 1_1_0d EXIST::FUNCTION:TS +X509_STORE_CTX_get_check_issued 1818 1_1_0d EXIST::FUNCTION: +PEM_read_SM9PrivateKey 1819 1_1_0d EXIST::FUNCTION:SM9,STDIO +SM2_do_sign 1820 1_1_0d EXIST::FUNCTION:SM2 +X509_STORE_CTX_get_get_issuer 1821 1_1_0d EXIST::FUNCTION: +EC_GFp_mont_method 1822 1_1_0d EXIST::FUNCTION:EC +BIO_new_socket 1823 1_1_0d EXIST::FUNCTION:SOCK +BN_mod_exp_mont 1824 1_1_0d EXIST::FUNCTION: +b2i_PrivateKey 1825 1_1_0d EXIST::FUNCTION:DSA +X509_VERIFY_PARAM_table_cleanup 1826 1_1_0d EXIST::FUNCTION: +BF_set_key 1827 1_1_0d EXIST::FUNCTION:BF +SHA512_Update 1828 1_1_0d EXIST:!VMSVAX:FUNCTION: +CMS_SignedData_init 1829 1_1_0d EXIST::FUNCTION:CMS +RSA_meth_get_init 1830 1_1_0d EXIST::FUNCTION:RSA +EVP_PKEY_meth_set_verify_recover 1831 1_1_0d EXIST::FUNCTION: +BN_GF2m_mod_inv 1832 1_1_0d EXIST::FUNCTION:EC2M +EVP_CIPHER_CTX_key_length 1833 1_1_0d EXIST::FUNCTION: +X509_ATTRIBUTE_create_by_NID 1834 1_1_0d EXIST::FUNCTION: +CRYPTO_nistcts128_decrypt 1835 1_1_0d EXIST::FUNCTION: +d2i_RSA_OAEP_PARAMS 1836 1_1_0d EXIST::FUNCTION:RSA +BIO_push 1837 1_1_0d EXIST::FUNCTION: +EVP_PKEY_keygen_init 1838 1_1_0d EXIST::FUNCTION: +TS_CONF_set_crypto_device 1839 1_1_0d EXIST::FUNCTION:ENGINE,TS +BN_GF2m_mod_mul_arr 1840 1_1_0d EXIST::FUNCTION:EC2M +OCSP_SINGLERESP_delete_ext 1841 1_1_0d EXIST::FUNCTION:OCSP +CONF_module_get_usr_data 1842 1_1_0d EXIST::FUNCTION: +CRYPTO_cts128_decrypt_block 1843 1_1_0d EXIST::FUNCTION: +TS_ACCURACY_set_micros 1844 1_1_0d EXIST::FUNCTION:TS +ASN1_STRING_set0 1845 1_1_0d EXIST::FUNCTION: +d2i_ASN1_VISIBLESTRING 1846 1_1_0d EXIST::FUNCTION: +EVP_mdc2 1847 1_1_0d EXIST::FUNCTION:MDC2 +ASN1_item_ex_i2d 1848 1_1_0d EXIST::FUNCTION: +ENGINE_up_ref 1849 1_1_0d EXIST::FUNCTION:ENGINE +TS_CONF_set_serial 1850 1_1_0d EXIST::FUNCTION:TS +PEM_write_PKCS8PrivateKey 1851 1_1_0d EXIST::FUNCTION:STDIO +EVP_PKEY_meth_get_verifyctx 1852 1_1_0d EXIST::FUNCTION: +TS_ASN1_INTEGER_print_bio 1853 1_1_0d EXIST::FUNCTION:TS +X509_STORE_add_cert 1854 1_1_0d EXIST::FUNCTION: +i2d_DHparams 1855 1_1_0d EXIST::FUNCTION:DH +DSA_get_default_method 1856 1_1_0d EXIST::FUNCTION:DSA +i2d_X509_bio 1857 1_1_0d EXIST::FUNCTION: +BIO_listen 1858 1_1_0d EXIST::FUNCTION:SOCK +NETSCAPE_SPKI_new 1859 1_1_0d EXIST::FUNCTION: +ERR_load_SM2_strings 1860 1_1_0d EXIST::FUNCTION:SM2 +BIO_ctrl_reset_read_request 1861 1_1_0d EXIST::FUNCTION: +EVP_md5 1862 1_1_0d EXIST::FUNCTION:MD5 +TS_VERIFY_CTX_free 1863 1_1_0d EXIST::FUNCTION:TS +i2d_SXNETID 1864 1_1_0d EXIST::FUNCTION: +OCSP_BASICRESP_add1_ext_i2d 1865 1_1_0d EXIST::FUNCTION:OCSP +EC_GROUP_get_ecparameters 1866 1_1_0d EXIST::FUNCTION:EC +EVP_Digest 1867 1_1_0d EXIST::FUNCTION: +X509_ATTRIBUTE_create_by_txt 1868 1_1_0d EXIST::FUNCTION: +i2d_ASN1_VISIBLESTRING 1869 1_1_0d EXIST::FUNCTION: +s2i_ASN1_IA5STRING 1870 1_1_0d EXIST::FUNCTION: +X509_policy_level_node_count 1871 1_1_0d EXIST::FUNCTION: +SKF_CreateApplication 1872 1_1_0d EXIST::FUNCTION:SKF +OCSP_SINGLERESP_add_ext 1873 1_1_0d EXIST::FUNCTION:OCSP +SKF_DeleteApplication 1874 1_1_0d EXIST::FUNCTION:SKF +X509_NAME_get_entry 1875 1_1_0d EXIST::FUNCTION: +ASN1_OCTET_STRING_NDEF_it 1876 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_OCTET_STRING_NDEF_it 1876 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +DSAparams_print_fp 1877 1_1_0d EXIST::FUNCTION:DSA,STDIO +X509_get_ex_data 1878 1_1_0d EXIST::FUNCTION: +X509_VERIFY_PARAM_get_depth 1879 1_1_0d EXIST::FUNCTION: +X509_EXTENSIONS_it 1880 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_EXTENSIONS_it 1880 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +EVP_camellia_256_ecb 1881 1_1_0d EXIST::FUNCTION:CAMELLIA +TS_STATUS_INFO_get0_failure_info 1882 1_1_0d EXIST::FUNCTION:TS +EVP_rc5_32_12_16_cbc 1883 1_1_0d EXIST::FUNCTION:RC5 +BN_is_prime_fasttest_ex 1884 1_1_0d EXIST::FUNCTION: +a2i_ASN1_STRING 1885 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_flags 1886 1_1_0d EXIST::FUNCTION: +TS_TST_INFO_get_ext_d2i 1887 1_1_0d EXIST::FUNCTION:TS +BIO_free 1888 1_1_0d EXIST::FUNCTION: +ENGINE_get_pkey_asn1_meths 1889 1_1_0d EXIST::FUNCTION:ENGINE +RSAPrivateKey_it 1890 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RSA +RSAPrivateKey_it 1890 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RSA +OPENSSL_cleanse 1891 1_1_0d EXIST::FUNCTION: +EC_curve_nist2nid 1892 1_1_0d EXIST::FUNCTION:EC +CRYPTO_gcm128_decrypt 1893 1_1_0d EXIST::FUNCTION: +TXT_DB_get_by_index 1894 1_1_0d EXIST::FUNCTION: +X509V3_EXT_add_list 1895 1_1_0d EXIST::FUNCTION: +EC_KEY_new_from_ECCPRIVATEKEYBLOB 1896 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF +X509_REQ_get_attr 1897 1_1_0d EXIST::FUNCTION: +ECDSA_do_sign 1898 1_1_0d EXIST::FUNCTION:EC +ASN1_item_digest 1899 1_1_0d EXIST::FUNCTION: +SM9_SignInit 1900 1_1_0d EXIST::FUNCTION:SM9 +BN_rshift1 1901 1_1_0d EXIST::FUNCTION: +GENERAL_SUBTREE_it 1902 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +GENERAL_SUBTREE_it 1902 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +CMS_EncryptedData_decrypt 1903 1_1_0d EXIST::FUNCTION:CMS +TS_ACCURACY_new 1904 1_1_0d EXIST::FUNCTION:TS +Camellia_decrypt 1905 1_1_0d EXIST::FUNCTION:CAMELLIA +ECDSA_do_verify 1906 1_1_0d EXIST::FUNCTION:EC +SM2_COSIGNER1_PROOF_free 1907 1_1_0d EXIST::FUNCTION:SM2 +UI_new 1908 1_1_0d EXIST::FUNCTION:UI +DSA_size 1909 1_1_0d EXIST::FUNCTION:DSA +DH_get_length 1910 1_1_0d EXIST::FUNCTION:DH +PKCS7_add_attrib_smimecap 1911 1_1_0d EXIST::FUNCTION: +BN_X931_derive_prime_ex 1912 1_1_0d EXIST::FUNCTION: +BN_mod_sub 1913 1_1_0d EXIST::FUNCTION: +i2d_TS_MSG_IMPRINT_fp 1914 1_1_0d EXIST::FUNCTION:STDIO,TS +X509_STORE_get_ex_data 1915 1_1_0d EXIST::FUNCTION: +MD4_Final 1916 1_1_0d EXIST::FUNCTION:MD4 +EVP_CIPHER_CTX_nid 1917 1_1_0d EXIST::FUNCTION: +SM9_MASTER_KEY_free 1918 1_1_0d EXIST::FUNCTION:SM9 +PEM_read_bio_DSAparams 1919 1_1_0d EXIST::FUNCTION:DSA +EVP_PKEY_get1_DSA 1920 1_1_0d EXIST::FUNCTION:DSA +ASN1_UTCTIME_adj 1921 1_1_0d EXIST::FUNCTION: +X509_policy_check 1922 1_1_0d EXIST::FUNCTION: +RSA_get0_factors 1923 1_1_0d EXIST::FUNCTION:RSA +EVP_MD_meth_get_copy 1924 1_1_0d EXIST::FUNCTION: +EVP_MD_meth_set_result_size 1925 1_1_0d EXIST::FUNCTION: +SKF_GenRSAKeyPair 1926 1_1_0d EXIST::FUNCTION:SKF +BN_mod_sqr 1927 1_1_0d EXIST::FUNCTION: +ASN1_TYPE_get_int_octetstring 1928 1_1_0d EXIST::FUNCTION: +TS_VERIFY_CTS_set_certs 1929 1_1_0d EXIST::FUNCTION:TS +X509_add_ext 1930 1_1_0d EXIST::FUNCTION: +i2d_ASN1_TYPE 1931 1_1_0d EXIST::FUNCTION: +ENGINE_register_all_pkey_asn1_meths 1932 1_1_0d EXIST::FUNCTION:ENGINE +d2i_ASN1_PRINTABLE 1933 1_1_0d EXIST::FUNCTION: +ENGINE_get_init_function 1934 1_1_0d EXIST::FUNCTION:ENGINE +ASN1_STRING_to_UTF8 1935 1_1_0d EXIST::FUNCTION: +EVP_SealFinal 1936 1_1_0d EXIST::FUNCTION:RSA +RSA_set0_key 1937 1_1_0d EXIST::FUNCTION:RSA +OPENSSL_LH_node_stats 1938 1_1_0d EXIST::FUNCTION:STDIO +EVP_PKEY_asn1_add0 1939 1_1_0d EXIST::FUNCTION: +PAILLIER_encrypt 1940 1_1_0d EXIST::FUNCTION:PAILLIER +EVP_PKEY_meth_set_encrypt 1941 1_1_0d EXIST::FUNCTION: +ASN1_STRING_TABLE_cleanup 1942 1_1_0d EXIST::FUNCTION: +OPENSSL_LH_node_usage_stats_bio 1943 1_1_0d EXIST::FUNCTION: +TS_TST_INFO_get_time 1944 1_1_0d EXIST::FUNCTION:TS +EVP_camellia_128_ctr 1945 1_1_0d EXIST::FUNCTION:CAMELLIA +TS_TST_INFO_get_exts 1946 1_1_0d EXIST::FUNCTION:TS +DES_ede3_cfb_encrypt 1947 1_1_0d EXIST::FUNCTION:DES +PEM_read_bio_PrivateKey 1948 1_1_0d EXIST::FUNCTION: +ASN1_OCTET_STRING_cmp 1949 1_1_0d EXIST::FUNCTION: +DES_cbc_encrypt 1950 1_1_0d EXIST::FUNCTION:DES +ASN1_item_pack 1951 1_1_0d EXIST::FUNCTION: +SM2_KAP_prepare 1952 1_1_0d EXIST::FUNCTION:SM2 +X509V3_EXT_print_fp 1953 1_1_0d EXIST::FUNCTION:STDIO +TS_TST_INFO_get_ext 1954 1_1_0d EXIST::FUNCTION:TS +d2i_ACCESS_DESCRIPTION 1955 1_1_0d EXIST::FUNCTION: +BN_mod_inverse 1956 1_1_0d EXIST::FUNCTION: +CRYPTO_THREAD_compare_id 1957 1_1_0d EXIST::FUNCTION: +PKCS7_get_smimecap 1958 1_1_0d EXIST::FUNCTION: +OPENSSL_LH_delete 1959 1_1_0d EXIST::FUNCTION: +Camellia_set_key 1960 1_1_0d EXIST::FUNCTION:CAMELLIA +X509_STORE_CTX_get0_chain 1961 1_1_0d EXIST::FUNCTION: +ASYNC_WAIT_CTX_free 1962 1_1_0d EXIST::FUNCTION: +PKCS12_add_friendlyname_utf8 1963 1_1_0d EXIST::FUNCTION: +BIO_f_asn1 1964 1_1_0d EXIST::FUNCTION: +SM2CiphertextValue_get_ECCCipher 1965 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF,SM2 +ASN1_TYPE_set_octetstring 1966 1_1_0d EXIST::FUNCTION: +EC_GFp_nist_method 1967 1_1_0d EXIST::FUNCTION:EC +X509_STORE_CTX_set0_verified_chain 1968 1_1_0d EXIST::FUNCTION: +d2i_AutoPrivateKey 1969 1_1_0d EXIST::FUNCTION: +BIO_set_shutdown 1970 1_1_0d EXIST::FUNCTION: +SKF_EncryptFinal 1971 1_1_0d EXIST::FUNCTION:SKF +RSA_padding_add_PKCS1_type_1 1972 1_1_0d EXIST::FUNCTION:RSA +SXNET_get_id_ulong 1973 1_1_0d EXIST::FUNCTION: +d2i_AUTHORITY_KEYID 1974 1_1_0d EXIST::FUNCTION: +X509_CERT_AUX_it 1975 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_CERT_AUX_it 1975 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +DES_quad_cksum 1976 1_1_0d EXIST::FUNCTION:DES +PEM_write_bio_CMS 1977 1_1_0d EXIST::FUNCTION:CMS +i2d_SM9Ciphertext_bio 1978 1_1_0d EXIST::FUNCTION:SM9 +LONG_it 1979 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +LONG_it 1979 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +SDF_InternalVerify_ECC 1980 1_1_0d EXIST::FUNCTION: +NETSCAPE_SPKI_sign 1981 1_1_0d EXIST::FUNCTION: +SM9_generate_master_secret 1982 1_1_0d EXIST::FUNCTION:SM9 +SM2_COSIGNER2_PROOF_new 1983 1_1_0d EXIST::FUNCTION:SM2 +X509V3_EXT_nconf 1984 1_1_0d EXIST::FUNCTION: +EVP_PKEY_set1_RSA 1985 1_1_0d EXIST::FUNCTION:RSA +SM9_wrap_key 1986 1_1_0d EXIST::FUNCTION:SM9 +ENGINE_get_id 1987 1_1_0d EXIST::FUNCTION:ENGINE +X509_VERIFY_PARAM_set_trust 1988 1_1_0d EXIST::FUNCTION: +SHA512_Transform 1989 1_1_0d EXIST:!VMSVAX:FUNCTION: +X509V3_EXT_CRL_add_conf 1990 1_1_0d EXIST::FUNCTION: +SM2_cosigner1_generate_signature 1991 1_1_0d EXIST::FUNCTION:SM2 +SKF_GenECCKeyPair 1992 1_1_0d EXIST::FUNCTION:SKF +POLICYINFO_free 1993 1_1_0d EXIST::FUNCTION: +CRYPTO_realloc 1994 1_1_0d EXIST::FUNCTION: +ASN1_OCTET_STRING_new 1995 1_1_0d EXIST::FUNCTION: +HMAC 1996 1_1_0d EXIST::FUNCTION: +X509_CRL_get_ext_count 1997 1_1_0d EXIST::FUNCTION: +DSA_generate_key 1998 1_1_0d EXIST::FUNCTION:DSA +X509_TRUST_get_by_id 1999 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_set0_dane 2000 1_1_0d EXIST::FUNCTION: +X509_PUBKEY_new 2001 1_1_0d EXIST::FUNCTION: +i2d_OCSP_REQINFO 2002 1_1_0d EXIST::FUNCTION:OCSP +TS_MSG_IMPRINT_get_algo 2003 1_1_0d EXIST::FUNCTION:TS +ASN1_INTEGER_get_uint64 2004 1_1_0d EXIST::FUNCTION: +X509_REQ_new 2005 1_1_0d EXIST::FUNCTION: +RC5_32_ofb64_encrypt 2006 1_1_0d EXIST::FUNCTION:RC5 +PEM_write_bio_Parameters 2007 1_1_0d EXIST::FUNCTION: +d2i_ECPrivateKey_fp 2008 1_1_0d EXIST::FUNCTION:EC,STDIO +ACCESS_DESCRIPTION_it 2009 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ACCESS_DESCRIPTION_it 2009 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +RSA_meth_set1_name 2010 1_1_0d EXIST::FUNCTION:RSA +SDF_DestroyKey 2011 1_1_0d EXIST::FUNCTION: +SKF_Encrypt 2012 1_1_0d EXIST::FUNCTION:SKF +ASN1_ANY_it 2013 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_ANY_it 2013 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PKCS7_set0_type_other 2014 1_1_0d EXIST::FUNCTION: +EC_KEY_set_public_key_affine_coordinates 2015 1_1_0d EXIST::FUNCTION:EC +d2i_PKCS12_SAFEBAG 2016 1_1_0d EXIST::FUNCTION: +i2d_RSA_PSS_PARAMS 2017 1_1_0d EXIST::FUNCTION:RSA +TS_STATUS_INFO_free 2018 1_1_0d EXIST::FUNCTION:TS +X509_VERIFY_PARAM_set_time 2019 1_1_0d EXIST::FUNCTION: +X509V3_set_ctx 2020 1_1_0d EXIST::FUNCTION: +X509_NAME_entry_count 2021 1_1_0d EXIST::FUNCTION: +ASYNC_is_capable 2022 1_1_0d EXIST::FUNCTION: +d2i_BASIC_CONSTRAINTS 2023 1_1_0d EXIST::FUNCTION: +d2i_TS_TST_INFO 2024 1_1_0d EXIST::FUNCTION:TS +POLICY_MAPPING_new 2025 1_1_0d EXIST::FUNCTION: +PEM_write_PKCS7 2026 1_1_0d EXIST::FUNCTION:STDIO +ASN1_UTF8STRING_free 2027 1_1_0d EXIST::FUNCTION: +EVP_sms4_cbc 2028 1_1_0d EXIST::FUNCTION:SMS4 +SKF_ExportX509Certificate 2029 1_1_0d EXIST::FUNCTION:SKF +OPENSSL_INIT_new 2030 1_1_0d EXIST::FUNCTION: +X509at_get_attr_count 2031 1_1_0d EXIST::FUNCTION: +SKF_CloseHandle 2032 1_1_0d EXIST::FUNCTION:SKF +X509_policy_tree_get0_level 2033 1_1_0d EXIST::FUNCTION: +CONF_load 2034 1_1_0d EXIST::FUNCTION: +PEM_ASN1_write 2035 1_1_0d EXIST::FUNCTION:STDIO +ENGINE_register_RAND 2036 1_1_0d EXIST::FUNCTION:ENGINE +ENGINE_cmd_is_executable 2037 1_1_0d EXIST::FUNCTION:ENGINE +ENGINE_get_digests 2038 1_1_0d EXIST::FUNCTION:ENGINE +SKF_MacUpdate 2039 1_1_0d EXIST::FUNCTION:SKF +SM2_COSIGNER1_PROOF_new 2040 1_1_0d EXIST::FUNCTION:SM2 +EVP_rc5_32_12_16_cfb64 2041 1_1_0d EXIST::FUNCTION:RC5 +X509_REQ_add1_attr_by_NID 2042 1_1_0d EXIST::FUNCTION: +PKCS12_add_CSPName_asc 2043 1_1_0d EXIST::FUNCTION: +BUF_MEM_grow_clean 2044 1_1_0d EXIST::FUNCTION: +RAND_get_rand_method 2045 1_1_0d EXIST::FUNCTION: +ZUC_128eia3_update 2046 1_1_0d EXIST::FUNCTION:ZUC +CMS_SignerInfo_set1_signer_cert 2047 1_1_0d EXIST::FUNCTION:CMS +d2i_CMS_ReceiptRequest 2048 1_1_0d EXIST::FUNCTION:CMS +X509_ATTRIBUTE_count 2049 1_1_0d EXIST::FUNCTION: +BIO_connect 2050 1_1_0d EXIST::FUNCTION:SOCK +i2d_PAILLIER_PUBKEY 2051 1_1_0d EXIST::FUNCTION:PAILLIER +ERR_load_BUF_strings 2052 1_1_0d EXIST::FUNCTION: +SDF_ExchangeDigitEnvelopeBaseOnRSA 2053 1_1_0d EXIST::FUNCTION: +ERR_remove_thread_state 2054 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0 +PKCS7_ctrl 2055 1_1_0d EXIST::FUNCTION: +DH_set0_pqg 2056 1_1_0d EXIST::FUNCTION:DH +ASN1_INTEGER_it 2057 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_INTEGER_it 2057 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +EVP_add_alg_module 2058 1_1_0d EXIST::FUNCTION: +SDF_HashInit 2059 1_1_0d EXIST::FUNCTION: +PEM_read_PaillierPrivateKey 2060 1_1_0d EXIST::FUNCTION:PAILLIER,STDIO +ASN1_add_oid_module 2061 1_1_0d EXIST::FUNCTION: +BN_options 2062 1_1_0d EXIST::FUNCTION: +BN_from_montgomery 2063 1_1_0d EXIST::FUNCTION: +EC_GFp_sm2p256_method 2064 1_1_0d EXIST::FUNCTION:EC,EC_NISTP_64_GCC_128,SM2 +ENGINE_get_default_DH 2065 1_1_0d EXIST::FUNCTION:ENGINE +TS_ACCURACY_set_millis 2066 1_1_0d EXIST::FUNCTION:TS +NETSCAPE_SPKI_free 2067 1_1_0d EXIST::FUNCTION: +CMS_EnvelopedData_create 2068 1_1_0d EXIST::FUNCTION:CMS +DSO_dsobyaddr 2069 1_1_0d EXIST::FUNCTION: +TS_TST_INFO_get_policy_id 2070 1_1_0d EXIST::FUNCTION:TS +ERR_load_OTP_strings 2071 1_1_0d EXIST::FUNCTION:OTP +SDF_ExportEncPublicKey_RSA 2072 1_1_0d EXIST::FUNCTION: +DSA_clear_flags 2073 1_1_0d EXIST::FUNCTION:DSA +X509_EXTENSION_new 2074 1_1_0d EXIST::FUNCTION: +d2i_GENERAL_NAMES 2075 1_1_0d EXIST::FUNCTION: +EVP_PKEY_CTX_set_cb 2076 1_1_0d EXIST::FUNCTION: +TS_RESP_get_status_info 2077 1_1_0d EXIST::FUNCTION:TS +SKF_UnlockDev 2078 1_1_0d EXIST::FUNCTION:SKF +EDIPARTYNAME_free 2079 1_1_0d EXIST::FUNCTION: +X509_SIG_new 2080 1_1_0d EXIST::FUNCTION: +PEM_write_bio_EC_PUBKEY 2081 1_1_0d EXIST::FUNCTION:EC +PEM_write_DSAparams 2082 1_1_0d EXIST::FUNCTION:DSA,STDIO +ASN1_NULL_new 2083 1_1_0d EXIST::FUNCTION: +EC_GROUP_have_precompute_mult 2084 1_1_0d EXIST::FUNCTION:EC +EVP_PKEY_new_mac_key 2085 1_1_0d EXIST::FUNCTION: +TS_CONF_load_cert 2086 1_1_0d EXIST::FUNCTION:TS +d2i_X509 2087 1_1_0d EXIST::FUNCTION: +X509_REVOKED_free 2088 1_1_0d EXIST::FUNCTION: +X509_print_ex_fp 2089 1_1_0d EXIST::FUNCTION:STDIO +CMS_add0_recipient_password 2090 1_1_0d EXIST::FUNCTION:CMS +EC_KEY_get0_group 2091 1_1_0d EXIST::FUNCTION:EC +EC_POINT_point2hex 2092 1_1_0d EXIST::FUNCTION:EC +EVP_EncodeBlock 2093 1_1_0d EXIST::FUNCTION: +SKF_Digest 2094 1_1_0d EXIST::FUNCTION:SKF +X509_STORE_CTX_set_error_depth 2095 1_1_0d EXIST::FUNCTION: +OCSP_RESPBYTES_new 2096 1_1_0d EXIST::FUNCTION:OCSP +CMAC_Final 2097 1_1_0d EXIST::FUNCTION:CMAC +X509_policy_node_get0_policy 2098 1_1_0d EXIST::FUNCTION: +ASN1_item_d2i 2099 1_1_0d EXIST::FUNCTION: +CMS_SignerInfo_verify 2100 1_1_0d EXIST::FUNCTION:CMS +SM9_compute_share_key_A 2101 1_1_0d EXIST::FUNCTION:SM9 +CAST_set_key 2102 1_1_0d EXIST::FUNCTION:CAST +CMS_unsigned_get_attr_by_NID 2103 1_1_0d EXIST::FUNCTION:CMS +CRYPTO_ocb128_finish 2104 1_1_0d EXIST::FUNCTION:OCB +i2d_ASN1_TIME 2105 1_1_0d EXIST::FUNCTION: +EVP_CipherFinal 2106 1_1_0d EXIST::FUNCTION: +i2d_X509_CERT_AUX 2107 1_1_0d EXIST::FUNCTION: +TS_RESP_CTX_set_accuracy 2108 1_1_0d EXIST::FUNCTION:TS +OBJ_add_object 2109 1_1_0d EXIST::FUNCTION: +PKCS1_MGF1 2110 1_1_0d EXIST::FUNCTION:RSA +ECDSA_SIG_new_from_ECCSIGNATUREBLOB 2111 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF +ERR_set_error_data 2112 1_1_0d EXIST::FUNCTION: +BN_get_rfc2409_prime_1024 2113 1_1_0d EXIST::FUNCTION: +EVP_PKEY_get_default_digest_nid 2114 1_1_0d EXIST::FUNCTION: +ERR_load_CRYPTO_strings 2115 1_1_0d EXIST:!VMS:FUNCTION: +ERR_load_CRYPTOlib_strings 2115 1_1_0d EXIST:VMS:FUNCTION: +SKF_RSASignData 2116 1_1_0d EXIST::FUNCTION:SKF +EVP_MD_meth_get_app_datasize 2117 1_1_0d EXIST::FUNCTION: +BN_get_flags 2118 1_1_0d EXIST::FUNCTION: +DH_meth_get_bn_mod_exp 2119 1_1_0d EXIST::FUNCTION:DH +CRYPTO_ocb128_init 2120 1_1_0d EXIST::FUNCTION:OCB +ERR_clear_error 2121 1_1_0d EXIST::FUNCTION: +EC_POINT_get_affine_coordinates_GF2m 2122 1_1_0d EXIST::FUNCTION:EC,EC2M +RSA_get0_crt_params 2123 1_1_0d EXIST::FUNCTION:RSA +ASN1_d2i_bio 2124 1_1_0d EXIST::FUNCTION: +SMIME_read_ASN1 2125 1_1_0d EXIST::FUNCTION: +X509_NAME_print_ex_fp 2126 1_1_0d EXIST::FUNCTION:STDIO +CMS_ReceiptRequest_it 2127 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:CMS +CMS_ReceiptRequest_it 2127 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:CMS +BN_generate_dsa_nonce 2128 1_1_0d EXIST::FUNCTION: +SM9_extract_public_parameters 2129 1_1_0d EXIST::FUNCTION:SM9 +OCSP_ONEREQ_free 2130 1_1_0d EXIST::FUNCTION:OCSP +EVP_sms4_ofb 2131 1_1_0d EXIST::FUNCTION:SMS4 +X509_get_ext_by_NID 2132 1_1_0d EXIST::FUNCTION: +RSA_OAEP_PARAMS_it 2133 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RSA +RSA_OAEP_PARAMS_it 2133 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RSA +X509v3_addr_add_inherit 2134 1_1_0d EXIST::FUNCTION:RFC3779 +i2d_ECCCipher 2135 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF +PKCS7_ENC_CONTENT_new 2136 1_1_0d EXIST::FUNCTION: +SDF_ReleasePrivateKeyAccessRight 2137 1_1_0d EXIST::FUNCTION: +ENGINE_by_id 2138 1_1_0d EXIST::FUNCTION:ENGINE +TS_RESP_CTX_add_md 2139 1_1_0d EXIST::FUNCTION:TS +ASRange_it 2140 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779 +ASRange_it 2140 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779 +BUF_MEM_grow 2141 1_1_0d EXIST::FUNCTION: +EVP_PKEY_get0_SM9 2142 1_1_0d EXIST::FUNCTION:SM9 +ASN1_BIT_STRING_it 2143 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_BIT_STRING_it 2143 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +CONF_modules_unload 2144 1_1_0d EXIST::FUNCTION: +ASIdOrRange_free 2145 1_1_0d EXIST::FUNCTION:RFC3779 +BF_encrypt 2146 1_1_0d EXIST::FUNCTION:BF +PKCS7_DIGEST_new 2147 1_1_0d EXIST::FUNCTION: +SM2_do_verify 2148 1_1_0d EXIST::FUNCTION:SM2 +BIO_debug_callback 2149 1_1_0d EXIST::FUNCTION: +ASYNC_block_pause 2150 1_1_0d EXIST::FUNCTION: +PEM_write_bio_PKCS8 2151 1_1_0d EXIST::FUNCTION: +BIO_f_cipher 2152 1_1_0d EXIST::FUNCTION: +EVP_EncryptFinal 2153 1_1_0d EXIST::FUNCTION: +X509_REQ_add1_attr_by_txt 2154 1_1_0d EXIST::FUNCTION: +CMS_RecipientInfo_kari_set0_pkey 2155 1_1_0d EXIST::FUNCTION:CMS +RSA_new_from_RSAPUBLICKEYBLOB 2156 1_1_0d EXIST::FUNCTION:GMAPI,RSA,SKF +X509_get0_signature 2157 1_1_0d EXIST::FUNCTION: +BN_sm2_mod_256 2158 1_1_0d EXIST::FUNCTION:SM2 +NCONF_free_data 2159 1_1_0d EXIST::FUNCTION: +EVP_MD_do_all 2160 1_1_0d EXIST::FUNCTION: +PKCS7_cert_from_signer_info 2161 1_1_0d EXIST::FUNCTION: +X509_STORE_get_cert_crl 2162 1_1_0d EXIST::FUNCTION: +X509_up_ref 2163 1_1_0d EXIST::FUNCTION: +i2d_ASN1_IA5STRING 2164 1_1_0d EXIST::FUNCTION: +i2a_ASN1_INTEGER 2165 1_1_0d EXIST::FUNCTION: +ENGINE_register_pkey_meths 2166 1_1_0d EXIST::FUNCTION:ENGINE +DH_meth_get0_app_data 2167 1_1_0d EXIST::FUNCTION:DH +SEED_ofb128_encrypt 2168 1_1_0d EXIST::FUNCTION:SEED +EVP_PKEY_CTX_get_app_data 2169 1_1_0d EXIST::FUNCTION: +X509_CRL_set_version 2170 1_1_0d EXIST::FUNCTION: +NETSCAPE_SPKI_set_pubkey 2171 1_1_0d EXIST::FUNCTION: +EVP_PKEY_CTX_set0_keygen_info 2172 1_1_0d EXIST::FUNCTION: +X509_REVOKED_add_ext 2173 1_1_0d EXIST::FUNCTION: +X509V3_EXT_get_nid 2174 1_1_0d EXIST::FUNCTION: +EVP_PKEY_print_public 2175 1_1_0d EXIST::FUNCTION: +EVP_md2 2176 1_1_0d EXIST::FUNCTION:MD2 +SXNET_free 2177 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_CTX_ctrl 2178 1_1_0d EXIST::FUNCTION: +X509_CRL_set_issuer_name 2179 1_1_0d EXIST::FUNCTION: +EC_GROUP_get_trinomial_basis 2180 1_1_0d EXIST::FUNCTION:EC,EC2M +X509_CRL_get_REVOKED 2181 1_1_0d EXIST::FUNCTION: +PEM_read_bio_Parameters 2182 1_1_0d EXIST::FUNCTION: +BN_clear 2183 1_1_0d EXIST::FUNCTION: +EVP_MD_meth_new 2184 1_1_0d EXIST::FUNCTION: +DH_new_method 2185 1_1_0d EXIST::FUNCTION:DH +PEM_write_NETSCAPE_CERT_SEQUENCE 2186 1_1_0d EXIST::FUNCTION:STDIO +SDF_GenerateKeyWithECC 2187 1_1_0d EXIST::FUNCTION: +i2d_PUBKEY_fp 2188 1_1_0d EXIST::FUNCTION:STDIO +BIO_callback_ctrl 2189 1_1_0d EXIST::FUNCTION: +SDF_GenerateKeyWithEPK_ECC 2190 1_1_0d EXIST::FUNCTION: +X509_CRL_new 2191 1_1_0d EXIST::FUNCTION: +X509_TRUST_set_default 2192 1_1_0d EXIST::FUNCTION: +OCSP_SIGNATURE_free 2193 1_1_0d EXIST::FUNCTION:OCSP +ASN1_T61STRING_it 2194 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_T61STRING_it 2194 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_subject_name_hash_old 2195 1_1_0d EXIST::FUNCTION:MD5 +TS_ACCURACY_get_seconds 2196 1_1_0d EXIST::FUNCTION:TS +ECParameters_print 2197 1_1_0d EXIST::FUNCTION:EC +v2i_GENERAL_NAME_ex 2198 1_1_0d EXIST::FUNCTION: +X509_digest 2199 1_1_0d EXIST::FUNCTION: +i2d_CMS_bio_stream 2200 1_1_0d EXIST::FUNCTION:CMS +DH_get_ex_data 2201 1_1_0d EXIST::FUNCTION:DH +CRYPTO_secure_zalloc 2202 1_1_0d EXIST::FUNCTION: +d2i_PKCS8_PRIV_KEY_INFO_bio 2203 1_1_0d EXIST::FUNCTION: +X509_REVOKED_get_ext_by_critical 2204 1_1_0d EXIST::FUNCTION: +CRYPTO_ccm128_tag 2205 1_1_0d EXIST::FUNCTION: +ASN1_STRING_get_default_mask 2206 1_1_0d EXIST::FUNCTION: +SDF_ExchangeDigitEnvelopeBaseOnECC 2207 1_1_0d EXIST::FUNCTION: +SCT_set0_signature 2208 1_1_0d EXIST::FUNCTION:CT +EC_POINT_method_of 2209 1_1_0d EXIST::FUNCTION:EC +ASN1_STRING_get0_data 2210 1_1_0d EXIST::FUNCTION: +BIO_s_log 2211 1_1_0d EXIST:!WIN32,!macintosh:FUNCTION: +NAME_CONSTRAINTS_new 2212 1_1_0d EXIST::FUNCTION: +X509_NAME_hash 2213 1_1_0d EXIST::FUNCTION: +X509_CRL_digest 2214 1_1_0d EXIST::FUNCTION: +OTP_generate 2215 1_1_0d EXIST::FUNCTION:OTP +BN_GF2m_mod_solve_quad 2216 1_1_0d EXIST::FUNCTION:EC2M +EVP_aes_192_wrap_pad 2217 1_1_0d EXIST::FUNCTION: +EVP_aes_192_cfb1 2218 1_1_0d EXIST::FUNCTION: +BN_GF2m_mod_inv_arr 2219 1_1_0d EXIST::FUNCTION:EC2M +X509v3_get_ext_by_NID 2220 1_1_0d EXIST::FUNCTION: +BIO_meth_get_create 2221 1_1_0d EXIST::FUNCTION: +ASN1_sign 2222 1_1_0d EXIST::FUNCTION: +d2i_SM2CiphertextValue_fp 2223 1_1_0d EXIST::FUNCTION:SM2,STDIO +d2i_RSA_PUBKEY 2224 1_1_0d EXIST::FUNCTION:RSA +X509_STORE_CTX_set0_untrusted 2225 1_1_0d EXIST::FUNCTION: +d2i_X509_CERT_AUX 2226 1_1_0d EXIST::FUNCTION: +OCSP_REQ_CTX_nbio 2227 1_1_0d EXIST::FUNCTION:OCSP +BN_RECP_CTX_set 2228 1_1_0d EXIST::FUNCTION: +ASN1_PCTX_set_oid_flags 2229 1_1_0d EXIST::FUNCTION: +X509_time_adj 2230 1_1_0d EXIST::FUNCTION: +X509_VERIFY_PARAM_get_time 2231 1_1_0d EXIST::FUNCTION: +X509_verify_cert 2232 1_1_0d EXIST::FUNCTION: +EVP_cast5_ofb 2233 1_1_0d EXIST::FUNCTION:CAST +EVP_PBE_find 2234 1_1_0d EXIST::FUNCTION: +ENGINE_set_default_pkey_asn1_meths 2235 1_1_0d EXIST::FUNCTION:ENGINE +ENGINE_load_private_key 2236 1_1_0d EXIST::FUNCTION:ENGINE +ASN1_INTEGER_get_int64 2237 1_1_0d EXIST::FUNCTION: +OBJ_NAME_do_all_sorted 2238 1_1_0d EXIST::FUNCTION: +X509_EXTENSION_create_by_NID 2239 1_1_0d EXIST::FUNCTION: +TS_TST_INFO_set_time 2240 1_1_0d EXIST::FUNCTION:TS +PKCS12_decrypt_skey 2241 1_1_0d EXIST::FUNCTION: +POLICY_MAPPING_it 2242 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +POLICY_MAPPING_it 2242 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +DES_encrypt2 2243 1_1_0d EXIST::FUNCTION:DES +SHA1_Init 2244 1_1_0d EXIST::FUNCTION: +DH_meth_get_generate_params 2245 1_1_0d EXIST::FUNCTION:DH +SKF_Decrypt 2246 1_1_0d EXIST::FUNCTION:SKF +EVP_MD_CTX_copy_ex 2247 1_1_0d EXIST::FUNCTION: +HMAC_Init 2248 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0 +X509_NAME_ENTRY_free 2249 1_1_0d EXIST::FUNCTION: +X509_check_ip 2250 1_1_0d EXIST::FUNCTION: +EVP_seed_ecb 2251 1_1_0d EXIST::FUNCTION:SEED +ASN1_TYPE_get_octetstring 2252 1_1_0d EXIST::FUNCTION: +EVP_des_ede_cbc 2253 1_1_0d EXIST::FUNCTION:DES +RSA_padding_add_PKCS1_OAEP_mgf1 2254 1_1_0d EXIST::FUNCTION:RSA +BN_get_rfc3526_prime_3072 2255 1_1_0d EXIST::FUNCTION: +DSA_meth_get_sign 2256 1_1_0d EXIST::FUNCTION:DSA +v2i_ASN1_BIT_STRING 2257 1_1_0d EXIST::FUNCTION: +X509_ATTRIBUTE_dup 2258 1_1_0d EXIST::FUNCTION: +EVP_MD_get_sgd 2259 1_1_0d EXIST::FUNCTION:GMAPI +ZUC_128eia3_set_key 2260 1_1_0d EXIST::FUNCTION:ZUC +X509_STORE_set_cleanup 2261 1_1_0d EXIST::FUNCTION: +PKCS12_parse 2262 1_1_0d EXIST::FUNCTION: +BN_GENCB_free 2263 1_1_0d EXIST::FUNCTION: +EVP_PKEY_new 2264 1_1_0d EXIST::FUNCTION: +SM9_extract_public_key 2265 1_1_0d EXIST::FUNCTION:SM9 +i2d_RSAPublicKey 2266 1_1_0d EXIST::FUNCTION:RSA +X509_STORE_CTX_get_check_crl 2267 1_1_0d EXIST::FUNCTION: +DH_meth_get_init 2268 1_1_0d EXIST::FUNCTION:DH +i2d_PKCS12_BAGS 2269 1_1_0d EXIST::FUNCTION: +ENGINE_register_all_RSA 2270 1_1_0d EXIST::FUNCTION:ENGINE +UI_get_input_flags 2271 1_1_0d EXIST::FUNCTION:UI +i2d_ESS_SIGNING_CERT 2272 1_1_0d EXIST::FUNCTION:TS +X509_CRL_set_meth_data 2273 1_1_0d EXIST::FUNCTION: +X509_LOOKUP_file 2274 1_1_0d EXIST::FUNCTION: +i2d_SM9Signature_bio 2275 1_1_0d EXIST::FUNCTION:SM9 +EVP_md4 2276 1_1_0d EXIST::FUNCTION:MD4 +i2d_OCSP_RESPONSE 2277 1_1_0d EXIST::FUNCTION:OCSP +d2i_PKCS7 2278 1_1_0d EXIST::FUNCTION: +DES_string_to_2keys 2279 1_1_0d EXIST::FUNCTION:DES +X509_STORE_CTX_get0_current_crl 2280 1_1_0d EXIST::FUNCTION: +d2i_ASN1_IA5STRING 2281 1_1_0d EXIST::FUNCTION: +X509_LOOKUP_ctrl 2282 1_1_0d EXIST::FUNCTION: +CRYPTO_mem_debug_pop 2283 1_1_0d EXIST::FUNCTION:CRYPTO_MDEBUG +PKCS7_get_attribute 2284 1_1_0d EXIST::FUNCTION: +X509_PURPOSE_set 2285 1_1_0d EXIST::FUNCTION: +OCSP_resp_count 2286 1_1_0d EXIST::FUNCTION:OCSP +PEM_read_bio_X509_REQ 2287 1_1_0d EXIST::FUNCTION: +EVP_chacha20_poly1305 2288 1_1_0d EXIST::FUNCTION:CHACHA,POLY1305 +SM2CiphertextValue_new_from_ECCCipher 2289 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF,SM2 +X509_VERIFY_PARAM_new 2290 1_1_0d EXIST::FUNCTION: +CRYPTO_THREAD_write_lock 2291 1_1_0d EXIST::FUNCTION: +PEM_write_bio_PAILLIER_PUBKEY 2292 1_1_0d EXIST::FUNCTION:PAILLIER +SEED_set_key 2293 1_1_0d EXIST::FUNCTION:SEED +ASN1_UTCTIME_cmp_time_t 2294 1_1_0d EXIST::FUNCTION: +CRL_DIST_POINTS_free 2295 1_1_0d EXIST::FUNCTION: +UI_UTIL_read_pw 2296 1_1_0d EXIST::FUNCTION:UI +SKF_ConnectDev 2297 1_1_0d EXIST::FUNCTION:SKF +EC_POINT_set_to_infinity 2298 1_1_0d EXIST::FUNCTION:EC +EVP_PKEY_verify 2299 1_1_0d EXIST::FUNCTION: +d2i_OCSP_REVOKEDINFO 2300 1_1_0d EXIST::FUNCTION:OCSP +OPENSSL_cleanup 2301 1_1_0d EXIST::FUNCTION: +EVP_camellia_256_cbc 2302 1_1_0d EXIST::FUNCTION:CAMELLIA +PKCS12_key_gen_utf8 2303 1_1_0d EXIST::FUNCTION: +AES_ecb_encrypt 2304 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_meth_set_ctrl 2305 1_1_0d EXIST::FUNCTION: +EVP_PKEY_asn1_find 2306 1_1_0d EXIST::FUNCTION: +EC_POINT_mul 2307 1_1_0d EXIST::FUNCTION:EC +ASN1_SCTX_get_flags 2308 1_1_0d EXIST::FUNCTION: +EVP_PKEY_CTX_free 2309 1_1_0d EXIST::FUNCTION: +ASN1_PRINTABLESTRING_it 2310 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_PRINTABLESTRING_it 2310 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PKCS12_pack_authsafes 2311 1_1_0d EXIST::FUNCTION: +X509_STORE_unlock 2312 1_1_0d EXIST::FUNCTION: +i2d_PKCS7_SIGNER_INFO 2313 1_1_0d EXIST::FUNCTION: +EVP_PKEY_asn1_set_private 2314 1_1_0d EXIST::FUNCTION: +CRYPTO_strndup 2315 1_1_0d EXIST::FUNCTION: +X509_verify_cert_error_string 2316 1_1_0d EXIST::FUNCTION: +ASN1_item_sign 2317 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_CTX_test_flags 2318 1_1_0d EXIST::FUNCTION: +X509_REVOKED_set_serialNumber 2319 1_1_0d EXIST::FUNCTION: +PKCS12_init 2320 1_1_0d EXIST::FUNCTION: +X509_ATTRIBUTE_set1_data 2321 1_1_0d EXIST::FUNCTION: +DSO_merge 2322 1_1_0d EXIST::FUNCTION: +i2d_OCSP_CERTSTATUS 2323 1_1_0d EXIST::FUNCTION:OCSP +d2i_SM2_COSIGNER1_PROOF 2324 1_1_0d EXIST::FUNCTION:SM2 +RSA_set_RSAPRIVATEKEYBLOB 2325 1_1_0d EXIST::FUNCTION:GMAPI,RSA,SKF +Camellia_cbc_encrypt 2326 1_1_0d EXIST::FUNCTION:CAMELLIA +CONF_set_nconf 2327 1_1_0d EXIST::FUNCTION: +PEM_write_X509_REQ_NEW 2328 1_1_0d EXIST::FUNCTION:STDIO +OCSP_copy_nonce 2329 1_1_0d EXIST::FUNCTION:OCSP +CRYPTO_atomic_add 2330 1_1_0d EXIST::FUNCTION: +SCT_validate 2331 1_1_0d EXIST::FUNCTION:CT +SKF_ExtECCVerify 2332 1_1_0d EXIST::FUNCTION:SKF +SHA1_Update 2333 1_1_0d EXIST::FUNCTION: +RSA_verify_ASN1_OCTET_STRING 2334 1_1_0d EXIST::FUNCTION:RSA +CMS_ReceiptRequest_create0 2335 1_1_0d EXIST::FUNCTION:CMS +CTLOG_new 2336 1_1_0d EXIST::FUNCTION:CT +IPAddressOrRange_it 2337 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779 +IPAddressOrRange_it 2337 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779 +EVP_PKEY_asn1_new 2338 1_1_0d EXIST::FUNCTION: +SM2_KAP_CTX_cleanup 2339 1_1_0d EXIST::FUNCTION:SM2 +i2d_CMS_ContentInfo 2340 1_1_0d EXIST::FUNCTION:CMS +DES_ecb3_encrypt 2341 1_1_0d EXIST::FUNCTION:DES +CRYPTO_ocb128_aad 2342 1_1_0d EXIST::FUNCTION:OCB +UI_get0_result 2343 1_1_0d EXIST::FUNCTION:UI +BIO_socket 2344 1_1_0d EXIST::FUNCTION:SOCK +BN_exp 2345 1_1_0d EXIST::FUNCTION: +EVP_MD_meth_free 2346 1_1_0d EXIST::FUNCTION: +EVP_PKEY_bits 2347 1_1_0d EXIST::FUNCTION: +X509_CRL_dup 2348 1_1_0d EXIST::FUNCTION: +CMS_unsigned_add1_attr_by_NID 2349 1_1_0d EXIST::FUNCTION:CMS +i2a_ASN1_ENUMERATED 2350 1_1_0d EXIST::FUNCTION: +SKF_VerifyPIN 2351 1_1_0d EXIST::FUNCTION:SKF +SKF_ExportRSAPublicKey 2352 1_1_0d EXIST::FUNCTION:SKF +BIO_meth_set_destroy 2353 1_1_0d EXIST::FUNCTION: +EVP_get_default_digest 2354 1_1_0d EXIST::FUNCTION: +PKCS12_add_key 2355 1_1_0d EXIST::FUNCTION: +NETSCAPE_SPKI_b64_decode 2356 1_1_0d EXIST::FUNCTION: +PKCS12_BAGS_it 2357 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS12_BAGS_it 2357 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509V3_add1_i2d 2358 1_1_0d EXIST::FUNCTION: +PEM_ASN1_write_bio 2359 1_1_0d EXIST::FUNCTION: +EVP_PKEY_set_type 2360 1_1_0d EXIST::FUNCTION: +EC_GROUP_free 2361 1_1_0d EXIST::FUNCTION:EC +TS_REQ_get_nonce 2362 1_1_0d EXIST::FUNCTION:TS +RSA_set_RSArefPublicKey 2363 1_1_0d EXIST::FUNCTION:GMAPI,RSA,SDF +X509_check_purpose 2364 1_1_0d EXIST::FUNCTION: +ENGINE_register_complete 2365 1_1_0d EXIST::FUNCTION:ENGINE +EVP_PKEY_security_bits 2366 1_1_0d EXIST::FUNCTION: +d2i_X509_NAME_ENTRY 2367 1_1_0d EXIST::FUNCTION: +ENGINE_add_conf_module 2368 1_1_0d EXIST::FUNCTION:ENGINE +OCSP_RESPID_set_by_key 2369 1_1_0d EXIST::FUNCTION:OCSP +EVP_CIPHER_meth_free 2370 1_1_0d EXIST::FUNCTION: +ENGINE_unregister_RSA 2371 1_1_0d EXIST::FUNCTION:ENGINE +DES_xcbc_encrypt 2372 1_1_0d EXIST::FUNCTION:DES +TS_CONF_set_ess_cert_id_chain 2373 1_1_0d EXIST::FUNCTION:TS +PEM_read_bio_PAILLIER_PUBKEY 2374 1_1_0d EXIST::FUNCTION:PAILLIER +UI_get0_action_string 2375 1_1_0d EXIST::FUNCTION:UI +BIO_ADDR_rawaddress 2376 1_1_0d EXIST::FUNCTION:SOCK +PKCS8_pkey_get0_attrs 2377 1_1_0d EXIST::FUNCTION: +i2d_TS_TST_INFO_bio 2378 1_1_0d EXIST::FUNCTION:TS +EC_POINT_set_affine_coordinates_GF2m 2379 1_1_0d EXIST::FUNCTION:EC,EC2M +EVP_MD_flags 2380 1_1_0d EXIST::FUNCTION: +DSA_sign_setup 2381 1_1_0d EXIST::FUNCTION:DSA +HMAC_Init_ex 2382 1_1_0d EXIST::FUNCTION: +BIO_nread 2383 1_1_0d EXIST::FUNCTION: +DSA_meth_set_keygen 2384 1_1_0d EXIST::FUNCTION:DSA +BF_cfb64_encrypt 2385 1_1_0d EXIST::FUNCTION:BF +ASYNC_init_thread 2386 1_1_0d EXIST::FUNCTION: +COMP_CTX_new 2387 1_1_0d EXIST::FUNCTION:COMP +EVP_rc2_ecb 2388 1_1_0d EXIST::FUNCTION:RC2 +TS_VERIFY_CTX_set_data 2389 1_1_0d EXIST::FUNCTION:TS +COMP_expand_block 2390 1_1_0d EXIST::FUNCTION:COMP +OBJ_find_sigid_by_algs 2391 1_1_0d EXIST::FUNCTION: +X509_supported_extension 2392 1_1_0d EXIST::FUNCTION: +i2d_PKCS7_ENVELOPE 2393 1_1_0d EXIST::FUNCTION: +OCSP_sendreq_bio 2394 1_1_0d EXIST::FUNCTION:OCSP +BIO_sock_non_fatal_error 2395 1_1_0d EXIST::FUNCTION:SOCK +BIO_asn1_set_suffix 2396 1_1_0d EXIST::FUNCTION: +EC_POINT_set_compressed_coordinates_GF2m 2397 1_1_0d EXIST::FUNCTION:EC,EC2M +ASN1_INTEGER_set_int64 2398 1_1_0d EXIST::FUNCTION: +X509_policy_node_get0_qualifiers 2399 1_1_0d EXIST::FUNCTION: +EC_KEY_precompute_mult 2400 1_1_0d EXIST::FUNCTION:EC +CMS_SignerInfo_get0_pkey_ctx 2401 1_1_0d EXIST::FUNCTION:CMS +TS_REQ_ext_free 2402 1_1_0d EXIST::FUNCTION:TS +i2d_ASN1_SET_ANY 2403 1_1_0d EXIST::FUNCTION: +AUTHORITY_KEYID_new 2404 1_1_0d EXIST::FUNCTION: +PEM_write_ECPKParameters 2405 1_1_0d EXIST::FUNCTION:EC,STDIO +X509_LOOKUP_by_subject 2406 1_1_0d EXIST::FUNCTION: +i2t_ASN1_OBJECT 2407 1_1_0d EXIST::FUNCTION: +X509_EXTENSION_get_object 2408 1_1_0d EXIST::FUNCTION: +SM2_cosigner1_generate_proof 2409 1_1_0d EXIST::FUNCTION:SM2 +SKF_WriteFile 2410 1_1_0d EXIST::FUNCTION:SKF +EVP_des_ede3_cfb1 2411 1_1_0d EXIST::FUNCTION:DES +BN_mod_add 2412 1_1_0d EXIST::FUNCTION: +EC_GROUP_get_point_conversion_form 2413 1_1_0d EXIST::FUNCTION:EC +RSA_padding_check_PKCS1_OAEP_mgf1 2414 1_1_0d EXIST::FUNCTION:RSA +ZUC_128eea3_set_key 2415 1_1_0d EXIST::FUNCTION:ZUC +SM9_do_sign 2416 1_1_0d EXIST::FUNCTION:SM9 +TS_X509_ALGOR_print_bio 2417 1_1_0d EXIST::FUNCTION:TS +TS_RESP_set_status_info 2418 1_1_0d EXIST::FUNCTION:TS +EC_KEY_up_ref 2419 1_1_0d EXIST::FUNCTION:EC +a2i_ASN1_ENUMERATED 2420 1_1_0d EXIST::FUNCTION: +EC_KEY_key2buf 2421 1_1_0d EXIST::FUNCTION:EC +ENGINE_set_default_string 2422 1_1_0d EXIST::FUNCTION:ENGINE +ERR_load_TS_strings 2423 1_1_0d EXIST::FUNCTION:TS +OBJ_add_sigid 2424 1_1_0d EXIST::FUNCTION: +d2i_TS_TST_INFO_bio 2425 1_1_0d EXIST::FUNCTION:TS +BIO_dgram_sctp_msg_waiting 2426 1_1_0d EXIST::FUNCTION:DGRAM,SCTP +DH_meth_set_finish 2427 1_1_0d EXIST::FUNCTION:DH +ESS_CERT_ID_free 2428 1_1_0d EXIST::FUNCTION:TS +OPENSSL_LH_set_down_load 2429 1_1_0d EXIST::FUNCTION: +i2d_TS_RESP_bio 2430 1_1_0d EXIST::FUNCTION:TS +BN_GENCB_set 2431 1_1_0d EXIST::FUNCTION: +DES_ofb64_encrypt 2432 1_1_0d EXIST::FUNCTION:DES +TS_TST_INFO_set_msg_imprint 2433 1_1_0d EXIST::FUNCTION:TS +EVP_PKEY_CTX_hex2ctrl 2434 1_1_0d EXIST::FUNCTION: +i2d_ECParameters 2435 1_1_0d EXIST::FUNCTION:EC +KDF_get_x9_63 2436 1_1_0d EXIST::FUNCTION: +X509_VERIFY_PARAM_get0_peername 2437 1_1_0d EXIST::FUNCTION: +OCSP_REQUEST_print 2438 1_1_0d EXIST::FUNCTION:OCSP +OCSP_onereq_get0_id 2439 1_1_0d EXIST::FUNCTION:OCSP +PKCS7_simple_smimecap 2440 1_1_0d EXIST::FUNCTION: +CMS_digest_verify 2441 1_1_0d EXIST::FUNCTION:CMS +PBEPARAM_it 2442 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PBEPARAM_it 2442 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +EC_KEY_set_default_secg_method 2443 1_1_0d EXIST::FUNCTION:SM2 +X509_set_ex_data 2444 1_1_0d EXIST::FUNCTION: +PEM_write_bio_DSAparams 2445 1_1_0d EXIST::FUNCTION:DSA +SKF_GetFileInfo 2446 1_1_0d EXIST::FUNCTION:SKF +X509_set_proxy_pathlen 2447 1_1_0d EXIST::FUNCTION: +CMS_compress 2448 1_1_0d EXIST::FUNCTION:CMS +EC_GROUP_set_curve_GFp 2449 1_1_0d EXIST::FUNCTION:EC +PEM_write_bio_PKCS8_PRIV_KEY_INFO 2450 1_1_0d EXIST::FUNCTION: +EC_GROUP_get0_seed 2451 1_1_0d EXIST::FUNCTION:EC +OCSP_RESPDATA_it 2452 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:OCSP +OCSP_RESPDATA_it 2452 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:OCSP +X509_OBJECT_new 2453 1_1_0d EXIST::FUNCTION: +SHA512 2454 1_1_0d EXIST:!VMSVAX:FUNCTION: +EVP_DecryptFinal 2455 1_1_0d EXIST::FUNCTION: +RSA_set_RSArefPrivateKey 2456 1_1_0d EXIST::FUNCTION:GMAPI,RSA,SDF +X509_STORE_CTX_get1_crls 2457 1_1_0d EXIST::FUNCTION: +i2d_ASN1_NULL 2458 1_1_0d EXIST::FUNCTION: +EVP_PKEY_asn1_set_free 2459 1_1_0d EXIST::FUNCTION: +PEM_read 2460 1_1_0d EXIST::FUNCTION:STDIO +X509v3_get_ext 2461 1_1_0d EXIST::FUNCTION: +PKCS7_add_signed_attribute 2462 1_1_0d EXIST::FUNCTION: +X509_get0_serialNumber 2463 1_1_0d EXIST::FUNCTION: +EVP_PKEY_free 2464 1_1_0d EXIST::FUNCTION: +X509V3_EXT_d2i 2465 1_1_0d EXIST::FUNCTION: +i2d_DIST_POINT 2466 1_1_0d EXIST::FUNCTION: +BIO_new_dgram 2467 1_1_0d EXIST::FUNCTION:DGRAM +d2i_PKCS7_ISSUER_AND_SERIAL 2468 1_1_0d EXIST::FUNCTION: +UI_construct_prompt 2469 1_1_0d EXIST::FUNCTION:UI +X509_STORE_CTX_get0_untrusted 2470 1_1_0d EXIST::FUNCTION: +DIST_POINT_NAME_it 2471 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +DIST_POINT_NAME_it 2471 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +i2d_PKCS7_DIGEST 2472 1_1_0d EXIST::FUNCTION: +X509_policy_tree_get0_policies 2473 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_get_sign 2474 1_1_0d EXIST::FUNCTION: +ECDSA_SIG_get0 2475 1_1_0d EXIST::FUNCTION:EC +X509_REQ_add1_attr 2476 1_1_0d EXIST::FUNCTION: +SKF_ChangePIN 2477 1_1_0d EXIST::FUNCTION:SKF +EVP_PKEY_meth_set_ctrl 2478 1_1_0d EXIST::FUNCTION: +SKF_ImportRSAKeyPair 2479 1_1_0d EXIST::FUNCTION:SKF +TS_CONF_set_clock_precision_digits 2480 1_1_0d EXIST::FUNCTION:TS +X509_REVOKED_get_ext_count 2481 1_1_0d EXIST::FUNCTION: +X509v3_addr_add_prefix 2482 1_1_0d EXIST::FUNCTION:RFC3779 +RAND_egd_bytes 2483 1_1_0d EXIST::FUNCTION:EGD +CRYPTO_dup_ex_data 2484 1_1_0d EXIST::FUNCTION: +SCT_set_signature_nid 2485 1_1_0d EXIST::FUNCTION:CT +BN_set_word 2486 1_1_0d EXIST::FUNCTION: +OCSP_resp_find_status 2487 1_1_0d EXIST::FUNCTION:OCSP +PKCS8_pkey_add1_attr_by_NID 2488 1_1_0d EXIST::FUNCTION: +CMS_get0_content 2489 1_1_0d EXIST::FUNCTION:CMS +d2i_RSAPublicKey 2490 1_1_0d EXIST::FUNCTION:RSA +X509_REQ_get_attr_by_NID 2491 1_1_0d EXIST::FUNCTION: +SDF_DeleteFile 2492 1_1_0d EXIST::FUNCTION: +EVP_desx_cbc 2493 1_1_0d EXIST::FUNCTION:DES +EVP_PKEY_get_attr_by_OBJ 2494 1_1_0d EXIST::FUNCTION: +ASN1_STRING_set 2495 1_1_0d EXIST::FUNCTION: +RAND_pseudo_bytes 2496 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0 +CMS_digest_create 2497 1_1_0d EXIST::FUNCTION:CMS +EVP_EncodeInit 2498 1_1_0d EXIST::FUNCTION: +ASN1_SEQUENCE_it 2499 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_SEQUENCE_it 2499 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +EVP_camellia_192_ctr 2500 1_1_0d EXIST::FUNCTION:CAMELLIA +EVP_PKEY_assign 2501 1_1_0d EXIST::FUNCTION: +BN_dup 2502 1_1_0d EXIST::FUNCTION: +SXNET_add_id_INTEGER 2503 1_1_0d EXIST::FUNCTION: +X509_CRL_set_default_method 2504 1_1_0d EXIST::FUNCTION: +i2d_X509 2505 1_1_0d EXIST::FUNCTION: +COMP_CTX_free 2506 1_1_0d EXIST::FUNCTION:COMP +TS_MSG_IMPRINT_get_msg 2507 1_1_0d EXIST::FUNCTION:TS +EC_GROUP_get_seed_len 2508 1_1_0d EXIST::FUNCTION:EC +ERR_print_errors_fp 2509 1_1_0d EXIST::FUNCTION:STDIO +EVP_CIPHER_CTX_set_padding 2510 1_1_0d EXIST::FUNCTION: +NCONF_free 2511 1_1_0d EXIST::FUNCTION: +PEM_read_bio_RSAPublicKey 2512 1_1_0d EXIST::FUNCTION:RSA +EVP_DecodeBlock 2513 1_1_0d EXIST::FUNCTION: +EVP_des_cbc 2514 1_1_0d EXIST::FUNCTION:DES +ASN1_STRING_new 2515 1_1_0d EXIST::FUNCTION: +OBJ_nid2obj 2516 1_1_0d EXIST::FUNCTION: +ENGINE_get_RAND 2517 1_1_0d EXIST::FUNCTION:ENGINE +OCSP_REQUEST_get_ext_by_critical 2518 1_1_0d EXIST::FUNCTION:OCSP +EC_KEY_METHOD_get_decrypt 2519 1_1_0d EXIST::FUNCTION:SM2 +RSA_X931_generate_key_ex 2520 1_1_0d EXIST::FUNCTION:RSA +d2i_OCSP_REQINFO 2521 1_1_0d EXIST::FUNCTION:OCSP +EC_KEY_set_ex_data 2522 1_1_0d EXIST::FUNCTION:EC +PEM_read_bio_CMS 2523 1_1_0d EXIST::FUNCTION:CMS +PEM_write_SM9PublicParameters 2524 1_1_0d EXIST::FUNCTION:SM9,STDIO +EVP_PKEY_asn1_add_alias 2525 1_1_0d EXIST::FUNCTION: +d2i_ECCCIPHERBLOB 2526 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF +EDIPARTYNAME_it 2527 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +EDIPARTYNAME_it 2527 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509V3_add_standard_extensions 2528 1_1_0d EXIST::FUNCTION: +PKCS7_ENVELOPE_it 2529 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_ENVELOPE_it 2529 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +d2i_SM9Ciphertext_fp 2530 1_1_0d EXIST::FUNCTION:SM9,STDIO +X509V3_EXT_add_conf 2531 1_1_0d EXIST::FUNCTION: +X509_VERIFY_PARAM_set1_name 2532 1_1_0d EXIST::FUNCTION: +DH_generate_parameters 2533 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_0_9_8,DH +OCSP_SERVICELOC_free 2534 1_1_0d EXIST::FUNCTION:OCSP +CRYPTO_ccm128_aad 2535 1_1_0d EXIST::FUNCTION: +NETSCAPE_SPKI_it 2536 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +NETSCAPE_SPKI_it 2536 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PKCS8_set0_pbe 2537 1_1_0d EXIST::FUNCTION: +X509_cmp_current_time 2538 1_1_0d EXIST::FUNCTION: +SKF_GetAlgorName 2539 1_1_0d EXIST::FUNCTION:SKF +X509_NAME_ENTRY_create_by_txt 2540 1_1_0d EXIST::FUNCTION: +X509_CRL_get_version 2541 1_1_0d EXIST::FUNCTION: +SKF_UnblockPIN 2542 1_1_0d EXIST::FUNCTION:SKF +d2i_ASN1_GENERALIZEDTIME 2543 1_1_0d EXIST::FUNCTION: +RAND_set_rand_engine 2544 1_1_0d EXIST::FUNCTION:ENGINE +BIO_new_NDEF 2545 1_1_0d EXIST::FUNCTION: +RSA_meth_set_mod_exp 2546 1_1_0d EXIST::FUNCTION:RSA +TS_RESP_CTX_set_def_policy 2547 1_1_0d EXIST::FUNCTION:TS +BN_mod_exp_mont_consttime 2548 1_1_0d EXIST::FUNCTION: +BN_MONT_CTX_copy 2549 1_1_0d EXIST::FUNCTION: +EVP_EncryptInit 2550 1_1_0d EXIST::FUNCTION: +BN_BLINDING_set_flags 2551 1_1_0d EXIST::FUNCTION: +EVP_DecryptFinal_ex 2552 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_insert 2553 1_1_0d EXIST::FUNCTION: +d2i_ECCSIGNATUREBLOB 2554 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF +i2d_ESS_ISSUER_SERIAL 2555 1_1_0d EXIST::FUNCTION:TS +sm3 2556 1_1_0d EXIST::FUNCTION:SM3 +i2d_X509_NAME_ENTRY 2557 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_value 2558 1_1_0d EXIST::FUNCTION: +CMS_set1_eContentType 2559 1_1_0d EXIST::FUNCTION:CMS +DSO_free 2560 1_1_0d EXIST::FUNCTION: +EVP_des_ede_ofb 2561 1_1_0d EXIST::FUNCTION:DES +PEM_read_bio_SM9MasterSecret 2562 1_1_0d EXIST::FUNCTION:SM9 +SMIME_write_PKCS7 2563 1_1_0d EXIST::FUNCTION: +i2d_EC_PUBKEY 2564 1_1_0d EXIST::FUNCTION:EC +CRYPTO_get_ex_data 2565 1_1_0d EXIST::FUNCTION: +TS_ext_print_bio 2566 1_1_0d EXIST::FUNCTION:TS +AES_cfb1_encrypt 2567 1_1_0d EXIST::FUNCTION: +EC_KEY_set_ECCrefPrivateKey 2568 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF +CT_POLICY_EVAL_CTX_get0_issuer 2569 1_1_0d EXIST::FUNCTION:CT +ASN1_STRING_print 2570 1_1_0d EXIST::FUNCTION: +DHparams_dup 2571 1_1_0d EXIST::FUNCTION:DH +TS_TST_INFO_delete_ext 2572 1_1_0d EXIST::FUNCTION:TS +BIO_method_type 2573 1_1_0d EXIST::FUNCTION: +BIO_set_ex_data 2574 1_1_0d EXIST::FUNCTION: +ASN1_tag2str 2575 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_set_ex_data 2576 1_1_0d EXIST::FUNCTION: +PAILLIER_security_bits 2577 1_1_0d EXIST::FUNCTION:PAILLIER +X509_policy_tree_level_count 2578 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_get0_param 2579 1_1_0d EXIST::FUNCTION: +SXNET_add_id_asc 2580 1_1_0d EXIST::FUNCTION: +PKCS12_SAFEBAG_create_pkcs8_encrypt 2581 1_1_0d EXIST::FUNCTION: +d2i_OCSP_RESPID 2582 1_1_0d EXIST::FUNCTION:OCSP +EVP_ENCODE_CTX_new 2583 1_1_0d EXIST::FUNCTION: +SCT_get_validation_status 2584 1_1_0d EXIST::FUNCTION:CT +OBJ_get0_data 2585 1_1_0d EXIST::FUNCTION: +ERR_load_PAILLIER_strings 2586 1_1_0d EXIST::FUNCTION:PAILLIER +OCSP_SINGLERESP_it 2587 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:OCSP +OCSP_SINGLERESP_it 2587 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:OCSP +EVP_camellia_128_cbc 2588 1_1_0d EXIST::FUNCTION:CAMELLIA +ERR_load_BN_strings 2589 1_1_0d EXIST::FUNCTION: +CMAC_Init 2590 1_1_0d EXIST::FUNCTION:CMAC +BIO_dgram_sctp_notification_cb 2591 1_1_0d EXIST::FUNCTION:DGRAM,SCTP +SM9PublicKey_get_gmtls_encoded 2592 1_1_0d EXIST::FUNCTION:SM9 +BIO_s_socket 2593 1_1_0d EXIST::FUNCTION:SOCK +GENERAL_NAME_new 2594 1_1_0d EXIST::FUNCTION: +EVP_PKEY_print_params 2595 1_1_0d EXIST::FUNCTION: +d2i_PKCS12_MAC_DATA 2596 1_1_0d EXIST::FUNCTION: +i2d_PBE2PARAM 2597 1_1_0d EXIST::FUNCTION: +EXTENDED_KEY_USAGE_it 2598 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +EXTENDED_KEY_USAGE_it 2598 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ENGINE_set_finish_function 2599 1_1_0d EXIST::FUNCTION:ENGINE +TS_STATUS_INFO_print_bio 2600 1_1_0d EXIST::FUNCTION:TS +PKCS7_set_type 2601 1_1_0d EXIST::FUNCTION: +NETSCAPE_SPKI_verify 2602 1_1_0d EXIST::FUNCTION: +SM2CiphertextValue_new 2603 1_1_0d EXIST::FUNCTION:SM2 +OCSP_accept_responses_new 2604 1_1_0d EXIST::FUNCTION:OCSP +X509_LOOKUP_init 2605 1_1_0d EXIST::FUNCTION: +TXT_DB_insert 2606 1_1_0d EXIST::FUNCTION: +ENGINE_register_ciphers 2607 1_1_0d EXIST::FUNCTION:ENGINE +ASN1_STRING_print_ex_fp 2608 1_1_0d EXIST::FUNCTION:STDIO +EC_GROUP_get_ecpkparameters 2609 1_1_0d EXIST::FUNCTION:EC +i2d_DSAPrivateKey_bio 2610 1_1_0d EXIST::FUNCTION:DSA +RSA_check_key_ex 2611 1_1_0d EXIST::FUNCTION:RSA +SKF_DigestFinal 2612 1_1_0d EXIST::FUNCTION:SKF +i2a_ACCESS_DESCRIPTION 2613 1_1_0d EXIST::FUNCTION: +BIO_ADDR_hostname_string 2614 1_1_0d EXIST::FUNCTION:SOCK +X509_NAME_set 2615 1_1_0d EXIST::FUNCTION: +RAND_add 2616 1_1_0d EXIST::FUNCTION: +X509_SIG_getm 2617 1_1_0d EXIST::FUNCTION: +SXNET_add_id_ulong 2618 1_1_0d EXIST::FUNCTION: +PEM_read_RSAPublicKey 2619 1_1_0d EXIST::FUNCTION:RSA,STDIO +EVP_camellia_256_cfb8 2620 1_1_0d EXIST::FUNCTION:CAMELLIA +BN_print_fp 2621 1_1_0d EXIST::FUNCTION:STDIO +BIO_s_file 2622 1_1_0d EXIST::FUNCTION: +CMS_signed_get0_data_by_OBJ 2623 1_1_0d EXIST::FUNCTION:CMS +SRP_VBASE_init 2624 1_1_0d EXIST::FUNCTION:SRP +UI_method_set_writer 2625 1_1_0d EXIST::FUNCTION:UI +ERR_load_CT_strings 2626 1_1_0d EXIST::FUNCTION:CT +PEM_read_DHparams 2627 1_1_0d EXIST::FUNCTION:DH,STDIO +X509v3_asid_inherits 2628 1_1_0d EXIST::FUNCTION:RFC3779 +X509_it 2629 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_it 2629 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_REQ_INFO_free 2630 1_1_0d EXIST::FUNCTION: +d2i_ASIdentifierChoice 2631 1_1_0d EXIST::FUNCTION:RFC3779 +OPENSSL_sk_delete_ptr 2632 1_1_0d EXIST::FUNCTION: +X509_get_default_cert_dir 2633 1_1_0d EXIST::FUNCTION: +BIO_number_read 2634 1_1_0d EXIST::FUNCTION: +SDF_WriteFile 2635 1_1_0d EXIST::FUNCTION: +CRYPTO_ocb128_tag 2636 1_1_0d EXIST::FUNCTION:OCB +SM2CiphertextValue_get_ECCCIPHERBLOB 2637 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF,SM2 +DH_set_method 2638 1_1_0d EXIST::FUNCTION:DH +ENGINE_get_default_RSA 2639 1_1_0d EXIST::FUNCTION:ENGINE +PKCS12_pack_p7encdata 2640 1_1_0d EXIST::FUNCTION: +CRYPTO_THREAD_run_once 2641 1_1_0d EXIST::FUNCTION: +X509V3_get_value_bool 2642 1_1_0d EXIST::FUNCTION: +OCSP_id_cmp 2643 1_1_0d EXIST::FUNCTION:OCSP +X509_get_proxy_pathlen 2644 1_1_0d EXIST::FUNCTION: +CMS_EncryptedData_set1_key 2645 1_1_0d EXIST::FUNCTION:CMS +ENGINE_get_pkey_meths 2646 1_1_0d EXIST::FUNCTION:ENGINE +SKF_CloseDevice 2647 1_1_0d EXIST::FUNCTION:SKF +X509_get_default_cert_file 2648 1_1_0d EXIST::FUNCTION: +sms4_cfb128_encrypt 2649 1_1_0d EXIST::FUNCTION:SMS4 +ECPARAMETERS_free 2650 1_1_0d EXIST::FUNCTION:EC +SM2_compute_share_key 2651 1_1_0d EXIST::FUNCTION:SM2 +TS_REQ_get_ext_by_OBJ 2652 1_1_0d EXIST::FUNCTION:TS +EVP_PKEY_set1_SM9 2653 1_1_0d EXIST::FUNCTION:SM9 +UI_destroy_method 2654 1_1_0d EXIST::FUNCTION:UI +BIO_f_reliable 2655 1_1_0d EXIST::FUNCTION: +TS_CONF_set_digests 2656 1_1_0d EXIST::FUNCTION:TS +DH_set0_key 2657 1_1_0d EXIST::FUNCTION:DH +DH_new 2658 1_1_0d EXIST::FUNCTION:DH +TS_ACCURACY_get_millis 2659 1_1_0d EXIST::FUNCTION:TS +TS_TST_INFO_set_serial 2660 1_1_0d EXIST::FUNCTION:TS +BIO_snprintf 2661 1_1_0d EXIST::FUNCTION: +X509V3_EXT_print 2662 1_1_0d EXIST::FUNCTION: +OCSP_REQ_CTX_set1_req 2663 1_1_0d EXIST::FUNCTION:OCSP +ERR_get_next_error_library 2664 1_1_0d EXIST::FUNCTION: +OCSP_CRLID_it 2665 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:OCSP +OCSP_CRLID_it 2665 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:OCSP +X509_REQ_get1_email 2666 1_1_0d EXIST::FUNCTION: +DSA_meth_get_finish 2667 1_1_0d EXIST::FUNCTION:DSA +X509_ATTRIBUTE_new 2668 1_1_0d EXIST::FUNCTION: +CRYPTO_xts128_encrypt 2669 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_get0_store 2670 1_1_0d EXIST::FUNCTION: +sms4_set_decrypt_key 2671 1_1_0d EXIST::FUNCTION:SMS4 +BN_abs_is_word 2672 1_1_0d EXIST::FUNCTION: +DES_cbc_cksum 2673 1_1_0d EXIST::FUNCTION:DES +i2d_USERNOTICE 2674 1_1_0d EXIST::FUNCTION: +RSA_set_method 2675 1_1_0d EXIST::FUNCTION:RSA +PBKDF2PARAM_it 2676 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PBKDF2PARAM_it 2676 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +GENERAL_NAME_print 2677 1_1_0d EXIST::FUNCTION: +d2i_ASN1_SET_ANY 2678 1_1_0d EXIST::FUNCTION: +PKCS8_encrypt 2679 1_1_0d EXIST::FUNCTION: +EVP_sms4_gcm 2680 1_1_0d EXIST::FUNCTION:SMS4 +BN_GENCB_call 2681 1_1_0d EXIST::FUNCTION: +BN_reciprocal 2682 1_1_0d EXIST::FUNCTION: +TS_RESP_get_tst_info 2683 1_1_0d EXIST::FUNCTION:TS +PEM_write_RSAPrivateKey 2684 1_1_0d EXIST::FUNCTION:RSA,STDIO +PEM_get_EVP_CIPHER_INFO 2685 1_1_0d EXIST::FUNCTION: +EVP_aes_192_wrap 2686 1_1_0d EXIST::FUNCTION: +X509_CRL_get_issuer 2687 1_1_0d EXIST::FUNCTION: +X509_find_by_issuer_and_serial 2688 1_1_0d EXIST::FUNCTION: +EC_POINTs_mul 2689 1_1_0d EXIST::FUNCTION:EC +EVP_PKEY_get0_PAILLIER 2690 1_1_0d EXIST::FUNCTION:PAILLIER +ZUC_128eea3 2691 1_1_0d EXIST::FUNCTION:ZUC +ASN1_add_stable_module 2692 1_1_0d EXIST::FUNCTION: +d2i_SM9PublicKey 2693 1_1_0d EXIST::FUNCTION:SM9 +OPENSSL_LH_doall_arg 2694 1_1_0d EXIST::FUNCTION: +EC_GROUP_get_cofactor 2695 1_1_0d EXIST::FUNCTION:EC +SHA1_Transform 2696 1_1_0d EXIST::FUNCTION: +X509_check_akid 2697 1_1_0d EXIST::FUNCTION: +SKF_GenerateAgreementDataAndKeyWithECC 2698 1_1_0d EXIST::FUNCTION:SKF +EVP_sm9hash2_sm3 2699 1_1_0d EXIST::FUNCTION:SM3,SM9 +BN_bn2binpad 2700 1_1_0d EXIST::FUNCTION: +BIO_get_retry_BIO 2701 1_1_0d EXIST::FUNCTION: +i2d_X509_SIG 2702 1_1_0d EXIST::FUNCTION: +SXNETID_it 2703 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +SXNETID_it 2703 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +UI_get_result_minsize 2704 1_1_0d EXIST::FUNCTION:UI +RSA_meth_get_bn_mod_exp 2705 1_1_0d EXIST::FUNCTION:RSA +BN_bin2bn 2706 1_1_0d EXIST::FUNCTION: +s2i_ASN1_INTEGER 2707 1_1_0d EXIST::FUNCTION: +EVP_aes_256_xts 2708 1_1_0d EXIST::FUNCTION: +OCSP_BASICRESP_delete_ext 2709 1_1_0d EXIST::FUNCTION:OCSP +BN_mod_mul 2710 1_1_0d EXIST::FUNCTION: +X509_policy_node_get0_parent 2711 1_1_0d EXIST::FUNCTION: +SRP_VBASE_new 2712 1_1_0d EXIST::FUNCTION:SRP +X509_STORE_get0_objects 2713 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_set_default 2714 1_1_0d EXIST::FUNCTION: +BN_init 2715 1_1_0d EXIST::FUNCTION: +EC_KEY_new_by_curve_name 2716 1_1_0d EXIST::FUNCTION:EC +OPENSSL_LH_error 2717 1_1_0d EXIST::FUNCTION: +d2i_OCSP_CERTID 2718 1_1_0d EXIST::FUNCTION:OCSP +X509_PUBKEY_get0 2719 1_1_0d EXIST::FUNCTION: +SM9_verify 2720 1_1_0d EXIST::FUNCTION:SM9 +ASYNC_WAIT_CTX_clear_fd 2721 1_1_0d EXIST::FUNCTION: +d2i_X509_REQ 2722 1_1_0d EXIST::FUNCTION: +EVP_OpenFinal 2723 1_1_0d EXIST::FUNCTION:RSA +i2d_DHxparams 2724 1_1_0d EXIST::FUNCTION:DH +X509_sign 2725 1_1_0d EXIST::FUNCTION: +CERTIFICATEPOLICIES_new 2726 1_1_0d EXIST::FUNCTION: +OCSP_SINGLERESP_get_ext 2727 1_1_0d EXIST::FUNCTION:OCSP +EVP_PKEY_meth_set_cleanup 2728 1_1_0d EXIST::FUNCTION: +EVP_bf_ofb 2729 1_1_0d EXIST::FUNCTION:BF +SM2_do_sign_ex 2730 1_1_0d EXIST::FUNCTION:SM2 +CMS_get1_ReceiptRequest 2731 1_1_0d EXIST::FUNCTION:CMS +BIO_find_type 2732 1_1_0d EXIST::FUNCTION: +PEM_write_bio_ECPrivateKey 2733 1_1_0d EXIST::FUNCTION:EC +PKCS7_ENCRYPT_free 2734 1_1_0d EXIST::FUNCTION: +CRYPTO_cts128_decrypt 2735 1_1_0d EXIST::FUNCTION: +ASN1_PCTX_get_oid_flags 2736 1_1_0d EXIST::FUNCTION: +RSA_padding_check_PKCS1_type_1 2737 1_1_0d EXIST::FUNCTION:RSA +X509_load_crl_file 2738 1_1_0d EXIST::FUNCTION: +EVP_aes_256_cfb1 2739 1_1_0d EXIST::FUNCTION: +RSA_meth_set_keygen 2740 1_1_0d EXIST::FUNCTION:RSA +ASN1_T61STRING_free 2741 1_1_0d EXIST::FUNCTION: +ASN1_ENUMERATED_it 2742 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_ENUMERATED_it 2742 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +d2i_SM2_COSIGNER1_SHARE 2743 1_1_0d EXIST::FUNCTION:SM2 +SM2_COSIGNER1_PROOF_it 2744 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:SM2 +SM2_COSIGNER1_PROOF_it 2744 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:SM2 +BIO_nwrite 2745 1_1_0d EXIST::FUNCTION: +BN_MONT_CTX_free 2746 1_1_0d EXIST::FUNCTION: +ASN1_TYPE_set 2747 1_1_0d EXIST::FUNCTION: +PKCS7_add_signer 2748 1_1_0d EXIST::FUNCTION: +CONF_modules_load_file 2749 1_1_0d EXIST::FUNCTION: +BIO_f_zlib 2750 1_1_0d EXIST:ZLIB:FUNCTION:COMP +ASN1_INTEGER_get 2751 1_1_0d EXIST::FUNCTION: +BN_rand_range 2752 1_1_0d EXIST::FUNCTION: +SHA224_Update 2753 1_1_0d EXIST::FUNCTION: +DH_OpenSSL 2754 1_1_0d EXIST::FUNCTION:DH +ENGINE_register_digests 2755 1_1_0d EXIST::FUNCTION:ENGINE +TS_RESP_CTX_set_signer_digest 2756 1_1_0d EXIST::FUNCTION:TS +BIO_ADDRINFO_address 2757 1_1_0d EXIST::FUNCTION:SOCK +i2d_OCSP_ONEREQ 2758 1_1_0d EXIST::FUNCTION:OCSP +ERR_peek_last_error_line 2759 1_1_0d EXIST::FUNCTION: +BN_GENCB_set_old 2760 1_1_0d EXIST::FUNCTION: +CMS_dataInit 2761 1_1_0d EXIST::FUNCTION:CMS +NCONF_dump_bio 2762 1_1_0d EXIST::FUNCTION: +EVP_PKEY_encrypt_old 2763 1_1_0d EXIST::FUNCTION: +BN_mod_lshift 2764 1_1_0d EXIST::FUNCTION: +d2i_RSAPublicKey_bio 2765 1_1_0d EXIST::FUNCTION:RSA +EC_KEY_get_ECCrefPrivateKey 2766 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF +EVP_PKEY_CTX_set_app_data 2767 1_1_0d EXIST::FUNCTION: +EVP_PKEY_decrypt_init 2768 1_1_0d EXIST::FUNCTION: +X509v3_add_ext 2769 1_1_0d EXIST::FUNCTION: +RSA_blinding_off 2770 1_1_0d EXIST::FUNCTION:RSA +d2i_ASN1_PRINTABLESTRING 2771 1_1_0d EXIST::FUNCTION: +PKCS7_ATTR_SIGN_it 2772 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_ATTR_SIGN_it 2772 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +d2i_PUBKEY_fp 2773 1_1_0d EXIST::FUNCTION:STDIO +AES_bi_ige_encrypt 2774 1_1_0d EXIST::FUNCTION: +SKF_ChangeDevAuthKey 2775 1_1_0d EXIST::FUNCTION:SKF +OCSP_REVOKEDINFO_free 2776 1_1_0d EXIST::FUNCTION:OCSP +SKF_RSAVerify 2777 1_1_0d EXIST::FUNCTION:SKF +DSA_meth_set_sign_setup 2778 1_1_0d EXIST::FUNCTION:DSA +BIO_ADDR_service_string 2779 1_1_0d EXIST::FUNCTION:SOCK +SM9_unwrap_key 2780 1_1_0d EXIST::FUNCTION:SM9 +EVP_PKEY_meth_get_signctx 2781 1_1_0d EXIST::FUNCTION: +TS_CONF_set_def_policy 2782 1_1_0d EXIST::FUNCTION:TS +i2d_SM2CiphertextValue_bio 2783 1_1_0d EXIST::FUNCTION:SM2 +X509_ATTRIBUTE_free 2784 1_1_0d EXIST::FUNCTION: +EVP_MD_CTX_get_sgd 2785 1_1_0d EXIST::FUNCTION:GMAPI +BIO_sock_should_retry 2786 1_1_0d EXIST::FUNCTION:SOCK +i2d_DSA_SIG 2787 1_1_0d EXIST::FUNCTION:DSA +X509_ocspid_print 2788 1_1_0d EXIST::FUNCTION: +TLS_FEATURE_new 2789 1_1_0d EXIST::FUNCTION: +EVP_seed_cbc 2790 1_1_0d EXIST::FUNCTION:SEED +BIO_accept 2791 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,SOCK +ASN1_PCTX_free 2792 1_1_0d EXIST::FUNCTION: +ENGINE_unregister_DH 2793 1_1_0d EXIST::FUNCTION:ENGINE +DIST_POINT_NAME_new 2794 1_1_0d EXIST::FUNCTION: +SRP_VBASE_get1_by_user 2795 1_1_0d EXIST::FUNCTION:SRP +UI_get0_result_string 2796 1_1_0d EXIST::FUNCTION:UI +PEM_read_bio_PUBKEY 2797 1_1_0d EXIST::FUNCTION: +d2i_SXNET 2798 1_1_0d EXIST::FUNCTION: +i2d_IPAddressOrRange 2799 1_1_0d EXIST::FUNCTION:RFC3779 +TS_RESP_get_token 2800 1_1_0d EXIST::FUNCTION:TS +X509_TRUST_get0_name 2801 1_1_0d EXIST::FUNCTION: +PROXY_CERT_INFO_EXTENSION_it 2802 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PROXY_CERT_INFO_EXTENSION_it 2802 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +IPAddressFamily_it 2803 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779 +IPAddressFamily_it 2803 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779 +PKEY_USAGE_PERIOD_free 2804 1_1_0d EXIST::FUNCTION: +AUTHORITY_INFO_ACCESS_free 2805 1_1_0d EXIST::FUNCTION: +d2i_DISPLAYTEXT 2806 1_1_0d EXIST::FUNCTION: +X509_get_pathlen 2807 1_1_0d EXIST::FUNCTION: +d2i_SM9PrivateKey_fp 2808 1_1_0d EXIST::FUNCTION:SM9,STDIO +ASN1_STRING_clear_free 2809 1_1_0d EXIST::FUNCTION: +EC_KEY_get_ex_data 2810 1_1_0d EXIST::FUNCTION:EC +X509_CRL_METHOD_free 2811 1_1_0d EXIST::FUNCTION: +PKCS7_set_cipher 2812 1_1_0d EXIST::FUNCTION: +PEM_bytes_read_bio 2813 1_1_0d EXIST::FUNCTION: +X509_trust_clear 2814 1_1_0d EXIST::FUNCTION: +ERR_peek_last_error 2815 1_1_0d EXIST::FUNCTION: +X509_get_key_usage 2816 1_1_0d EXIST::FUNCTION: +SKF_ECCExportSessionKey 2817 1_1_0d EXIST::FUNCTION:SKF +UI_set_result 2818 1_1_0d EXIST::FUNCTION:UI +PEM_read_DSAPrivateKey 2819 1_1_0d EXIST::FUNCTION:DSA,STDIO +DSA_meth_set_paramgen 2820 1_1_0d EXIST::FUNCTION:DSA +ERR_print_errors_cb 2821 1_1_0d EXIST::FUNCTION: +RSA_PSS_PARAMS_it 2822 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RSA +RSA_PSS_PARAMS_it 2822 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RSA +i2d_PKCS7_bio_stream 2823 1_1_0d EXIST::FUNCTION: +EVP_sms4_wrap_pad 2824 1_1_0d EXIST::FUNCTION:SMS4 +SM9_SignFinal 2825 1_1_0d EXIST::FUNCTION:SM9 +i2d_ASN1_T61STRING 2826 1_1_0d EXIST::FUNCTION: +RC4_set_key 2827 1_1_0d EXIST::FUNCTION:RC4 +d2i_ESS_SIGNING_CERT 2828 1_1_0d EXIST::FUNCTION:TS +ERR_load_DSO_strings 2829 1_1_0d EXIST::FUNCTION: +ASRange_free 2830 1_1_0d EXIST::FUNCTION:RFC3779 +EVP_aes_128_cbc 2831 1_1_0d EXIST::FUNCTION: +X509v3_addr_get_afi 2832 1_1_0d EXIST::FUNCTION:RFC3779 +BIO_nread0 2833 1_1_0d EXIST::FUNCTION: +d2i_TS_RESP_fp 2834 1_1_0d EXIST::FUNCTION:STDIO,TS +TS_TST_INFO_print_bio 2835 1_1_0d EXIST::FUNCTION:TS +DH_meth_get_compute_key 2836 1_1_0d EXIST::FUNCTION:DH +BIO_meth_set_write 2837 1_1_0d EXIST::FUNCTION: +i2d_OCSP_CRLID 2838 1_1_0d EXIST::FUNCTION:OCSP +PEM_read_bio_DSAPrivateKey 2839 1_1_0d EXIST::FUNCTION:DSA +NETSCAPE_SPKAC_free 2840 1_1_0d EXIST::FUNCTION: +CMAC_CTX_cleanup 2841 1_1_0d EXIST::FUNCTION:CMAC +CMS_signed_get_attr_by_OBJ 2842 1_1_0d EXIST::FUNCTION:CMS +ASN1_item_new 2843 1_1_0d EXIST::FUNCTION: +IDEA_encrypt 2844 1_1_0d EXIST::FUNCTION:IDEA +X509_NAME_add_entry_by_NID 2845 1_1_0d EXIST::FUNCTION: +ASN1_const_check_infinite_end 2846 1_1_0d EXIST::FUNCTION: +BIO_number_written 2847 1_1_0d EXIST::FUNCTION: +X509_VAL_it 2848 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_VAL_it 2848 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +SKF_DeleteContainer 2849 1_1_0d EXIST::FUNCTION:SKF +EVP_DecodeFinal 2850 1_1_0d EXIST::FUNCTION: +PEM_write_X509 2851 1_1_0d EXIST::FUNCTION:STDIO +IPAddressRange_it 2852 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779 +IPAddressRange_it 2852 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779 +TS_TST_INFO_set_tsa 2853 1_1_0d EXIST::FUNCTION:TS +EVP_sha384 2854 1_1_0d EXIST:!VMSVAX:FUNCTION: +SKF_ImportECCKeyPair 2855 1_1_0d EXIST::FUNCTION:SKF +TS_REQ_get_ext_by_NID 2856 1_1_0d EXIST::FUNCTION:TS +ENGINE_register_RSA 2857 1_1_0d EXIST::FUNCTION:ENGINE +EVP_PKEY_get1_EC_KEY 2858 1_1_0d EXIST::FUNCTION:EC +TS_CONF_get_tsa_section 2859 1_1_0d EXIST::FUNCTION:TS +i2d_ECPrivateKey 2860 1_1_0d EXIST::FUNCTION:EC +SXNET_get_id_asc 2861 1_1_0d EXIST::FUNCTION: +X509_PURPOSE_get0_sname 2862 1_1_0d EXIST::FUNCTION: +OPENSSL_LH_node_usage_stats 2863 1_1_0d EXIST::FUNCTION:STDIO +i2d_X509_ATTRIBUTE 2864 1_1_0d EXIST::FUNCTION: +i2d_OCSP_RESPID 2865 1_1_0d EXIST::FUNCTION:OCSP +X509_REQ_print_ex 2866 1_1_0d EXIST::FUNCTION: +CMS_RecipientInfo_type 2867 1_1_0d EXIST::FUNCTION:CMS +TS_TST_INFO_get_ordering 2868 1_1_0d EXIST::FUNCTION:TS +PEM_write_bio_SM9MasterSecret 2869 1_1_0d EXIST::FUNCTION:SM9 +d2i_ECIESParameters 2870 1_1_0d EXIST::FUNCTION:ECIES +PKCS12_SAFEBAG_get_nid 2871 1_1_0d EXIST::FUNCTION: +BN_get0_sm2_prime_256 2872 1_1_0d EXIST::FUNCTION:SM2 +ASN1_SCTX_new 2873 1_1_0d EXIST::FUNCTION: +UI_get0_test_string 2874 1_1_0d EXIST::FUNCTION:UI +d2i_SM9_PUBKEY 2875 1_1_0d EXIST::FUNCTION:SM9 +d2i_PKCS7_SIGNED 2876 1_1_0d EXIST::FUNCTION: +PROXY_POLICY_free 2877 1_1_0d EXIST::FUNCTION: +X509_STORE_add_crl 2878 1_1_0d EXIST::FUNCTION: +X509_STORE_get_lookup_certs 2879 1_1_0d EXIST::FUNCTION: +EVP_PKEY_add1_attr_by_txt 2880 1_1_0d EXIST::FUNCTION: +EVP_rc2_cbc 2881 1_1_0d EXIST::FUNCTION:RC2 +DSA_set_default_method 2882 1_1_0d EXIST::FUNCTION:DSA +BIO_new_fd 2883 1_1_0d EXIST::FUNCTION: +TS_CONF_set_ordering 2884 1_1_0d EXIST::FUNCTION:TS +i2d_PKCS8_fp 2885 1_1_0d EXIST::FUNCTION:STDIO +X509V3_get_string 2886 1_1_0d EXIST::FUNCTION: +BN_is_prime_fasttest 2887 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_0_9_8 +TS_CONF_set_policies 2888 1_1_0d EXIST::FUNCTION:TS +BN_BLINDING_unlock 2889 1_1_0d EXIST::FUNCTION: +X509_VERIFY_PARAM_get_auth_level 2890 1_1_0d EXIST::FUNCTION: +d2i_DSA_PUBKEY_bio 2891 1_1_0d EXIST::FUNCTION:DSA +PEM_read_bio_SM9_PUBKEY 2892 1_1_0d EXIST::FUNCTION:SM9 +CRYPTO_set_mem_debug 2893 1_1_0d EXIST::FUNCTION: +CRYPTO_THREAD_unlock 2894 1_1_0d EXIST::FUNCTION: +X509_NAME_ENTRY_set_data 2895 1_1_0d EXIST::FUNCTION: +EC_KEY_METHOD_type 2896 1_1_0d EXIST::FUNCTION:SM2 +X509_VERIFY_PARAM_get_count 2897 1_1_0d EXIST::FUNCTION: +OBJ_bsearch_ 2898 1_1_0d EXIST::FUNCTION: +X509_STORE_get_get_issuer 2899 1_1_0d EXIST::FUNCTION: +OPENSSL_config 2900 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0 +X509_CRL_set1_nextUpdate 2901 1_1_0d EXIST::FUNCTION: +OBJ_dup 2902 1_1_0d EXIST::FUNCTION: +CONF_get_string 2903 1_1_0d EXIST::FUNCTION: +EVP_DecodeInit 2904 1_1_0d EXIST::FUNCTION: +SCT_new_from_base64 2905 1_1_0d EXIST::FUNCTION:CT +X509_PUBKEY_set0_param 2906 1_1_0d EXIST::FUNCTION: +ASN1_PCTX_get_flags 2907 1_1_0d EXIST::FUNCTION: +ENGINE_finish 2908 1_1_0d EXIST::FUNCTION:ENGINE +ENGINE_set_name 2909 1_1_0d EXIST::FUNCTION:ENGINE +PBE2PARAM_free 2910 1_1_0d EXIST::FUNCTION: +GENERAL_SUBTREE_free 2911 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_get_ctrl 2912 1_1_0d EXIST::FUNCTION: +SKF_SetLabel 2913 1_1_0d EXIST::FUNCTION:SKF +d2i_TS_REQ_fp 2914 1_1_0d EXIST::FUNCTION:STDIO,TS +ASN1_GENERALIZEDTIME_set_string 2915 1_1_0d EXIST::FUNCTION: +NCONF_load_fp 2916 1_1_0d EXIST::FUNCTION:STDIO +EVP_EncodeUpdate 2917 1_1_0d EXIST::FUNCTION: +i2d_RSAPrivateKey_fp 2918 1_1_0d EXIST::FUNCTION:RSA,STDIO +UI_method_set_flusher 2919 1_1_0d EXIST::FUNCTION:UI +DSA_new_method 2920 1_1_0d EXIST::FUNCTION:DSA +TS_TST_INFO_get_msg_imprint 2921 1_1_0d EXIST::FUNCTION:TS +EVP_PKEY_meth_get_copy 2922 1_1_0d EXIST::FUNCTION: +ERR_load_KDF2_strings 2923 1_1_0d EXIST::FUNCTION: +i2d_X509_REQ_fp 2924 1_1_0d EXIST::FUNCTION:STDIO +ERR_load_EVP_strings 2925 1_1_0d EXIST::FUNCTION: +ASN1_VISIBLESTRING_free 2926 1_1_0d EXIST::FUNCTION: +PEM_read_bio_ECPKParameters 2927 1_1_0d EXIST::FUNCTION:EC +OCSP_REQUEST_free 2928 1_1_0d EXIST::FUNCTION:OCSP +PAILLIER_ciphertext_scalar_mul 2929 1_1_0d EXIST::FUNCTION:PAILLIER +BIO_set_callback_arg 2930 1_1_0d EXIST::FUNCTION: +ASN1_GENERALIZEDTIME_check 2931 1_1_0d EXIST::FUNCTION: +X509_get0_uids 2932 1_1_0d EXIST::FUNCTION: +CRYPTO_ccm128_decrypt 2933 1_1_0d EXIST::FUNCTION: +TS_ACCURACY_set_seconds 2934 1_1_0d EXIST::FUNCTION:TS +IDEA_ecb_encrypt 2935 1_1_0d EXIST::FUNCTION:IDEA +i2d_ECPrivateKey_fp 2936 1_1_0d EXIST::FUNCTION:EC,STDIO +X509_certificate_type 2937 1_1_0d EXIST::FUNCTION: +NCONF_get_number_e 2938 1_1_0d EXIST::FUNCTION: +SM9_signature_size 2939 1_1_0d EXIST::FUNCTION:SM9 +X509_CRL_sign 2940 1_1_0d EXIST::FUNCTION: +COMP_CTX_get_method 2941 1_1_0d EXIST::FUNCTION:COMP +TS_CONF_load_certs 2942 1_1_0d EXIST::FUNCTION:TS +d2i_ASIdOrRange 2943 1_1_0d EXIST::FUNCTION:RFC3779 +SKF_CreateContainer 2944 1_1_0d EXIST::FUNCTION:SKF +TS_TST_INFO_new 2945 1_1_0d EXIST::FUNCTION:TS +TS_STATUS_INFO_dup 2946 1_1_0d EXIST::FUNCTION:TS +X509_NAME_cmp 2947 1_1_0d EXIST::FUNCTION: +PKCS12_SAFEBAG_get0_pkcs8 2948 1_1_0d EXIST::FUNCTION: +d2i_TS_MSG_IMPRINT_fp 2949 1_1_0d EXIST::FUNCTION:STDIO,TS +SKF_GetContainerType 2950 1_1_0d EXIST::FUNCTION:SKF +i2a_ASN1_STRING 2951 1_1_0d EXIST::FUNCTION: +EVP_ripemd160 2952 1_1_0d EXIST::FUNCTION:RMD160 +OCSP_CRLID_new 2953 1_1_0d EXIST::FUNCTION:OCSP +CRYPTO_ocb128_cleanup 2954 1_1_0d EXIST::FUNCTION:OCB +X509_NAME_ENTRY_new 2955 1_1_0d EXIST::FUNCTION: +EC_KEY_oct2key 2956 1_1_0d EXIST::FUNCTION:EC +i2d_OCSP_SIGNATURE 2957 1_1_0d EXIST::FUNCTION:OCSP +i2d_PKCS8PrivateKey_bio 2958 1_1_0d EXIST::FUNCTION: +i2d_DSA_PUBKEY 2959 1_1_0d EXIST::FUNCTION:DSA +SKF_Mac 2960 1_1_0d EXIST::FUNCTION:SKF +ERR_load_SM9_strings 2961 1_1_0d EXIST::FUNCTION:SM9 +BN_div_word 2962 1_1_0d EXIST::FUNCTION: +X509_CERT_AUX_free 2963 1_1_0d EXIST::FUNCTION: +RSA_PSS_PARAMS_new 2964 1_1_0d EXIST::FUNCTION:RSA +d2i_ESS_ISSUER_SERIAL 2965 1_1_0d EXIST::FUNCTION:TS +PKCS12_MAC_DATA_it 2966 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS12_MAC_DATA_it 2966 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +BN_get0_nist_prime_192 2967 1_1_0d EXIST::FUNCTION: +TS_RESP_verify_response 2968 1_1_0d EXIST::FUNCTION:TS +SDF_GenerateKeyWithKEK 2969 1_1_0d EXIST::FUNCTION: +DH_security_bits 2970 1_1_0d EXIST::FUNCTION:DH +RSA_meth_set_priv_dec 2971 1_1_0d EXIST::FUNCTION:RSA +X509_ALGOR_set0 2972 1_1_0d EXIST::FUNCTION: +RSA_padding_add_X931 2973 1_1_0d EXIST::FUNCTION:RSA +ZUC_128eia3 2974 1_1_0d EXIST::FUNCTION:ZUC +d2i_ECParameters 2975 1_1_0d EXIST::FUNCTION:EC +CRL_DIST_POINTS_new 2976 1_1_0d EXIST::FUNCTION: +ASN1_SET_ANY_it 2977 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_SET_ANY_it 2977 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +BUF_MEM_new_ex 2978 1_1_0d EXIST::FUNCTION: +d2i_ECPrivateKey 2979 1_1_0d EXIST::FUNCTION:EC +PKEY_USAGE_PERIOD_new 2980 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_meth_set_do_cipher 2981 1_1_0d EXIST::FUNCTION: +DSA_get_ex_data 2982 1_1_0d EXIST::FUNCTION:DSA +TXT_DB_create_index 2983 1_1_0d EXIST::FUNCTION: +OBJ_nid2sn 2984 1_1_0d EXIST::FUNCTION: +OPENSSL_atexit 2985 1_1_0d EXIST::FUNCTION: +i2a_ASN1_OBJECT 2986 1_1_0d EXIST::FUNCTION: +ASN1_BIT_STRING_free 2987 1_1_0d EXIST::FUNCTION: +OPENSSL_asc2uni 2988 1_1_0d EXIST::FUNCTION: +ERR_lib_error_string 2989 1_1_0d EXIST::FUNCTION: +RC2_ecb_encrypt 2990 1_1_0d EXIST::FUNCTION:RC2 +EVP_PKEY_get1_SM9_MASTER 2991 1_1_0d EXIST::FUNCTION:SM9 +ENGINE_free 2992 1_1_0d EXIST::FUNCTION:ENGINE +ASN1_item_free 2993 1_1_0d EXIST::FUNCTION: +X509_load_cert_file 2994 1_1_0d EXIST::FUNCTION: +OCSP_basic_verify 2995 1_1_0d EXIST::FUNCTION:OCSP +PKCS12_free 2996 1_1_0d EXIST::FUNCTION: +TS_REQ_get_policy_id 2997 1_1_0d EXIST::FUNCTION:TS +EC_KEY_get_flags 2998 1_1_0d EXIST::FUNCTION:EC +FIPS_mode 2999 1_1_0d EXIST::FUNCTION: +X509V3_EXT_cleanup 3000 1_1_0d EXIST::FUNCTION: +d2i_PROXY_POLICY 3001 1_1_0d EXIST::FUNCTION: +OCSP_REQ_CTX_i2d 3002 1_1_0d EXIST::FUNCTION:OCSP +EVP_PKEY_set_type_str 3003 1_1_0d EXIST::FUNCTION: +EVP_aes_256_gcm 3004 1_1_0d EXIST::FUNCTION: +ENGINE_set_RSA 3005 1_1_0d EXIST::FUNCTION:ENGINE +i2d_X509_CRL_INFO 3006 1_1_0d EXIST::FUNCTION: +BIO_meth_get_ctrl 3007 1_1_0d EXIST::FUNCTION: +UI_get0_user_data 3008 1_1_0d EXIST::FUNCTION:UI +SKF_ExportPublicKey 3009 1_1_0d EXIST::FUNCTION:SKF +TLS_FEATURE_free 3010 1_1_0d EXIST::FUNCTION: +CRYPTO_THREAD_init_local 3011 1_1_0d EXIST::FUNCTION: +BIO_pop 3012 1_1_0d EXIST::FUNCTION: +ERR_get_error_line 3013 1_1_0d EXIST::FUNCTION: +EC_GROUP_set_point_conversion_form 3014 1_1_0d EXIST::FUNCTION:EC +CMS_RecipientInfo_kari_get0_orig_id 3015 1_1_0d EXIST::FUNCTION:CMS +BN_add 3016 1_1_0d EXIST::FUNCTION: +PKCS12_add_safe 3017 1_1_0d EXIST::FUNCTION: +OTHERNAME_new 3018 1_1_0d EXIST::FUNCTION: +X509_REQ_get_attr_count 3019 1_1_0d EXIST::FUNCTION: +PKCS7_ISSUER_AND_SERIAL_digest 3020 1_1_0d EXIST::FUNCTION: +X509v3_asid_add_id_or_range 3021 1_1_0d EXIST::FUNCTION:RFC3779 +OCSP_CERTSTATUS_free 3022 1_1_0d EXIST::FUNCTION:OCSP +PEM_ASN1_read_bio 3023 1_1_0d EXIST::FUNCTION: +X509_add1_reject_object 3024 1_1_0d EXIST::FUNCTION: +RSA_meth_get_mod_exp 3025 1_1_0d EXIST::FUNCTION:RSA +EVP_rc4 3026 1_1_0d EXIST::FUNCTION:RC4 +i2d_EC_PUBKEY_fp 3027 1_1_0d EXIST::FUNCTION:EC,STDIO +ASN1_parse 3028 1_1_0d EXIST::FUNCTION: +NCONF_dump_fp 3029 1_1_0d EXIST::FUNCTION:STDIO +X509_get_ext_d2i 3030 1_1_0d EXIST::FUNCTION: +TS_RESP_CTX_set_serial_cb 3031 1_1_0d EXIST::FUNCTION:TS +PKCS7_it 3032 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_it 3032 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_REVOKED_get_ext_by_OBJ 3033 1_1_0d EXIST::FUNCTION: +ASN1_TYPE_set_int_octetstring 3034 1_1_0d EXIST::FUNCTION: +RC2_set_key 3035 1_1_0d EXIST::FUNCTION:RC2 +PEM_write_EC_PUBKEY 3036 1_1_0d EXIST::FUNCTION:EC,STDIO +HMAC_CTX_free 3037 1_1_0d EXIST::FUNCTION: +OCSP_REQ_CTX_nbio_d2i 3038 1_1_0d EXIST::FUNCTION:OCSP +RSA_padding_check_X931 3039 1_1_0d EXIST::FUNCTION:RSA +EVP_PKEY_verify_recover_init 3040 1_1_0d EXIST::FUNCTION: +UI_UTIL_read_pw_string 3041 1_1_0d EXIST::FUNCTION:UI +CMS_decrypt_set1_key 3042 1_1_0d EXIST::FUNCTION:CMS +SHA512_Init 3043 1_1_0d EXIST:!VMSVAX:FUNCTION: +i2d_AUTHORITY_INFO_ACCESS 3044 1_1_0d EXIST::FUNCTION: +X509_VERIFY_PARAM_get0_name 3045 1_1_0d EXIST::FUNCTION: +BN_get_rfc3526_prime_8192 3046 1_1_0d EXIST::FUNCTION: +X509_REVOKED_new 3047 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_get_verify_cb 3048 1_1_0d EXIST::FUNCTION: +EC_get_builtin_curves 3049 1_1_0d EXIST::FUNCTION:EC +PKCS7_add_attribute 3050 1_1_0d EXIST::FUNCTION: +DH_KDF_X9_42 3051 1_1_0d EXIST::FUNCTION:CMS,DH +X509_PUBKEY_free 3052 1_1_0d EXIST::FUNCTION: +DSA_security_bits 3053 1_1_0d EXIST::FUNCTION:DSA +SDF_PrintECCSignature 3054 1_1_0d EXIST::FUNCTION:SDF +SM9Signature_it 3055 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:SM9 +SM9Signature_it 3055 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:SM9 +SM2CiphertextValue_it 3056 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:SM2 +SM2CiphertextValue_it 3056 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:SM2 +d2i_PKCS12_bio 3057 1_1_0d EXIST::FUNCTION: +ASN1_TBOOLEAN_it 3058 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_TBOOLEAN_it 3058 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509V3_EXT_get 3059 1_1_0d EXIST::FUNCTION: +PKCS12_add_friendlyname_uni 3060 1_1_0d EXIST::FUNCTION: +BIO_ADDR_clear 3061 1_1_0d EXIST::FUNCTION:SOCK +X509_REVOKED_get_ext_d2i 3062 1_1_0d EXIST::FUNCTION: +ENGINE_get_cmd_defns 3063 1_1_0d EXIST::FUNCTION:ENGINE +CMAC_CTX_new 3064 1_1_0d EXIST::FUNCTION:CMAC +CMS_ContentInfo_free 3065 1_1_0d EXIST::FUNCTION:CMS +ECIES_PARAMS_init_with_recommended 3066 1_1_0d EXIST::FUNCTION:ECIES +i2d_GENERAL_NAMES 3067 1_1_0d EXIST::FUNCTION: +i2d_PKCS7_SIGNED 3068 1_1_0d EXIST::FUNCTION: +ERR_load_KDF_strings 3069 1_1_0d EXIST::FUNCTION: +TXT_DB_write 3070 1_1_0d EXIST::FUNCTION: +SRP_Calc_u 3071 1_1_0d EXIST::FUNCTION:SRP +X509_NAME_ENTRY_get_data 3072 1_1_0d EXIST::FUNCTION: +SKF_ExportECCPublicKey 3073 1_1_0d EXIST::FUNCTION:SKF +SKF_EnumApplication 3074 1_1_0d EXIST::FUNCTION:SKF +DES_encrypt3 3075 1_1_0d EXIST::FUNCTION:DES +d2i_PAILLIER_PUBKEY 3076 1_1_0d EXIST::FUNCTION:PAILLIER +EC_KEY_METHOD_get_sign 3077 1_1_0d EXIST::FUNCTION:EC +CAST_cfb64_encrypt 3078 1_1_0d EXIST::FUNCTION:CAST +X509_CRL_get0_by_cert 3079 1_1_0d EXIST::FUNCTION: +BN_GF2m_add 3080 1_1_0d EXIST::FUNCTION:EC2M +ASYNC_get_wait_ctx 3081 1_1_0d EXIST::FUNCTION: +EVP_PKEY_derive 3082 1_1_0d EXIST::FUNCTION: +KDF_get_ibcs 3083 1_1_0d EXIST::FUNCTION: +OPENSSL_uni2asc 3084 1_1_0d EXIST::FUNCTION: +i2d_SM2CiphertextValue 3085 1_1_0d EXIST::FUNCTION:SM2 +X509_REQ_get_X509_PUBKEY 3086 1_1_0d EXIST::FUNCTION: +PEM_write_bio_RSA_PUBKEY 3087 1_1_0d EXIST::FUNCTION:RSA +DSA_meth_dup 3088 1_1_0d EXIST::FUNCTION:DSA +CMS_ReceiptRequest_new 3089 1_1_0d EXIST::FUNCTION:CMS +EVP_PBE_cleanup 3090 1_1_0d EXIST::FUNCTION: +ENGINE_set_default_digests 3091 1_1_0d EXIST::FUNCTION:ENGINE +DES_set_key 3092 1_1_0d EXIST::FUNCTION:DES +X509_CRL_get_ext_d2i 3093 1_1_0d EXIST::FUNCTION: +SKF_DevAuth 3094 1_1_0d EXIST::FUNCTION:SKF +ASIdentifiers_it 3095 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779 +ASIdentifiers_it 3095 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779 +CRYPTO_cbc128_decrypt 3096 1_1_0d EXIST::FUNCTION: +BIO_s_accept 3097 1_1_0d EXIST::FUNCTION:SOCK +DH_meth_free 3098 1_1_0d EXIST::FUNCTION:DH +X509_CRL_INFO_it 3099 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_CRL_INFO_it 3099 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_REQ_get_signature_nid 3100 1_1_0d EXIST::FUNCTION: +BIO_write 3101 1_1_0d EXIST::FUNCTION: +X509_REQ_get_pubkey 3102 1_1_0d EXIST::FUNCTION: +EC_KEY_set_ECCrefPublicKey 3103 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF +CRYPTO_THREAD_get_local 3104 1_1_0d EXIST::FUNCTION: +RSA_meth_set_pub_enc 3105 1_1_0d EXIST::FUNCTION:RSA +SKF_ImportCertificate 3106 1_1_0d EXIST::FUNCTION:SKF +PKCS12_set_mac 3107 1_1_0d EXIST::FUNCTION: +EVP_PKEY_CTX_new_id 3108 1_1_0d EXIST::FUNCTION: +CMS_ContentInfo_new 3109 1_1_0d EXIST::FUNCTION:CMS +EC_GROUP_get_curve_GF2m 3110 1_1_0d EXIST::FUNCTION:EC,EC2M +EVP_get_digestnames 3111 1_1_0d EXIST::FUNCTION: +ASN1_UNIVERSALSTRING_new 3112 1_1_0d EXIST::FUNCTION: +X509_find_by_subject 3113 1_1_0d EXIST::FUNCTION: +EVP_aes_128_cfb1 3114 1_1_0d EXIST::FUNCTION: +X509V3_EXT_REQ_add_nconf 3115 1_1_0d EXIST::FUNCTION: +BN_get_rfc3526_prime_2048 3116 1_1_0d EXIST::FUNCTION: +SDF_PrintDeviceInfo 3117 1_1_0d EXIST::FUNCTION:SDF +X509_chain_up_ref 3118 1_1_0d EXIST::FUNCTION: +SM9_ciphertext_size 3119 1_1_0d EXIST::FUNCTION:SM9 +BN_GF2m_poly2arr 3120 1_1_0d EXIST::FUNCTION:EC2M +OPENSSL_hexchar2int 3121 1_1_0d EXIST::FUNCTION: +SDF_GenerateAgreementDataAndKeyWithECC 3122 1_1_0d EXIST::FUNCTION: +d2i_PKCS7_DIGEST 3123 1_1_0d EXIST::FUNCTION: +X509_PUBKEY_set 3124 1_1_0d EXIST::FUNCTION: +OCSP_BASICRESP_get_ext_count 3125 1_1_0d EXIST::FUNCTION:OCSP +X509_STORE_set_ex_data 3126 1_1_0d EXIST::FUNCTION: +BIO_set_next 3127 1_1_0d EXIST::FUNCTION: +d2i_PrivateKey_fp 3128 1_1_0d EXIST::FUNCTION:STDIO +PEM_write_bio_SM9PrivateKey 3129 1_1_0d EXIST::FUNCTION:SM9 +X509_CRL_delete_ext 3130 1_1_0d EXIST::FUNCTION: +UI_dup_input_string 3131 1_1_0d EXIST::FUNCTION:UI +UI_get_ex_data 3132 1_1_0d EXIST::FUNCTION:UI +ASN1_item_d2i_bio 3133 1_1_0d EXIST::FUNCTION: +EVP_camellia_192_cbc 3134 1_1_0d EXIST::FUNCTION:CAMELLIA +ASIdentifiers_free 3135 1_1_0d EXIST::FUNCTION:RFC3779 +d2i_PKCS8_PRIV_KEY_INFO_fp 3136 1_1_0d EXIST::FUNCTION:STDIO +CRYPTO_gcm128_init 3137 1_1_0d EXIST::FUNCTION: +PEM_read_bio_SM9PublicParameters 3138 1_1_0d EXIST::FUNCTION:SM9 +EC_GROUP_dup 3139 1_1_0d EXIST::FUNCTION:EC +DIRECTORYSTRING_it 3140 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +DIRECTORYSTRING_it 3140 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +EVP_CipherInit_ex 3141 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_do_all 3142 1_1_0d EXIST::FUNCTION: +RSA_new 3143 1_1_0d EXIST::FUNCTION:RSA +RSA_padding_check_PKCS1_OAEP 3144 1_1_0d EXIST::FUNCTION:RSA +CMS_unsigned_delete_attr 3145 1_1_0d EXIST::FUNCTION:CMS +UI_method_set_closer 3146 1_1_0d EXIST::FUNCTION:UI +HMAC_CTX_set_flags 3147 1_1_0d EXIST::FUNCTION: +d2i_IPAddressOrRange 3148 1_1_0d EXIST::FUNCTION:RFC3779 +SCT_set1_log_id 3149 1_1_0d EXIST::FUNCTION:CT +BIO_dump_indent_fp 3150 1_1_0d EXIST::FUNCTION:STDIO +ENGINE_remove 3151 1_1_0d EXIST::FUNCTION:ENGINE +SCT_LIST_free 3152 1_1_0d EXIST::FUNCTION:CT +BIO_f_base64 3153 1_1_0d EXIST::FUNCTION: +EVP_aes_256_wrap_pad 3154 1_1_0d EXIST::FUNCTION: +DISPLAYTEXT_it 3155 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +DISPLAYTEXT_it 3155 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +RSA_X931_hash_id 3156 1_1_0d EXIST::FUNCTION:RSA +i2d_PKCS8_PRIV_KEY_INFO_bio 3157 1_1_0d EXIST::FUNCTION: +UI_add_user_data 3158 1_1_0d EXIST::FUNCTION:UI +ENGINE_register_EC 3159 1_1_0d EXIST::FUNCTION:ENGINE +ASN1_put_object 3160 1_1_0d EXIST::FUNCTION: +EC_GROUP_check_discriminant 3161 1_1_0d EXIST::FUNCTION:EC +i2d_SM9PublicKey 3162 1_1_0d EXIST::FUNCTION:SM9 +OPENSSL_DIR_read 3163 1_1_0d EXIST::FUNCTION: +X509_VERIFY_PARAM_set1_policies 3164 1_1_0d EXIST::FUNCTION: +PKCS12_BAGS_new 3165 1_1_0d EXIST::FUNCTION: +CRYPTO_mem_debug_malloc 3166 1_1_0d EXIST::FUNCTION:CRYPTO_MDEBUG +SCT_set1_signature 3167 1_1_0d EXIST::FUNCTION:CT +X509_CRL_get_signature_nid 3168 1_1_0d EXIST::FUNCTION: +CRYPTO_ocb128_copy_ctx 3169 1_1_0d EXIST::FUNCTION:OCB +v2i_GENERAL_NAMES 3170 1_1_0d EXIST::FUNCTION: +X509_STORE_lock 3171 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_sort 3172 1_1_0d EXIST::FUNCTION: +PKCS12_AUTHSAFES_it 3173 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS12_AUTHSAFES_it 3173 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ASN1_put_eoc 3174 1_1_0d EXIST::FUNCTION: +X509_get_signature_type 3175 1_1_0d EXIST::FUNCTION: +d2i_CERTIFICATEPOLICIES 3176 1_1_0d EXIST::FUNCTION: +EVP_aes_192_ocb 3177 1_1_0d EXIST::FUNCTION:OCB +d2i_X509_REQ_INFO 3178 1_1_0d EXIST::FUNCTION: +BN_num_bits_word 3179 1_1_0d EXIST::FUNCTION: +EVP_PKEY_decrypt_old 3180 1_1_0d EXIST::FUNCTION: +SRP_check_known_gN_param 3181 1_1_0d EXIST::FUNCTION:SRP +OPENSSL_utf82uni 3182 1_1_0d EXIST::FUNCTION: +DES_ede3_cfb64_encrypt 3183 1_1_0d EXIST::FUNCTION:DES +X509_NAME_ENTRY_it 3184 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_NAME_ENTRY_it 3184 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_OBJECT_free 3185 1_1_0d EXIST::FUNCTION: +CONF_imodule_get_usr_data 3186 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_meth_get_cleanup 3187 1_1_0d EXIST::FUNCTION: +X509_STORE_get_verify_cb 3188 1_1_0d EXIST::FUNCTION: +i2o_SM2CiphertextValue 3189 1_1_0d EXIST::FUNCTION:SM2 +EC_GROUP_cmp 3190 1_1_0d EXIST::FUNCTION:EC +PEM_write_bio_X509_REQ_NEW 3191 1_1_0d EXIST::FUNCTION: +ASN1_TYPE_cmp 3192 1_1_0d EXIST::FUNCTION: +d2i_SM9PublicParameters 3193 1_1_0d EXIST::FUNCTION:SM9 +X509V3_add_value_uchar 3194 1_1_0d EXIST::FUNCTION: +RSA_print_fp 3195 1_1_0d EXIST::FUNCTION:RSA,STDIO +CRYPTO_ofb128_encrypt 3196 1_1_0d EXIST::FUNCTION: +EVP_des_ede3_ofb 3197 1_1_0d EXIST::FUNCTION:DES +BIO_printf 3198 1_1_0d EXIST::FUNCTION: +X509_CERT_AUX_new 3199 1_1_0d EXIST::FUNCTION: +TS_REQ_get_cert_req 3200 1_1_0d EXIST::FUNCTION:TS +TS_MSG_IMPRINT_free 3201 1_1_0d EXIST::FUNCTION:TS +SDF_InternalSign_ECC 3202 1_1_0d EXIST::FUNCTION: +POLICY_MAPPINGS_it 3203 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +POLICY_MAPPINGS_it 3203 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +CMS_RecipientInfo_ktri_get0_algs 3204 1_1_0d EXIST::FUNCTION:CMS +TS_MSG_IMPRINT_new 3205 1_1_0d EXIST::FUNCTION:TS +X509_CRL_METHOD_new 3206 1_1_0d EXIST::FUNCTION: +EVP_PKEY_CTX_get_keygen_info 3207 1_1_0d EXIST::FUNCTION: +ERR_load_RSA_strings 3208 1_1_0d EXIST::FUNCTION:RSA +ASN1_OBJECT_create 3209 1_1_0d EXIST::FUNCTION: +EVP_des_ede3_ecb 3210 1_1_0d EXIST::FUNCTION:DES +CRYPTO_ocb128_setiv 3211 1_1_0d EXIST::FUNCTION:OCB +DSA_meth_new 3212 1_1_0d EXIST::FUNCTION:DSA +i2d_X509_REQ_bio 3213 1_1_0d EXIST::FUNCTION: +EC_KEY_METHOD_set_compute_key 3214 1_1_0d EXIST::FUNCTION:EC +BIO_set_tcp_ndelay 3215 1_1_0d EXIST::FUNCTION:SOCK +RSA_setup_blinding 3216 1_1_0d EXIST::FUNCTION:RSA +RC5_32_set_key 3217 1_1_0d EXIST::FUNCTION:RC5 +BIO_s_fd 3218 1_1_0d EXIST::FUNCTION: +BIO_sock_error 3219 1_1_0d EXIST::FUNCTION:SOCK +TS_VERIFY_CTX_new 3220 1_1_0d EXIST::FUNCTION:TS +EVP_aes_192_ofb 3221 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_meth_new 3222 1_1_0d EXIST::FUNCTION: +EC_KEY_METHOD_get_encrypt 3223 1_1_0d EXIST::FUNCTION:SM2 +DSA_set_ex_data 3224 1_1_0d EXIST::FUNCTION:DSA +EVP_MD_CTX_set_md_data 3225 1_1_0d EXIST::FUNCTION: +X509_NAME_new 3226 1_1_0d EXIST::FUNCTION: +EVP_PKEY_CTX_set_data 3227 1_1_0d EXIST::FUNCTION: +UTF8_getc 3228 1_1_0d EXIST::FUNCTION: +d2i_DSAPublicKey 3229 1_1_0d EXIST::FUNCTION:DSA +ECIES_PARAMS_get_enc 3230 1_1_0d EXIST::FUNCTION:ECIES +ENGINE_get_default_DSA 3231 1_1_0d EXIST::FUNCTION:ENGINE +PEM_def_callback 3232 1_1_0d EXIST::FUNCTION: +TS_TST_INFO_free 3233 1_1_0d EXIST::FUNCTION:TS +DH_meth_get_generate_key 3234 1_1_0d EXIST::FUNCTION:DH +ECDSA_SIG_set_ECCSIGNATUREBLOB 3235 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF +RSA_get_RSAPUBLICKEYBLOB 3236 1_1_0d EXIST::FUNCTION:GMAPI,RSA,SKF +RSA_padding_add_none 3237 1_1_0d EXIST::FUNCTION:RSA +ASN1_BMPSTRING_new 3238 1_1_0d EXIST::FUNCTION: +PEM_read_bio_X509 3239 1_1_0d EXIST::FUNCTION: +PKCS7_SIGN_ENVELOPE_new 3240 1_1_0d EXIST::FUNCTION: +EVP_PKEY_paramgen_init 3241 1_1_0d EXIST::FUNCTION: +EVP_PKEY_CTX_get0_pkey 3242 1_1_0d EXIST::FUNCTION: +ECDSA_SIG_new 3243 1_1_0d EXIST::FUNCTION:EC +OCSP_SINGLERESP_get_ext_by_critical 3244 1_1_0d EXIST::FUNCTION:OCSP +BN_mul_word 3245 1_1_0d EXIST::FUNCTION: +X509_STORE_get_check_issued 3246 1_1_0d EXIST::FUNCTION: +X509_PURPOSE_get_count 3247 1_1_0d EXIST::FUNCTION: +SXNET_new 3248 1_1_0d EXIST::FUNCTION: +X509v3_get_ext_count 3249 1_1_0d EXIST::FUNCTION: +ASN1_UTF8STRING_it 3250 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_UTF8STRING_it 3250 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +EC_KEY_set_flags 3251 1_1_0d EXIST::FUNCTION:EC +X509_NAME_ENTRY_create_by_OBJ 3252 1_1_0d EXIST::FUNCTION: +SXNETID_new 3253 1_1_0d EXIST::FUNCTION: +SM2_do_encrypt 3254 1_1_0d EXIST::FUNCTION:SM2 +OTHERNAME_free 3255 1_1_0d EXIST::FUNCTION: +CTLOG_get0_log_id 3256 1_1_0d EXIST::FUNCTION:CT +IDEA_cfb64_encrypt 3257 1_1_0d EXIST::FUNCTION:IDEA +ECIES_PARAMS_init_with_type 3258 1_1_0d EXIST::FUNCTION:ECIES +SCT_set_timestamp 3259 1_1_0d EXIST::FUNCTION:CT +BN_bn2hex 3260 1_1_0d EXIST::FUNCTION: +X509_EXTENSION_get_critical 3261 1_1_0d EXIST::FUNCTION: +PEM_read_bio_SM9PrivateKey 3262 1_1_0d EXIST::FUNCTION:SM9 +EC_GROUP_get_degree 3263 1_1_0d EXIST::FUNCTION:EC +CRYPTO_128_wrap 3264 1_1_0d EXIST::FUNCTION: +SKF_UnloadLibrary 3265 1_1_0d EXIST::FUNCTION:SKF +X509_REQ_set_pubkey 3266 1_1_0d EXIST::FUNCTION: +BIO_asn1_get_prefix 3267 1_1_0d EXIST::FUNCTION: +ERR_load_PKCS12_strings 3268 1_1_0d EXIST::FUNCTION: +DSO_flags 3269 1_1_0d EXIST::FUNCTION: +i2d_PKCS8_PRIV_KEY_INFO_fp 3270 1_1_0d EXIST::FUNCTION:STDIO +i2d_PKCS7_ISSUER_AND_SERIAL 3271 1_1_0d EXIST::FUNCTION: +TS_CONF_set_accuracy 3272 1_1_0d EXIST::FUNCTION:TS +EVP_DigestInit 3273 1_1_0d EXIST::FUNCTION: +OCSP_CERTID_free 3274 1_1_0d EXIST::FUNCTION:OCSP +MD2_Init 3275 1_1_0d EXIST::FUNCTION:MD2 +TS_REQ_set_version 3276 1_1_0d EXIST::FUNCTION:TS +UI_create_method 3277 1_1_0d EXIST::FUNCTION:UI +EVP_MD_CTX_set_update_fn 3278 1_1_0d EXIST::FUNCTION: +i2d_SM9PrivateKey 3279 1_1_0d EXIST::FUNCTION:SM9 +SKF_MacInit 3280 1_1_0d EXIST::FUNCTION:SKF +d2i_SM9Ciphertext_bio 3281 1_1_0d EXIST::FUNCTION:SM9 +BASIC_CONSTRAINTS_it 3282 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +BASIC_CONSTRAINTS_it 3282 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PaillierPrivateKey_it 3283 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:PAILLIER +PaillierPrivateKey_it 3283 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:PAILLIER +SM2_COSIGNER2_SHARE_it 3284 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:SM2 +SM2_COSIGNER2_SHARE_it 3284 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:SM2 +X509_check_trust 3285 1_1_0d EXIST::FUNCTION: +EVP_PKEY_encrypt_init 3286 1_1_0d EXIST::FUNCTION: +EC_KEY_set_ECCPRIVATEKEYBLOB 3287 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF +PKCS7_signatureVerify 3288 1_1_0d EXIST::FUNCTION: +SMIME_write_ASN1 3289 1_1_0d EXIST::FUNCTION: +SCT_get_signature_nid 3290 1_1_0d EXIST::FUNCTION:CT +RSA_meth_set_priv_enc 3291 1_1_0d EXIST::FUNCTION:RSA +DSA_set_flags 3292 1_1_0d EXIST::FUNCTION:DSA +i2d_PaillierPublicKey 3293 1_1_0d EXIST::FUNCTION:PAILLIER +EVP_sms4_ccm 3294 1_1_0d EXIST::FUNCTION:SMS4 +i2d_RSA_PUBKEY_bio 3295 1_1_0d EXIST::FUNCTION:RSA +PKCS12_SAFEBAG_create0_pkcs8 3296 1_1_0d EXIST::FUNCTION: +X509_REQ_digest 3297 1_1_0d EXIST::FUNCTION: +PEM_dek_info 3298 1_1_0d EXIST::FUNCTION: +EVP_PKEY_asn1_set_security_bits 3299 1_1_0d EXIST::FUNCTION: +X509_NAME_add_entry 3300 1_1_0d EXIST::FUNCTION: +SRP_create_verifier_BN 3301 1_1_0d EXIST::FUNCTION:SRP +GENERAL_NAME_set0_value 3302 1_1_0d EXIST::FUNCTION: +i2d_PROXY_POLICY 3303 1_1_0d EXIST::FUNCTION: +OPENSSL_uni2utf8 3304 1_1_0d EXIST::FUNCTION: +PKCS8_add_keyusage 3305 1_1_0d EXIST::FUNCTION: +TS_CONF_set_signer_key 3306 1_1_0d EXIST::FUNCTION:TS +NAME_CONSTRAINTS_check_CN 3307 1_1_0d EXIST::FUNCTION: +ASN1_d2i_fp 3308 1_1_0d EXIST::FUNCTION:STDIO +ASN1_NULL_free 3309 1_1_0d EXIST::FUNCTION: +X509_INFO_free 3310 1_1_0d EXIST::FUNCTION: +X509_PUBKEY_it 3311 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_PUBKEY_it 3311 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +DSA_test_flags 3312 1_1_0d EXIST::FUNCTION:DSA +PEM_read_SM9_MASTER_PUBKEY 3313 1_1_0d EXIST::FUNCTION:SM9,STDIO +PKCS7_ENCRYPT_new 3314 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_set_signctx 3315 1_1_0d EXIST::FUNCTION: +CMS_is_detached 3316 1_1_0d EXIST::FUNCTION:CMS +BUF_MEM_free 3317 1_1_0d EXIST::FUNCTION: +EC_KEY_set_asn1_flag 3318 1_1_0d EXIST::FUNCTION:EC +BN_mod_word 3319 1_1_0d EXIST::FUNCTION: +BN_set_negative 3320 1_1_0d EXIST::FUNCTION: +i2d_ASIdOrRange 3321 1_1_0d EXIST::FUNCTION:RFC3779 +i2d_SM9PublicParameters_fp 3322 1_1_0d EXIST::FUNCTION:SM9,STDIO +ASN1_PCTX_new 3323 1_1_0d EXIST::FUNCTION: +X509_PKEY_new 3324 1_1_0d EXIST::FUNCTION: +BIO_vsnprintf 3325 1_1_0d EXIST::FUNCTION: +DSO_load 3326 1_1_0d EXIST::FUNCTION: +ECIES_encrypt 3327 1_1_0d EXIST::FUNCTION:ECIES +ERR_load_GMAPI_strings 3328 1_1_0d EXIST::FUNCTION:GMAPI +ASN1_object_size 3329 1_1_0d EXIST::FUNCTION: +OPENSSL_DIR_end 3330 1_1_0d EXIST::FUNCTION: +CRYPTO_memdup 3331 1_1_0d EXIST::FUNCTION: +PEM_read_bio_PKCS8_PRIV_KEY_INFO 3332 1_1_0d EXIST::FUNCTION: +PKCS8_get_attr 3333 1_1_0d EXIST::FUNCTION: +EVP_PKEY_get1_RSA 3334 1_1_0d EXIST::FUNCTION:RSA +SM2_COSIGNER2_PROOF_it 3335 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:SM2 +SM2_COSIGNER2_PROOF_it 3335 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:SM2 +CRYPTO_ctr128_encrypt 3336 1_1_0d EXIST::FUNCTION: +ENGINE_register_all_DH 3337 1_1_0d EXIST::FUNCTION:ENGINE +CMS_RecipientEncryptedKey_get0_id 3338 1_1_0d EXIST::FUNCTION:CMS +SDF_ImportKeyWithKEK 3339 1_1_0d EXIST::FUNCTION: +X509_CRL_get0_signature 3340 1_1_0d EXIST::FUNCTION: +X509V3_conf_free 3341 1_1_0d EXIST::FUNCTION: +ASN1_get_object 3342 1_1_0d EXIST::FUNCTION: +DSA_dup_DH 3343 1_1_0d EXIST::FUNCTION:DH,DSA +PEM_read_SM9MasterSecret 3344 1_1_0d EXIST::FUNCTION:SM9,STDIO +X509_NAME_add_entry_by_txt 3345 1_1_0d EXIST::FUNCTION: +X509_STORE_load_locations 3346 1_1_0d EXIST::FUNCTION: +HMAC_CTX_reset 3347 1_1_0d EXIST::FUNCTION: +d2i_SM9PublicParameters_bio 3348 1_1_0d EXIST::FUNCTION:SM9 +BIGNUM_it 3349 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +BIGNUM_it 3349 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +OTHERNAME_cmp 3350 1_1_0d EXIST::FUNCTION: +EC_GROUP_new_by_curve_name 3351 1_1_0d EXIST::FUNCTION:EC +EC_GROUP_get_pentanomial_basis 3352 1_1_0d EXIST::FUNCTION:EC,EC2M +RSA_OAEP_PARAMS_new 3353 1_1_0d EXIST::FUNCTION:RSA +BIO_meth_get_callback_ctrl 3354 1_1_0d EXIST::FUNCTION: +X509_STORE_set_check_revocation 3355 1_1_0d EXIST::FUNCTION: +SKF_DigestUpdate 3356 1_1_0d EXIST::FUNCTION:SKF +X509_issuer_and_serial_cmp 3357 1_1_0d EXIST::FUNCTION: +SKF_GenRandom 3358 1_1_0d EXIST::FUNCTION:SKF +EVP_CIPHER_CTX_block_size 3359 1_1_0d EXIST::FUNCTION: +RSA_flags 3360 1_1_0d EXIST::FUNCTION:RSA +TS_RESP_CTX_add_policy 3361 1_1_0d EXIST::FUNCTION:TS +BN_mod_exp2_mont 3362 1_1_0d EXIST::FUNCTION: +PEM_read_NETSCAPE_CERT_SEQUENCE 3363 1_1_0d EXIST::FUNCTION:STDIO +CRYPTO_THREAD_lock_new 3364 1_1_0d EXIST::FUNCTION: +TS_RESP_CTX_add_failure_info 3365 1_1_0d EXIST::FUNCTION:TS +SKF_PrintRSAPublicKey 3366 1_1_0d EXIST::FUNCTION:SKF +X509_verify 3367 1_1_0d EXIST::FUNCTION: +X509_free 3368 1_1_0d EXIST::FUNCTION: +EVP_seed_ofb 3369 1_1_0d EXIST::FUNCTION:SEED +EVP_des_ede 3370 1_1_0d EXIST::FUNCTION:DES +BIO_meth_get_destroy 3371 1_1_0d EXIST::FUNCTION: +X509_CRL_get0_extensions 3372 1_1_0d EXIST::FUNCTION: +BIO_get_host_ip 3373 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,SOCK +ENGINE_set_init_function 3374 1_1_0d EXIST::FUNCTION:ENGINE +X509_time_adj_ex 3375 1_1_0d EXIST::FUNCTION: +OBJ_ln2nid 3376 1_1_0d EXIST::FUNCTION: +EVP_aes_256_cbc_hmac_sha256 3377 1_1_0d EXIST::FUNCTION: +d2i_DSA_SIG 3378 1_1_0d EXIST::FUNCTION:DSA +SDF_ReadFile 3379 1_1_0d EXIST::FUNCTION: +TS_MSG_IMPRINT_set_msg 3380 1_1_0d EXIST::FUNCTION:TS +SHA1_Final 3381 1_1_0d EXIST::FUNCTION: +PKCS5_pbe_set 3382 1_1_0d EXIST::FUNCTION: +d2i_OCSP_REQUEST 3383 1_1_0d EXIST::FUNCTION:OCSP +IDEA_ofb64_encrypt 3384 1_1_0d EXIST::FUNCTION:IDEA +X509_STORE_CTX_cleanup 3385 1_1_0d EXIST::FUNCTION: +SKF_LoadLibrary 3386 1_1_0d EXIST::FUNCTION:SKF +PEM_read_X509_AUX 3387 1_1_0d EXIST::FUNCTION:STDIO +TS_RESP_CTX_get_request 3388 1_1_0d EXIST::FUNCTION:TS +RC2_cfb64_encrypt 3389 1_1_0d EXIST::FUNCTION:RC2 +EVP_PKEY_get0_DH 3390 1_1_0d EXIST::FUNCTION:DH +i2d_DSAparams 3391 1_1_0d EXIST::FUNCTION:DSA +i2d_ECDSA_SIG_fp 3392 1_1_0d EXIST::FUNCTION:EC,STDIO +SM9PrivateKey_get_gmtls_public_key 3393 1_1_0d EXIST::FUNCTION:SM9 +X509_CRL_get_lastUpdate 3394 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0 +d2i_ASN1_INTEGER 3395 1_1_0d EXIST::FUNCTION: +PKCS5_v2_scrypt_keyivgen 3396 1_1_0d EXIST::FUNCTION:SCRYPT +EC_KEY_generate_key 3397 1_1_0d EXIST::FUNCTION:EC +X509_STORE_get_verify 3398 1_1_0d EXIST::FUNCTION: +RSA_meth_set_finish 3399 1_1_0d EXIST::FUNCTION:RSA +BN_mod_sub_quick 3400 1_1_0d EXIST::FUNCTION: +SCT_get0_log_id 3401 1_1_0d EXIST::FUNCTION:CT +OCSP_resp_get0_certs 3402 1_1_0d EXIST::FUNCTION:OCSP +IPAddressOrRange_free 3403 1_1_0d EXIST::FUNCTION:RFC3779 +OCSP_request_onereq_get0 3404 1_1_0d EXIST::FUNCTION:OCSP +BN_gcd 3405 1_1_0d EXIST::FUNCTION: +EC_GROUP_get0_cofactor 3406 1_1_0d EXIST::FUNCTION:EC +X509_REQ_sign 3407 1_1_0d EXIST::FUNCTION: +CMS_RecipientInfo_kari_decrypt 3408 1_1_0d EXIST::FUNCTION:CMS +BN_clear_bit 3409 1_1_0d EXIST::FUNCTION: +X509_PURPOSE_get0_name 3410 1_1_0d EXIST::FUNCTION: +SDF_PrintRSAPrivateKey 3411 1_1_0d EXIST::FUNCTION:SDF +SDF_CalculateMAC 3412 1_1_0d EXIST::FUNCTION: +MD4_Update 3413 1_1_0d EXIST::FUNCTION:MD4 +ASN1_UNIVERSALSTRING_free 3414 1_1_0d EXIST::FUNCTION: +BIO_f_md 3415 1_1_0d EXIST::FUNCTION: +PEM_X509_INFO_write_bio 3416 1_1_0d EXIST::FUNCTION: +i2d_SM9Ciphertext 3417 1_1_0d EXIST::FUNCTION:SM9 +DSO_convert_filename 3418 1_1_0d EXIST::FUNCTION: +v2i_GENERAL_NAME 3419 1_1_0d EXIST::FUNCTION: +X509_TRUST_get_flags 3420 1_1_0d EXIST::FUNCTION: +OCSP_CERTID_new 3421 1_1_0d EXIST::FUNCTION:OCSP +BF_options 3422 1_1_0d EXIST::FUNCTION:BF +CRYPTO_nistcts128_encrypt_block 3423 1_1_0d EXIST::FUNCTION: +CMS_RecipientInfo_ktri_get0_signer_id 3424 1_1_0d EXIST::FUNCTION:CMS +i2d_SM2_COSIGNER2_SHARE 3425 1_1_0d EXIST::FUNCTION:SM2 +DH_set_flags 3426 1_1_0d EXIST::FUNCTION:DH +PEM_write_SM9_MASTER_PUBKEY 3427 1_1_0d EXIST::FUNCTION:SM9,STDIO +SM2_compute_id_digest 3428 1_1_0d EXIST::FUNCTION:SM2 +BN_GENCB_new 3429 1_1_0d EXIST::FUNCTION: +SM2CiphertextValue_free 3430 1_1_0d EXIST::FUNCTION:SM2 +ASYNC_WAIT_CTX_get_all_fds 3431 1_1_0d EXIST::FUNCTION: +RSA_new_from_RSArefPublicKey 3432 1_1_0d EXIST::FUNCTION:GMAPI,RSA,SDF +BN_with_flags 3433 1_1_0d EXIST::FUNCTION: +SDF_PrintRSAPublicKey 3434 1_1_0d EXIST::FUNCTION:SDF +ASN1_i2d_fp 3435 1_1_0d EXIST::FUNCTION:STDIO +X509at_add1_attr_by_NID 3436 1_1_0d EXIST::FUNCTION: +BN_mod_exp 3437 1_1_0d EXIST::FUNCTION: +DSA_meth_get_paramgen 3438 1_1_0d EXIST::FUNCTION:DSA +ASN1_str2mask 3439 1_1_0d EXIST::FUNCTION: +PKCS12_BAGS_free 3440 1_1_0d EXIST::FUNCTION: +EVP_aes_128_ecb 3441 1_1_0d EXIST::FUNCTION: +BN_mod_sqrt 3442 1_1_0d EXIST::FUNCTION: +DSA_get_method 3443 1_1_0d EXIST::FUNCTION:DSA +X509_SIG_it 3444 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_SIG_it 3444 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_CRL_match 3445 1_1_0d EXIST::FUNCTION: +EC_POINT_hex2point 3446 1_1_0d EXIST::FUNCTION:EC +ASN1_UTCTIME_print 3447 1_1_0d EXIST::FUNCTION: +ENGINE_set_digests 3448 1_1_0d EXIST::FUNCTION:ENGINE +ECPARAMETERS_new 3449 1_1_0d EXIST::FUNCTION:EC +SM9_KEY_free 3450 1_1_0d EXIST::FUNCTION:SM9 +OPENSSL_gmtime_adj 3451 1_1_0d EXIST::FUNCTION: +ECIES_PARAMS_get_kdf 3452 1_1_0d EXIST::FUNCTION:ECIES +NETSCAPE_CERT_SEQUENCE_new 3453 1_1_0d EXIST::FUNCTION: +PAILLIER_free 3454 1_1_0d EXIST::FUNCTION:PAILLIER +SKF_NewEnvelopedKey 3455 1_1_0d EXIST::FUNCTION:SKF +EC_POINT_dup 3456 1_1_0d EXIST::FUNCTION:EC +i2d_ECDSA_SIG 3457 1_1_0d EXIST::FUNCTION:EC +EVP_rc2_cfb64 3458 1_1_0d EXIST::FUNCTION:RC2 +_shadow_DES_check_key 3459 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:DES +_shadow_DES_check_key 3459 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:DES +EC_POINT_is_at_infinity 3460 1_1_0d EXIST::FUNCTION:EC +OCSP_CERTID_dup 3461 1_1_0d EXIST::FUNCTION:OCSP +PKCS8_PRIV_KEY_INFO_it 3462 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS8_PRIV_KEY_INFO_it 3462 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +DSA_meth_free 3463 1_1_0d EXIST::FUNCTION:DSA +ENGINE_set_default 3464 1_1_0d EXIST::FUNCTION:ENGINE +X509_STORE_CTX_get_lookup_certs 3465 1_1_0d EXIST::FUNCTION: +SDF_GetErrorString 3466 1_1_0d EXIST::FUNCTION:SDF +ASN1_GENERALIZEDTIME_print 3467 1_1_0d EXIST::FUNCTION: +DH_size 3468 1_1_0d EXIST::FUNCTION:DH +i2d_PROXY_CERT_INFO_EXTENSION 3469 1_1_0d EXIST::FUNCTION: +DSA_meth_get_flags 3470 1_1_0d EXIST::FUNCTION:DSA +OCSP_cert_id_new 3471 1_1_0d EXIST::FUNCTION:OCSP +PKCS5_PBKDF2_HMAC 3472 1_1_0d EXIST::FUNCTION: +Camellia_cfb128_encrypt 3473 1_1_0d EXIST::FUNCTION:CAMELLIA +BIO_ADDR_new 3474 1_1_0d EXIST::FUNCTION:SOCK +sm3_update 3475 1_1_0d EXIST::FUNCTION:SM3 +CMS_RecipientInfo_get0_pkey_ctx 3476 1_1_0d EXIST::FUNCTION:CMS +SDF_GenerateKeyPair_ECC 3477 1_1_0d EXIST::FUNCTION: +EVP_get_pw_prompt 3478 1_1_0d EXIST::FUNCTION:UI +OCSP_RESPID_match 3479 1_1_0d EXIST::FUNCTION:OCSP +PKCS7_RECIP_INFO_new 3480 1_1_0d EXIST::FUNCTION: +EVP_MD_pkey_type 3481 1_1_0d EXIST::FUNCTION: +ASN1_item_ex_d2i 3482 1_1_0d EXIST::FUNCTION: +PKCS12_setup_mac 3483 1_1_0d EXIST::FUNCTION: +CMS_get0_type 3484 1_1_0d EXIST::FUNCTION:CMS +a2i_IPADDRESS 3485 1_1_0d EXIST::FUNCTION: +BN_GF2m_mod_div 3486 1_1_0d EXIST::FUNCTION:EC2M +ASN1_SCTX_set_app_data 3487 1_1_0d EXIST::FUNCTION: +RSA_meth_set0_app_data 3488 1_1_0d EXIST::FUNCTION:RSA +SKF_GetDevInfo 3489 1_1_0d EXIST::FUNCTION:SKF +OCSP_resp_get0_produced_at 3490 1_1_0d EXIST::FUNCTION:OCSP +d2i_ASN1_UTF8STRING 3491 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_deep_copy 3492 1_1_0d EXIST::FUNCTION: +EVP_PKEY2PKCS8 3493 1_1_0d EXIST::FUNCTION: +X509V3_EXT_add 3494 1_1_0d EXIST::FUNCTION: +NAME_CONSTRAINTS_check 3495 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_get_encrypt 3496 1_1_0d EXIST::FUNCTION: +d2i_ECCCipher 3497 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF +BIO_gets 3498 1_1_0d EXIST::FUNCTION: +BN_mod_add_quick 3499 1_1_0d EXIST::FUNCTION: +ENGINE_set_destroy_function 3500 1_1_0d EXIST::FUNCTION:ENGINE +DSA_meth_get0_name 3501 1_1_0d EXIST::FUNCTION:DSA +PEM_read_bio_X509_CRL 3502 1_1_0d EXIST::FUNCTION: +EVP_PKEY_get0_hmac 3503 1_1_0d EXIST::FUNCTION: +SKF_CloseContainer 3504 1_1_0d EXIST::FUNCTION:SKF +PKCS7_print_ctx 3505 1_1_0d EXIST::FUNCTION: +ASYNC_WAIT_CTX_get_fd 3506 1_1_0d EXIST::FUNCTION: +SDF_InternalDecrypt_ECC 3507 1_1_0d EXIST::FUNCTION: +TS_VERIFY_CTX_init 3508 1_1_0d EXIST::FUNCTION:TS +OPENSSL_die 3509 1_1_0d EXIST::FUNCTION: +AUTHORITY_KEYID_free 3510 1_1_0d EXIST::FUNCTION: +EVP_PKEY_encrypt 3511 1_1_0d EXIST::FUNCTION: +X509_REVOKED_get_ext 3512 1_1_0d EXIST::FUNCTION: +OCSP_REQINFO_new 3513 1_1_0d EXIST::FUNCTION:OCSP +i2d_SM9PublicParameters_bio 3514 1_1_0d EXIST::FUNCTION:SM9 +TS_ACCURACY_free 3515 1_1_0d EXIST::FUNCTION:TS +EC_GROUP_set_generator 3516 1_1_0d EXIST::FUNCTION:EC +d2i_PKCS7_ENCRYPT 3517 1_1_0d EXIST::FUNCTION: +ASN1_PCTX_set_str_flags 3518 1_1_0d EXIST::FUNCTION: +PKCS12_mac_present 3519 1_1_0d EXIST::FUNCTION: +EVP_aes_256_wrap 3520 1_1_0d EXIST::FUNCTION: +DH_check_params 3521 1_1_0d EXIST::FUNCTION:DH +EVP_aes_192_ccm 3522 1_1_0d EXIST::FUNCTION: +ENGINE_setup_bsd_cryptodev 3523 1_1_0d EXIST:__FreeBSD__:FUNCTION:DEPRECATEDIN_1_1_0,ENGINE +BN_get_word 3524 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_set_current_cert 3525 1_1_0d EXIST::FUNCTION: +d2i_RSA_PUBKEY_fp 3526 1_1_0d EXIST::FUNCTION:RSA,STDIO +SHA224_Init 3527 1_1_0d EXIST::FUNCTION: +CMS_SignerInfo_get0_md_ctx 3528 1_1_0d EXIST::FUNCTION:CMS +PEM_read_PKCS8 3529 1_1_0d EXIST::FUNCTION:STDIO +TS_REQ_get_exts 3530 1_1_0d EXIST::FUNCTION:TS +X509_OBJECT_get0_X509 3531 1_1_0d EXIST::FUNCTION: +DSA_meth_get_init 3532 1_1_0d EXIST::FUNCTION:DSA +PEM_read_PAILLIER_PUBKEY 3533 1_1_0d EXIST::FUNCTION:PAILLIER,STDIO +BIO_socket_ioctl 3534 1_1_0d EXIST::FUNCTION:SOCK +BIO_ADDRINFO_socktype 3535 1_1_0d EXIST::FUNCTION:SOCK +X509_load_cert_crl_file 3536 1_1_0d EXIST::FUNCTION: +ENGINE_set_DSA 3537 1_1_0d EXIST::FUNCTION:ENGINE +OPENSSL_INIT_set_config_appname 3538 1_1_0d EXIST::FUNCTION:STDIO +EC_KEY_METHOD_get_verify 3539 1_1_0d EXIST::FUNCTION:EC +EVP_des_ede_cfb64 3540 1_1_0d EXIST::FUNCTION:DES +EVP_camellia_256_cfb1 3541 1_1_0d EXIST::FUNCTION:CAMELLIA +ASRange_new 3542 1_1_0d EXIST::FUNCTION:RFC3779 +DSA_meth_set_finish 3543 1_1_0d EXIST::FUNCTION:DSA +ASN1_GENERALIZEDTIME_set 3544 1_1_0d EXIST::FUNCTION: +CTLOG_STORE_new 3545 1_1_0d EXIST::FUNCTION:CT +CMS_add_standard_smimecap 3546 1_1_0d EXIST::FUNCTION:CMS +X509_NAME_dup 3547 1_1_0d EXIST::FUNCTION: +CRYPTO_get_mem_functions 3548 1_1_0d EXIST::FUNCTION: +d2i_USERNOTICE 3549 1_1_0d EXIST::FUNCTION: +i2d_PKCS8PrivateKey_nid_bio 3550 1_1_0d EXIST::FUNCTION: +i2d_IPAddressRange 3551 1_1_0d EXIST::FUNCTION:RFC3779 +PKCS12_SAFEBAG_free 3552 1_1_0d EXIST::FUNCTION: +EVP_PKEY_asn1_get0 3553 1_1_0d EXIST::FUNCTION: +SKF_ReadFile 3554 1_1_0d EXIST::FUNCTION:SKF +EVP_PKEY_asn1_copy 3555 1_1_0d EXIST::FUNCTION: +SM9Ciphertext_free 3556 1_1_0d EXIST::FUNCTION:SM9 +PKCS7_ISSUER_AND_SERIAL_new 3557 1_1_0d EXIST::FUNCTION: +PEM_read_bio_ECPrivateKey 3558 1_1_0d EXIST::FUNCTION:EC +X509_REVOKED_get0_revocationDate 3559 1_1_0d EXIST::FUNCTION: +EVP_PKEY_get_attr 3560 1_1_0d EXIST::FUNCTION: +PEM_read_X509_REQ 3561 1_1_0d EXIST::FUNCTION:STDIO +EVP_PKEY_meth_get_verify 3562 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_set 3563 1_1_0d EXIST::FUNCTION: +i2d_SM9_PUBKEY 3564 1_1_0d EXIST::FUNCTION:SM9 +SM2_verify 3565 1_1_0d EXIST::FUNCTION:SM2 +BIO_meth_get_write 3566 1_1_0d EXIST::FUNCTION: +DSA_meth_set_flags 3567 1_1_0d EXIST::FUNCTION:DSA +OCSP_RESPID_it 3568 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:OCSP +OCSP_RESPID_it 3568 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:OCSP +ENGINE_set_pkey_meths 3569 1_1_0d EXIST::FUNCTION:ENGINE +X509_get0_trust_objects 3570 1_1_0d EXIST::FUNCTION: +MD2_Update 3571 1_1_0d EXIST::FUNCTION:MD2 +EVP_PKEY_copy_parameters 3572 1_1_0d EXIST::FUNCTION: +SKF_ExtRSAPriKeyOperation 3573 1_1_0d EXIST::FUNCTION:SKF +SKF_RSAExportSessionKey 3574 1_1_0d EXIST::FUNCTION:SKF +d2i_SM9Signature 3575 1_1_0d EXIST::FUNCTION:SM9 +sms4_wrap_key 3576 1_1_0d EXIST::FUNCTION:SMS4 +i2o_SCT 3577 1_1_0d EXIST::FUNCTION:CT +OPENSSL_gmtime_diff 3578 1_1_0d EXIST::FUNCTION: +d2i_ASN1_TIME 3579 1_1_0d EXIST::FUNCTION: +PEM_write_ECPrivateKey 3580 1_1_0d EXIST::FUNCTION:EC,STDIO +X509_STORE_set_cert_crl 3581 1_1_0d EXIST::FUNCTION: +d2i_PKCS7_SIGNER_INFO 3582 1_1_0d EXIST::FUNCTION: +SKF_GetDevState 3583 1_1_0d EXIST::FUNCTION:SKF +i2d_SM9_MASTER_PUBKEY 3584 1_1_0d EXIST::FUNCTION:SM9 +X509_NAME_get_index_by_OBJ 3585 1_1_0d EXIST::FUNCTION: +X509_EXTENSION_set_object 3586 1_1_0d EXIST::FUNCTION: +X509_keyid_get0 3587 1_1_0d EXIST::FUNCTION: +SDF_NewECCCipher 3588 1_1_0d EXIST::FUNCTION:SDF +d2i_CRL_DIST_POINTS 3589 1_1_0d EXIST::FUNCTION: +RSA_generate_key 3590 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_0_9_8,RSA +EVP_PKEY_get_sgd 3591 1_1_0d EXIST::FUNCTION:GMAPI +X509_set_subject_name 3592 1_1_0d EXIST::FUNCTION: +DH_check 3593 1_1_0d EXIST::FUNCTION:DH +d2i_SXNETID 3594 1_1_0d EXIST::FUNCTION: +X509_REVOKED_set_revocationDate 3595 1_1_0d EXIST::FUNCTION: +CRYPTO_128_unwrap 3596 1_1_0d EXIST::FUNCTION: +SM2_sign 3597 1_1_0d EXIST::FUNCTION:SM2 +EVP_PKEY_set1_tls_encodedpoint 3598 1_1_0d EXIST::FUNCTION: +ENGINE_get_pkey_meth_engine 3599 1_1_0d EXIST::FUNCTION:ENGINE +PKCS7_SIGN_ENVELOPE_free 3600 1_1_0d EXIST::FUNCTION: +DSA_meth_get0_app_data 3601 1_1_0d EXIST::FUNCTION:DSA +d2i_PrivateKey_bio 3602 1_1_0d EXIST::FUNCTION: +ENGINE_set_ciphers 3603 1_1_0d EXIST::FUNCTION:ENGINE +DSA_meth_set_mod_exp 3604 1_1_0d EXIST::FUNCTION:DSA +X509_issuer_name_hash 3605 1_1_0d EXIST::FUNCTION: +EVP_des_ofb 3606 1_1_0d EXIST::FUNCTION:DES +PKCS5_pbe2_set 3607 1_1_0d EXIST::FUNCTION: +BN_to_montgomery 3608 1_1_0d EXIST::FUNCTION: +USERNOTICE_new 3609 1_1_0d EXIST::FUNCTION: +TS_OBJ_print_bio 3610 1_1_0d EXIST::FUNCTION:TS +BF_cbc_encrypt 3611 1_1_0d EXIST::FUNCTION:BF +PKCS7_content_new 3612 1_1_0d EXIST::FUNCTION: +i2d_BASIC_CONSTRAINTS 3613 1_1_0d EXIST::FUNCTION: +RSA_meth_dup 3614 1_1_0d EXIST::FUNCTION:RSA +GENERAL_NAME_get0_value 3615 1_1_0d EXIST::FUNCTION: +X509V3_add_value_bool_nf 3616 1_1_0d EXIST::FUNCTION: +DSA_meth_set_bn_mod_exp 3617 1_1_0d EXIST::FUNCTION:DSA +X509_STORE_CTX_set_time 3618 1_1_0d EXIST::FUNCTION: +EVP_PKEY_CTX_str2ctrl 3619 1_1_0d EXIST::FUNCTION: +X509V3_extensions_print 3620 1_1_0d EXIST::FUNCTION: +X509_get_signature_nid 3621 1_1_0d EXIST::FUNCTION: +OCSP_ONEREQ_it 3622 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:OCSP +OCSP_ONEREQ_it 3622 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:OCSP +EVP_PKEY_CTX_get_cb 3623 1_1_0d EXIST::FUNCTION: +X509_EXTENSION_free 3624 1_1_0d EXIST::FUNCTION: +EVP_PKEY_derive_init 3625 1_1_0d EXIST::FUNCTION: +X509_REQ_set_extension_nids 3626 1_1_0d EXIST::FUNCTION: +DSA_get0_engine 3627 1_1_0d EXIST::FUNCTION:DSA +X509_NAME_ENTRY_dup 3628 1_1_0d EXIST::FUNCTION: +UI_add_input_boolean 3629 1_1_0d EXIST::FUNCTION:UI +PEM_write_bio_PKCS7_stream 3630 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_CTX_new 3631 1_1_0d EXIST::FUNCTION: +SM9_extract_private_key 3632 1_1_0d EXIST::FUNCTION:SM9 +PEM_write_PKCS8PrivateKey_nid 3633 1_1_0d EXIST::FUNCTION:STDIO +ECDSA_sign 3634 1_1_0d EXIST::FUNCTION:EC +EC_KEY_free 3635 1_1_0d EXIST::FUNCTION:EC +X509_TRUST_cleanup 3636 1_1_0d EXIST::FUNCTION: +ISSUING_DIST_POINT_free 3637 1_1_0d EXIST::FUNCTION: +PEM_proc_type 3638 1_1_0d EXIST::FUNCTION: +X509_alias_set1 3639 1_1_0d EXIST::FUNCTION: +BN_nist_mod_521 3640 1_1_0d EXIST::FUNCTION: +EC_POINTs_make_affine 3641 1_1_0d EXIST::FUNCTION:EC +X509_STORE_CTX_init 3642 1_1_0d EXIST::FUNCTION: +OBJ_txt2nid 3643 1_1_0d EXIST::FUNCTION: +ENGINE_register_all_pkey_meths 3644 1_1_0d EXIST::FUNCTION:ENGINE +d2i_ISSUING_DIST_POINT 3645 1_1_0d EXIST::FUNCTION: +BIO_free_all 3646 1_1_0d EXIST::FUNCTION: +BIO_gethostbyname 3647 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,SOCK +i2d_TS_TST_INFO_fp 3648 1_1_0d EXIST::FUNCTION:STDIO,TS +EVP_rc2_ofb 3649 1_1_0d EXIST::FUNCTION:RC2 +d2i_POLICYQUALINFO 3650 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_free 3651 1_1_0d EXIST::FUNCTION: +NETSCAPE_CERT_SEQUENCE_free 3652 1_1_0d EXIST::FUNCTION: +EVP_PKEY_CTX_get_data 3653 1_1_0d EXIST::FUNCTION: +UI_new_method 3654 1_1_0d EXIST::FUNCTION:UI +BN_nnmod 3655 1_1_0d EXIST::FUNCTION: +EVP_MD_CTX_update_fn 3656 1_1_0d EXIST::FUNCTION: +X509_NAME_ENTRY_set_object 3657 1_1_0d EXIST::FUNCTION: +PEM_read_bio_PaillierPublicKey 3658 1_1_0d EXIST::FUNCTION:PAILLIER +EVP_PKEY_asn1_set_param 3659 1_1_0d EXIST::FUNCTION: +PEM_write_bio_SM9PublicKey 3660 1_1_0d EXIST::FUNCTION:SM9 +OBJ_sigid_free 3661 1_1_0d EXIST::FUNCTION: +EVP_sms4_cfb128 3662 1_1_0d EXIST::FUNCTION:SMS4 +ASN1_ENUMERATED_set_int64 3663 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_param_to_asn1 3664 1_1_0d EXIST::FUNCTION: +SM2_COSIGNER1_SHARE_it 3665 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:SM2 +SM2_COSIGNER1_SHARE_it 3665 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:SM2 +PEM_X509_INFO_read 3666 1_1_0d EXIST::FUNCTION:STDIO +SDF_InternalEncrypt_ECC 3667 1_1_0d EXIST::FUNCTION: +RSA_X931_derive_ex 3668 1_1_0d EXIST::FUNCTION:RSA +DES_ncbc_encrypt 3669 1_1_0d EXIST::FUNCTION:DES +BN_CTX_get 3670 1_1_0d EXIST::FUNCTION: +CONF_load_bio 3671 1_1_0d EXIST::FUNCTION: +EC_KEY_set_enc_flags 3672 1_1_0d EXIST::FUNCTION:EC +PROXY_CERT_INFO_EXTENSION_new 3673 1_1_0d EXIST::FUNCTION: +PKCS7_sign 3674 1_1_0d EXIST::FUNCTION: +EVP_PKEY_save_parameters 3675 1_1_0d EXIST::FUNCTION: +BN_is_word 3676 1_1_0d EXIST::FUNCTION: +X509_alias_get0 3677 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_set_asn1_iv 3678 1_1_0d EXIST::FUNCTION: +PKCS7_dataInit 3679 1_1_0d EXIST::FUNCTION: +EVP_camellia_192_ecb 3680 1_1_0d EXIST::FUNCTION:CAMELLIA +X509V3_get_section 3681 1_1_0d EXIST::FUNCTION: +d2i_X509_CRL_INFO 3682 1_1_0d EXIST::FUNCTION: +BIO_meth_set_puts 3683 1_1_0d EXIST::FUNCTION: +EC_POINT_point2oct 3684 1_1_0d EXIST::FUNCTION:EC +PKCS5_PBE_keyivgen 3685 1_1_0d EXIST::FUNCTION: +d2i_X509_EXTENSION 3686 1_1_0d EXIST::FUNCTION: +BIO_dup_chain 3687 1_1_0d EXIST::FUNCTION: +BN_BLINDING_update 3688 1_1_0d EXIST::FUNCTION: +POLICY_CONSTRAINTS_new 3689 1_1_0d EXIST::FUNCTION: +BN_is_bit_set 3690 1_1_0d EXIST::FUNCTION: +PKCS12_SAFEBAG_it 3691 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS12_SAFEBAG_it 3691 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ENGINE_set_load_ssl_client_cert_function 3692 1_1_0d EXIST::FUNCTION:ENGINE +ENGINE_pkey_asn1_find_str 3693 1_1_0d EXIST::FUNCTION:ENGINE +EC_KEY_new_from_ECCrefPrivateKey 3694 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF +X509_REQ_INFO_new 3695 1_1_0d EXIST::FUNCTION: +i2d_ECPKParameters 3696 1_1_0d EXIST::FUNCTION:EC +d2i_DIST_POINT_NAME 3697 1_1_0d EXIST::FUNCTION: +ASN1_OCTET_STRING_is_zero 3698 1_1_0d EXIST::FUNCTION:SM2 +RC4 3699 1_1_0d EXIST::FUNCTION:RC4 +PKCS12_SAFEBAG_get_bag_nid 3700 1_1_0d EXIST::FUNCTION: +X509V3_string_free 3701 1_1_0d EXIST::FUNCTION: +X509_REQ_delete_attr 3702 1_1_0d EXIST::FUNCTION: +GENERAL_NAMES_it 3703 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +GENERAL_NAMES_it 3703 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_ATTRIBUTE_get0_data 3704 1_1_0d EXIST::FUNCTION: +CMS_add1_cert 3705 1_1_0d EXIST::FUNCTION:CMS +ENGINE_ctrl_cmd 3706 1_1_0d EXIST::FUNCTION:ENGINE +X509v3_asid_validate_resource_set 3707 1_1_0d EXIST::FUNCTION:RFC3779 +TS_RESP_CTX_set_signer_cert 3708 1_1_0d EXIST::FUNCTION:TS +SM9_MASTER_KEY_print 3709 1_1_0d EXIST::FUNCTION:SM9 +ERR_peek_error 3710 1_1_0d EXIST::FUNCTION: +BIO_sock_init 3711 1_1_0d EXIST::FUNCTION:SOCK +PKCS12_unpack_p7encdata 3712 1_1_0d EXIST::FUNCTION: +ASN1_INTEGER_cmp 3713 1_1_0d EXIST::FUNCTION: +EVP_camellia_192_ofb 3714 1_1_0d EXIST::FUNCTION:CAMELLIA +EVP_MD_size 3715 1_1_0d EXIST::FUNCTION: +BIO_ADDRINFO_protocol 3716 1_1_0d EXIST::FUNCTION:SOCK +NCONF_get_string 3717 1_1_0d EXIST::FUNCTION: +ASN1_item_print 3718 1_1_0d EXIST::FUNCTION: +CMS_get0_signers 3719 1_1_0d EXIST::FUNCTION:CMS +d2i_PKCS8PrivateKey_fp 3720 1_1_0d EXIST::FUNCTION:STDIO +EC_KEY_oct2priv 3721 1_1_0d EXIST::FUNCTION:EC +d2i_ASN1_T61STRING 3722 1_1_0d EXIST::FUNCTION: +EVP_cast5_ecb 3723 1_1_0d EXIST::FUNCTION:CAST +PKCS7_SIGNER_INFO_set 3724 1_1_0d EXIST::FUNCTION: +RSA_meth_get_finish 3725 1_1_0d EXIST::FUNCTION:RSA +TS_TST_INFO_get_ext_by_NID 3726 1_1_0d EXIST::FUNCTION:TS +BN_sub 3727 1_1_0d EXIST::FUNCTION: +EVP_PKEY_asn1_free 3728 1_1_0d EXIST::FUNCTION: +X509_EXTENSION_set_critical 3729 1_1_0d EXIST::FUNCTION: +i2d_ECIES_CIPHERTEXT_VALUE 3730 1_1_0d EXIST::FUNCTION:ECIES +RSA_sign 3731 1_1_0d EXIST::FUNCTION:RSA +BN_security_bits 3732 1_1_0d EXIST::FUNCTION: +SCT_set_log_entry_type 3733 1_1_0d EXIST::FUNCTION:CT +EVP_Cipher 3734 1_1_0d EXIST::FUNCTION: +X509_get0_notBefore 3735 1_1_0d EXIST::FUNCTION: +BIO_dump_indent 3736 1_1_0d EXIST::FUNCTION: +SDF_Decrypt 3737 1_1_0d EXIST::FUNCTION: +HMAC_size 3738 1_1_0d EXIST::FUNCTION: +ECDH_compute_key 3739 1_1_0d EXIST::FUNCTION:EC +X509v3_asid_canonize 3740 1_1_0d EXIST::FUNCTION:RFC3779 +X509_POLICY_NODE_print 3741 1_1_0d EXIST::FUNCTION: +ECPKPARAMETERS_new 3742 1_1_0d EXIST::FUNCTION:EC +SCT_set_version 3743 1_1_0d EXIST::FUNCTION:CT +ENGINE_register_all_complete 3744 1_1_0d EXIST::FUNCTION:ENGINE +TXT_DB_read 3745 1_1_0d EXIST::FUNCTION: +TS_REQ_get_msg_imprint 3746 1_1_0d EXIST::FUNCTION:TS +TS_CONF_load_key 3747 1_1_0d EXIST::FUNCTION:TS +d2i_DSAparams 3748 1_1_0d EXIST::FUNCTION:DSA +BN_GF2m_mod_sqrt_arr 3749 1_1_0d EXIST::FUNCTION:EC2M +NAME_CONSTRAINTS_free 3750 1_1_0d EXIST::FUNCTION: +BN_generate_prime_ex 3751 1_1_0d EXIST::FUNCTION: +a2i_IPADDRESS_NC 3752 1_1_0d EXIST::FUNCTION: +MD5_Final 3753 1_1_0d EXIST::FUNCTION:MD5 +X509_EXTENSION_get_data 3754 1_1_0d EXIST::FUNCTION: +ENGINE_get_load_privkey_function 3755 1_1_0d EXIST::FUNCTION:ENGINE +CRYPTO_mem_debug_free 3756 1_1_0d EXIST::FUNCTION:CRYPTO_MDEBUG +MDC2 3757 1_1_0d EXIST::FUNCTION:MDC2 +OCSP_RESPONSE_it 3758 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:OCSP +OCSP_RESPONSE_it 3758 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:OCSP +i2d_X509_ALGOR 3759 1_1_0d EXIST::FUNCTION: +TS_TST_INFO_get_serial 3760 1_1_0d EXIST::FUNCTION:TS +CRYPTO_secure_malloc_init 3761 1_1_0d EXIST::FUNCTION: +DES_pcbc_encrypt 3762 1_1_0d EXIST::FUNCTION:DES +X509V3_add_value 3763 1_1_0d EXIST::FUNCTION: +CMS_unsigned_add1_attr 3764 1_1_0d EXIST::FUNCTION:CMS +GENERAL_NAME_set0_othername 3765 1_1_0d EXIST::FUNCTION: +PKCS7_dataFinal 3766 1_1_0d EXIST::FUNCTION: +X509_REQ_INFO_it 3767 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_REQ_INFO_it 3767 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +b2i_PVK_bio 3768 1_1_0d EXIST::FUNCTION:DSA,RC4 +PEM_write 3769 1_1_0d EXIST::FUNCTION:STDIO +EC_KEY_set_public_key 3770 1_1_0d EXIST::FUNCTION:EC +i2d_X509_CRL 3771 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_get0_info 3772 1_1_0d EXIST::FUNCTION: +OCSP_ONEREQ_delete_ext 3773 1_1_0d EXIST::FUNCTION:OCSP +PKCS8_pkey_get0 3774 1_1_0d EXIST::FUNCTION: +DES_fcrypt 3775 1_1_0d EXIST::FUNCTION:DES +d2i_SM9Ciphertext 3776 1_1_0d EXIST::FUNCTION:SM9 +X509_STORE_CTX_set_purpose 3777 1_1_0d EXIST::FUNCTION: +X509_REQ_to_X509 3778 1_1_0d EXIST::FUNCTION: +SKF_EnumContainer 3779 1_1_0d EXIST::FUNCTION:SKF +X509_LOOKUP_by_alias 3780 1_1_0d EXIST::FUNCTION: +PKCS7_ENCRYPT_it 3781 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_ENCRYPT_it 3781 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PEM_read_RSA_PUBKEY 3782 1_1_0d EXIST::FUNCTION:RSA,STDIO +X509_cmp 3783 1_1_0d EXIST::FUNCTION: +CMS_SignerInfo_verify_content 3784 1_1_0d EXIST::FUNCTION:CMS +BIO_int_ctrl 3785 1_1_0d EXIST::FUNCTION: +d2i_PKEY_USAGE_PERIOD 3786 1_1_0d EXIST::FUNCTION: +d2i_ESS_CERT_ID 3787 1_1_0d EXIST::FUNCTION:TS +CMS_signed_delete_attr 3788 1_1_0d EXIST::FUNCTION:CMS +PKCS12_SAFEBAG_create_cert 3789 1_1_0d EXIST::FUNCTION: +POLICYQUALINFO_new 3790 1_1_0d EXIST::FUNCTION: +ASN1_tag2bit 3791 1_1_0d EXIST::FUNCTION: +d2i_EC_PUBKEY 3792 1_1_0d EXIST::FUNCTION:EC +AES_cfb8_encrypt 3793 1_1_0d EXIST::FUNCTION: +ASN1_UTCTIME_set 3794 1_1_0d EXIST::FUNCTION: +BN_mod_mul_reciprocal 3795 1_1_0d EXIST::FUNCTION: +UI_method_set_prompt_constructor 3796 1_1_0d EXIST::FUNCTION:UI +i2d_PKCS12_fp 3797 1_1_0d EXIST::FUNCTION:STDIO +d2i_PKCS8_fp 3798 1_1_0d EXIST::FUNCTION:STDIO +X509_get_extended_key_usage 3799 1_1_0d EXIST::FUNCTION: +BN_mod_lshift1_quick 3800 1_1_0d EXIST::FUNCTION: +EVP_PKEY_get_attr_by_NID 3801 1_1_0d EXIST::FUNCTION: +X509_get_version 3802 1_1_0d EXIST::FUNCTION: +EC_KEY_set_default_sm_method 3803 1_1_0d EXIST::FUNCTION:SM2 +ASN1_TIME_set_string 3804 1_1_0d EXIST::FUNCTION: +sms4_encrypt_init 3805 1_1_0d EXIST::FUNCTION:SMS4 +PKCS7_new 3806 1_1_0d EXIST::FUNCTION: +X509_REVOKED_dup 3807 1_1_0d EXIST::FUNCTION: +CAST_cbc_encrypt 3808 1_1_0d EXIST::FUNCTION:CAST +EVP_aes_256_cbc 3809 1_1_0d EXIST::FUNCTION: +PEM_read_SM9PublicParameters 3810 1_1_0d EXIST::FUNCTION:SM9,STDIO +EVP_aes_256_ctr 3811 1_1_0d EXIST::FUNCTION: +EVP_PKEY_CTX_new 3812 1_1_0d EXIST::FUNCTION: +SCT_set0_log_id 3813 1_1_0d EXIST::FUNCTION:CT +SKF_NewECCCipher 3814 1_1_0d EXIST::FUNCTION:SKF +i2d_DSA_PUBKEY_fp 3815 1_1_0d EXIST::FUNCTION:DSA,STDIO +ASN1_T61STRING_new 3816 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_set0_param 3817 1_1_0d EXIST::FUNCTION: +i2d_X509_CRL_bio 3818 1_1_0d EXIST::FUNCTION: +RSA_blinding_on 3819 1_1_0d EXIST::FUNCTION:RSA +ERR_load_strings 3820 1_1_0d EXIST::FUNCTION: +EC_GROUP_get0_order 3821 1_1_0d EXIST::FUNCTION:EC +EVP_sms4_cfb1 3822 1_1_0d EXIST::FUNCTION:SMS4 +OCSP_REQUEST_get1_ext_d2i 3823 1_1_0d EXIST::FUNCTION:OCSP +PEM_read_DSA_PUBKEY 3824 1_1_0d EXIST::FUNCTION:DSA,STDIO +i2d_SM9PublicParameters 3825 1_1_0d EXIST::FUNCTION:SM9 +DISPLAYTEXT_new 3826 1_1_0d EXIST::FUNCTION: +OBJ_cmp 3827 1_1_0d EXIST::FUNCTION: +MDC2_Init 3828 1_1_0d EXIST::FUNCTION:MDC2 +PAILLIER_new 3829 1_1_0d EXIST::FUNCTION:PAILLIER +CMS_RecipientEncryptedKey_cert_cmp 3830 1_1_0d EXIST::FUNCTION:CMS +X509_STORE_get0_param 3831 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_set_cert 3832 1_1_0d EXIST::FUNCTION: +CMS_set1_signers_certs 3833 1_1_0d EXIST::FUNCTION:CMS +DIST_POINT_NAME_free 3834 1_1_0d EXIST::FUNCTION: +RSA_meth_get_keygen 3835 1_1_0d EXIST::FUNCTION:RSA +ENGINE_get_pkey_meth 3836 1_1_0d EXIST::FUNCTION:ENGINE +OCSP_parse_url 3837 1_1_0d EXIST::FUNCTION:OCSP +PEM_write_bio_PKCS8PrivateKey_nid 3838 1_1_0d EXIST::FUNCTION: +ERR_peek_last_error_line_data 3839 1_1_0d EXIST::FUNCTION: +X509_REQ_get_extension_nids 3840 1_1_0d EXIST::FUNCTION: +EVP_des_cfb1 3841 1_1_0d EXIST::FUNCTION:DES +i2d_SM9Signature_fp 3842 1_1_0d EXIST::FUNCTION:SM9,STDIO +CMS_decrypt_set1_password 3843 1_1_0d EXIST::FUNCTION:CMS +MDC2_Update 3844 1_1_0d EXIST::FUNCTION:MDC2 +MDC2_Final 3845 1_1_0d EXIST::FUNCTION:MDC2 +ECPKParameters_print_fp 3846 1_1_0d EXIST::FUNCTION:EC,STDIO +ECIES_CIPHERTEXT_VALUE_get_ECCCipher 3847 1_1_0d EXIST::FUNCTION:EC,ECIES,GMAPI,SDF +d2i_TS_REQ 3848 1_1_0d EXIST::FUNCTION:TS +X509_get_pubkey 3849 1_1_0d EXIST::FUNCTION: +CMS_add0_recipient_key 3850 1_1_0d EXIST::FUNCTION:CMS +CRYPTO_cfb128_8_encrypt 3851 1_1_0d EXIST::FUNCTION: +EC_GROUP_set_curve_name 3852 1_1_0d EXIST::FUNCTION:EC +X509_CINF_free 3853 1_1_0d EXIST::FUNCTION: +ERR_peek_error_line_data 3854 1_1_0d EXIST::FUNCTION: +i2d_ECCSIGNATUREBLOB 3855 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF +BN_set_bit 3856 1_1_0d EXIST::FUNCTION: +ENGINE_set_load_pubkey_function 3857 1_1_0d EXIST::FUNCTION:ENGINE +X509_REQ_get_subject_name 3858 1_1_0d EXIST::FUNCTION: +EVP_BytesToKey 3859 1_1_0d EXIST::FUNCTION: +X509_ATTRIBUTE_get0_type 3860 1_1_0d EXIST::FUNCTION: +ASN1_IA5STRING_it 3861 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_IA5STRING_it 3861 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +sms4_unwrap_key 3862 1_1_0d EXIST::FUNCTION:SMS4 +SRP_Calc_x 3863 1_1_0d EXIST::FUNCTION:SRP +ERR_error_string 3864 1_1_0d EXIST::FUNCTION: +X509_REQ_add1_attr_by_OBJ 3865 1_1_0d EXIST::FUNCTION: +d2i_X509_ATTRIBUTE 3866 1_1_0d EXIST::FUNCTION: +X509_print_ex 3867 1_1_0d EXIST::FUNCTION: +i2d_PKCS7_ENC_CONTENT 3868 1_1_0d EXIST::FUNCTION: +SDF_GenerateRandom 3869 1_1_0d EXIST::FUNCTION: +CT_POLICY_EVAL_CTX_get0_log_store 3870 1_1_0d EXIST::FUNCTION:CT +CMS_stream 3871 1_1_0d EXIST::FUNCTION:CMS +HMAC_CTX_copy 3872 1_1_0d EXIST::FUNCTION: +EVP_MD_CTX_free 3873 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_get_paramgen 3874 1_1_0d EXIST::FUNCTION: +OCSP_request_set1_name 3875 1_1_0d EXIST::FUNCTION:OCSP +EVP_rc4_hmac_md5 3876 1_1_0d EXIST::FUNCTION:MD5,RC4 +NCONF_default 3877 1_1_0d EXIST::FUNCTION: +i2d_X509_CINF 3878 1_1_0d EXIST::FUNCTION: +EVP_PBE_alg_add 3879 1_1_0d EXIST::FUNCTION: +PEM_write_DHxparams 3880 1_1_0d EXIST::FUNCTION:DH,STDIO +TS_REQ_free 3881 1_1_0d EXIST::FUNCTION:TS +ESS_CERT_ID_dup 3882 1_1_0d EXIST::FUNCTION:TS +OCSP_CERTSTATUS_new 3883 1_1_0d EXIST::FUNCTION:OCSP +OCSP_request_sign 3884 1_1_0d EXIST::FUNCTION:OCSP +SCT_LIST_validate 3885 1_1_0d EXIST::FUNCTION:CT +d2i_ASN1_ENUMERATED 3886 1_1_0d EXIST::FUNCTION: +d2i_X509_ALGOR 3887 1_1_0d EXIST::FUNCTION: +d2i_DSA_PUBKEY_fp 3888 1_1_0d EXIST::FUNCTION:DSA,STDIO +PBEPARAM_new 3889 1_1_0d EXIST::FUNCTION: +ERR_load_PKCS7_strings 3890 1_1_0d EXIST::FUNCTION: +i2d_ASN1_GENERALIZEDTIME 3891 1_1_0d EXIST::FUNCTION: +TS_RESP_CTX_set_signer_key 3892 1_1_0d EXIST::FUNCTION:TS +PKCS12_MAC_DATA_new 3893 1_1_0d EXIST::FUNCTION: +ENGINE_get_load_pubkey_function 3894 1_1_0d EXIST::FUNCTION:ENGINE +i2s_ASN1_ENUMERATED 3895 1_1_0d EXIST::FUNCTION: +X509_TRUST_get_count 3896 1_1_0d EXIST::FUNCTION: +CT_POLICY_EVAL_CTX_set1_cert 3897 1_1_0d EXIST::FUNCTION:CT +CRYPTO_cfb128_1_encrypt 3898 1_1_0d EXIST::FUNCTION: +i2d_SM9Ciphertext_fp 3899 1_1_0d EXIST::FUNCTION:SM9,STDIO +X509_sign_ctx 3900 1_1_0d EXIST::FUNCTION: +EVP_PKEY_CTX_get_operation 3901 1_1_0d EXIST::FUNCTION: +PEM_write_X509_AUX 3902 1_1_0d EXIST::FUNCTION:STDIO +SDF_GenerateAgreementDataWithECC 3903 1_1_0d EXIST::FUNCTION: +POLICYQUALINFO_it 3904 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +POLICYQUALINFO_it 3904 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +OCSP_ONEREQ_get_ext_by_NID 3905 1_1_0d EXIST::FUNCTION:OCSP +TS_TST_INFO_get_version 3906 1_1_0d EXIST::FUNCTION:TS +d2i_OCSP_SINGLERESP 3907 1_1_0d EXIST::FUNCTION:OCSP +d2i_OCSP_RESPDATA 3908 1_1_0d EXIST::FUNCTION:OCSP +PBKDF2PARAM_new 3909 1_1_0d EXIST::FUNCTION: +X509_get_pubkey_parameters 3910 1_1_0d EXIST::FUNCTION: +X509v3_delete_ext 3911 1_1_0d EXIST::FUNCTION: +BIO_dump 3912 1_1_0d EXIST::FUNCTION: +UI_set_ex_data 3913 1_1_0d EXIST::FUNCTION:UI +d2i_SM9Signature_fp 3914 1_1_0d EXIST::FUNCTION:SM9,STDIO +SKF_ImportRSAPrivateKey 3915 1_1_0d EXIST::FUNCTION:SKF +DIRECTORYSTRING_free 3916 1_1_0d EXIST::FUNCTION: +DSA_SIG_new 3917 1_1_0d EXIST::FUNCTION:DSA +i2b_PVK_bio 3918 1_1_0d EXIST::FUNCTION:DSA,RC4 +d2i_X509_fp 3919 1_1_0d EXIST::FUNCTION:STDIO +d2i_TS_TST_INFO_fp 3920 1_1_0d EXIST::FUNCTION:STDIO,TS +d2i_OTHERNAME 3921 1_1_0d EXIST::FUNCTION: +BIO_set_cipher 3922 1_1_0d EXIST::FUNCTION: +i2d_ASN1_INTEGER 3923 1_1_0d EXIST::FUNCTION: +BIO_set_init 3924 1_1_0d EXIST::FUNCTION: +d2i_EC_PUBKEY_bio 3925 1_1_0d EXIST::FUNCTION:EC +OCSP_request_add1_cert 3926 1_1_0d EXIST::FUNCTION:OCSP +DH_clear_flags 3927 1_1_0d EXIST::FUNCTION:DH +DSO_bind_func 3928 1_1_0d EXIST::FUNCTION: +BN_div 3929 1_1_0d EXIST::FUNCTION: +RSA_get_method 3930 1_1_0d EXIST::FUNCTION:RSA +PKCS7_ENVELOPE_new 3931 1_1_0d EXIST::FUNCTION: +CRYPTO_clear_realloc 3932 1_1_0d EXIST::FUNCTION: +CMS_RecipientInfo_set0_pkey 3933 1_1_0d EXIST::FUNCTION:CMS +SKF_OpenApplication 3934 1_1_0d EXIST::FUNCTION:SKF +SCT_LIST_print 3935 1_1_0d EXIST::FUNCTION:CT +OpenSSL_version_num 3936 1_1_0d EXIST::FUNCTION: +sm3_hmac 3937 1_1_0d EXIST::FUNCTION:SM3 +CMS_RecipientInfo_encrypt 3938 1_1_0d EXIST::FUNCTION:CMS +CONF_set_default_method 3939 1_1_0d EXIST::FUNCTION: +i2d_SM9MasterSecret_bio 3940 1_1_0d EXIST::FUNCTION:SM9 +i2d_PKCS12_SAFEBAG 3941 1_1_0d EXIST::FUNCTION: +sms4_encrypt_16blocks 3942 1_1_0d EXIST::FUNCTION:SMS4 +SDF_ExportEncPublicKey_ECC 3943 1_1_0d EXIST::FUNCTION: +SKF_SetSymmKey 3944 1_1_0d EXIST::FUNCTION:SKF +i2d_X509_fp 3945 1_1_0d EXIST::FUNCTION:STDIO +EVP_get_digestbysgd 3946 1_1_0d EXIST::FUNCTION:GMAPI +PBE2PARAM_it 3947 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PBE2PARAM_it 3947 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +EC_GFp_nistp224_method 3948 1_1_0d EXIST::FUNCTION:EC,EC_NISTP_64_GCC_128 +d2i_ECCSignature 3949 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF +SM9_VerifyInit 3950 1_1_0d EXIST::FUNCTION:SM9 +BN_print 3951 1_1_0d EXIST::FUNCTION: +X509_issuer_and_serial_hash 3952 1_1_0d EXIST::FUNCTION: +RSA_set_ex_data 3953 1_1_0d EXIST::FUNCTION:RSA +EVP_PKEY_meth_set_verifyctx 3954 1_1_0d EXIST::FUNCTION: +TS_REQ_get_ext_by_critical 3955 1_1_0d EXIST::FUNCTION:TS +i2d_ACCESS_DESCRIPTION 3956 1_1_0d EXIST::FUNCTION: +EVP_PKEY_get1_SM9 3957 1_1_0d EXIST::FUNCTION:SM9 +X509v3_asid_is_canonical 3958 1_1_0d EXIST::FUNCTION:RFC3779 +SM2_decrypt 3959 1_1_0d EXIST::FUNCTION:SM2 +UI_dup_input_boolean 3960 1_1_0d EXIST::FUNCTION:UI +BIO_get_ex_data 3961 1_1_0d EXIST::FUNCTION: +PEM_write_SM9PrivateKey 3962 1_1_0d EXIST::FUNCTION:SM9,STDIO +ERR_load_EC_strings 3963 1_1_0d EXIST::FUNCTION:EC +PKCS12_SAFEBAG_get0_attrs 3964 1_1_0d EXIST::FUNCTION: +ECIES_do_decrypt 3965 1_1_0d EXIST::FUNCTION:ECIES +EC_GROUP_clear_free 3966 1_1_0d EXIST::FUNCTION:EC +CMS_add_simple_smimecap 3967 1_1_0d EXIST::FUNCTION:CMS +BIO_get_data 3968 1_1_0d EXIST::FUNCTION: +EVP_aes_128_ccm 3969 1_1_0d EXIST::FUNCTION: +RSA_get_ex_data 3970 1_1_0d EXIST::FUNCTION:RSA +X509_delete_ext 3971 1_1_0d EXIST::FUNCTION: +OBJ_find_sigid_algs 3972 1_1_0d EXIST::FUNCTION: +BIO_meth_set_gets 3973 1_1_0d EXIST::FUNCTION: +i2d_TS_STATUS_INFO 3974 1_1_0d EXIST::FUNCTION:TS +OPENSSL_sk_unshift 3975 1_1_0d EXIST::FUNCTION: +BN_secure_new 3976 1_1_0d EXIST::FUNCTION: +ASN1_item_ndef_i2d 3977 1_1_0d EXIST::FUNCTION: +BN_dec2bn 3978 1_1_0d EXIST::FUNCTION: +DES_ede3_cbc_encrypt 3979 1_1_0d EXIST::FUNCTION:DES +SXNET_get_id_INTEGER 3980 1_1_0d EXIST::FUNCTION: +MD2_options 3981 1_1_0d EXIST::FUNCTION:MD2 +DSA_set0_pqg 3982 1_1_0d EXIST::FUNCTION:DSA +EVP_CIPHER_meth_get_set_asn1_params 3983 1_1_0d EXIST::FUNCTION: +PEM_write_DSA_PUBKEY 3984 1_1_0d EXIST::FUNCTION:DSA,STDIO +ASN1_PCTX_get_cert_flags 3985 1_1_0d EXIST::FUNCTION: +CRYPTO_ccm128_encrypt 3986 1_1_0d EXIST::FUNCTION: +DSA_OpenSSL 3987 1_1_0d EXIST::FUNCTION:DSA +PEM_do_header 3988 1_1_0d EXIST::FUNCTION: +BN_CTX_end 3989 1_1_0d EXIST::FUNCTION: +X509_CRL_add0_revoked 3990 1_1_0d EXIST::FUNCTION: +BN_GF2m_mod_arr 3991 1_1_0d EXIST::FUNCTION:EC2M +X509_get_subject_name 3992 1_1_0d EXIST::FUNCTION: +ASN1_TIME_check 3993 1_1_0d EXIST::FUNCTION: +RSA_free 3994 1_1_0d EXIST::FUNCTION:RSA +CMS_add1_recipient_cert 3995 1_1_0d EXIST::FUNCTION:CMS +CMAC_CTX_get0_cipher_ctx 3996 1_1_0d EXIST::FUNCTION:CMAC +OPENSSL_load_builtin_modules 3997 1_1_0d EXIST::FUNCTION: +ERR_load_CONF_strings 3998 1_1_0d EXIST::FUNCTION: +UI_add_error_string 3999 1_1_0d EXIST::FUNCTION:UI +PKCS7_add_certificate 4000 1_1_0d EXIST::FUNCTION: +EVP_MD_meth_dup 4001 1_1_0d EXIST::FUNCTION: +EVP_PBE_get 4002 1_1_0d EXIST::FUNCTION: +i2s_ASN1_IA5STRING 4003 1_1_0d EXIST::FUNCTION: +DSA_sign 4004 1_1_0d EXIST::FUNCTION:DSA +NOTICEREF_free 4005 1_1_0d EXIST::FUNCTION: +d2i_X509_CRL 4006 1_1_0d EXIST::FUNCTION: +CMS_EncryptedData_encrypt 4007 1_1_0d EXIST::FUNCTION:CMS +SKF_EncryptUpdate 4008 1_1_0d EXIST::FUNCTION:SKF +PEM_write_bio_PKCS8PrivateKey 4009 1_1_0d EXIST::FUNCTION: +CT_POLICY_EVAL_CTX_set1_issuer 4010 1_1_0d EXIST::FUNCTION:CT +EC_POINT_invert 4011 1_1_0d EXIST::FUNCTION:EC +ASN1_GENERALSTRING_free 4012 1_1_0d EXIST::FUNCTION: +i2d_RSAPublicKey_bio 4013 1_1_0d EXIST::FUNCTION:RSA +SHA256_Update 4014 1_1_0d EXIST::FUNCTION: +EVP_des_cfb8 4015 1_1_0d EXIST::FUNCTION:DES +PKCS7_stream 4016 1_1_0d EXIST::FUNCTION: +PKCS7_ENC_CONTENT_it 4017 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_ENC_CONTENT_it 4017 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +TS_MSG_IMPRINT_print_bio 4018 1_1_0d EXIST::FUNCTION:TS +PKCS7_RECIP_INFO_get0_alg 4019 1_1_0d EXIST::FUNCTION: +CRYPTO_nistcts128_decrypt_block 4020 1_1_0d EXIST::FUNCTION: +EVP_aes_128_wrap_pad 4021 1_1_0d EXIST::FUNCTION: +OCSP_ONEREQ_add1_ext_i2d 4022 1_1_0d EXIST::FUNCTION:OCSP +ECDSA_size 4023 1_1_0d EXIST::FUNCTION:EC +EVP_CIPHER_CTX_buf_noconst 4024 1_1_0d EXIST::FUNCTION: +EVP_cast5_cbc 4025 1_1_0d EXIST::FUNCTION:CAST +CMS_final 4026 1_1_0d EXIST::FUNCTION:CMS +RIPEMD160_Init 4027 1_1_0d EXIST::FUNCTION:RMD160 +EVP_PKEY_set1_EC_KEY 4028 1_1_0d EXIST::FUNCTION:EC +DH_bits 4029 1_1_0d EXIST::FUNCTION:DH +X509V3_add_value_bool 4030 1_1_0d EXIST::FUNCTION: +OCSP_RESPONSE_free 4031 1_1_0d EXIST::FUNCTION:OCSP +BIO_nwrite0 4032 1_1_0d EXIST::FUNCTION: +PKCS7_get_signer_info 4033 1_1_0d EXIST::FUNCTION: +X509_check_issued 4034 1_1_0d EXIST::FUNCTION: +X509_PURPOSE_get_id 4035 1_1_0d EXIST::FUNCTION: +X509_trusted 4036 1_1_0d EXIST::FUNCTION: +ASN1_PCTX_get_nm_flags 4037 1_1_0d EXIST::FUNCTION: +EC_KEY_print_fp 4038 1_1_0d EXIST::FUNCTION:EC,STDIO +OCSP_cert_to_id 4039 1_1_0d EXIST::FUNCTION:OCSP +UI_method_set_opener 4040 1_1_0d EXIST::FUNCTION:UI +SKF_GetErrorString 4041 1_1_0d EXIST::FUNCTION:SKF +ENGINE_get_digest_engine 4042 1_1_0d EXIST::FUNCTION:ENGINE +PEM_SignUpdate 4043 1_1_0d EXIST::FUNCTION: +BN_BLINDING_new 4044 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_meth_get_init 4045 1_1_0d EXIST::FUNCTION: +PEM_write_bio_PrivateKey 4046 1_1_0d EXIST::FUNCTION: +SKF_ImportPrivateKey 4047 1_1_0d EXIST::FUNCTION:SKF +SRP_Calc_B 4048 1_1_0d EXIST::FUNCTION:SRP +OCSP_REQUEST_add_ext 4049 1_1_0d EXIST::FUNCTION:OCSP +WHIRLPOOL_Final 4050 1_1_0d EXIST::FUNCTION:WHIRLPOOL +OCSP_check_validity 4051 1_1_0d EXIST::FUNCTION:OCSP +s2i_ASN1_OCTET_STRING 4052 1_1_0d EXIST::FUNCTION: +POLICY_MAPPING_free 4053 1_1_0d EXIST::FUNCTION: +EVP_add_digest 4054 1_1_0d EXIST::FUNCTION: +CRYPTO_ccm128_setiv 4055 1_1_0d EXIST::FUNCTION: +RAND_load_file 4056 1_1_0d EXIST::FUNCTION: +d2i_NETSCAPE_CERT_SEQUENCE 4057 1_1_0d EXIST::FUNCTION: +BIO_up_ref 4058 1_1_0d EXIST::FUNCTION: +OCSP_BASICRESP_get_ext_by_critical 4059 1_1_0d EXIST::FUNCTION:OCSP +ERR_peek_error_line 4060 1_1_0d EXIST::FUNCTION: +CMS_get0_RecipientInfos 4061 1_1_0d EXIST::FUNCTION:CMS +OCSP_REQUEST_get_ext_count 4062 1_1_0d EXIST::FUNCTION:OCSP +ECParameters_print_fp 4063 1_1_0d EXIST::FUNCTION:EC,STDIO +SDF_GetDeviceInfo 4064 1_1_0d EXIST::FUNCTION: +TS_MSG_IMPRINT_dup 4065 1_1_0d EXIST::FUNCTION:TS +ASN1_UTCTIME_check 4066 1_1_0d EXIST::FUNCTION: +IPAddressChoice_it 4067 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779 +IPAddressChoice_it 4067 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779 +RIPEMD160 4068 1_1_0d EXIST::FUNCTION:RMD160 +DSA_do_sign 4069 1_1_0d EXIST::FUNCTION:DSA +X509_STORE_CTX_get1_chain 4070 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_CTX_cipher 4071 1_1_0d EXIST::FUNCTION: +CMS_decrypt_set1_pkey 4072 1_1_0d EXIST::FUNCTION:CMS +BN_CTX_start 4073 1_1_0d EXIST::FUNCTION: +EVP_MD_CTX_test_flags 4074 1_1_0d EXIST::FUNCTION: +EVP_des_ede_ecb 4075 1_1_0d EXIST::FUNCTION:DES +NCONF_load_bio 4076 1_1_0d EXIST::FUNCTION: +AES_cbc_encrypt 4077 1_1_0d EXIST::FUNCTION: +X509_CRL_get_meth_data 4078 1_1_0d EXIST::FUNCTION: +BN_pseudo_rand 4079 1_1_0d EXIST::FUNCTION: +RSA_public_decrypt 4080 1_1_0d EXIST::FUNCTION:RSA +PEM_read_SM9PublicKey 4081 1_1_0d EXIST::FUNCTION:SM9,STDIO +TS_TST_INFO_set_policy_id 4082 1_1_0d EXIST::FUNCTION:TS +PEM_read_bio_X509_AUX 4083 1_1_0d EXIST::FUNCTION: +DES_crypt 4084 1_1_0d EXIST::FUNCTION:DES +ECIES_CIPHERTEXT_VALUE_new_from_ECCCIPHERBLOB 4085 1_1_0d EXIST::FUNCTION:EC,ECIES,GMAPI,SKF +ERR_get_state 4086 1_1_0d EXIST::FUNCTION: +CRYPTO_zalloc 4087 1_1_0d EXIST::FUNCTION: +EVP_aes_128_ctr 4088 1_1_0d EXIST::FUNCTION: +PKCS12_key_gen_asc 4089 1_1_0d EXIST::FUNCTION: +BF_decrypt 4090 1_1_0d EXIST::FUNCTION:BF +SRP_create_verifier 4091 1_1_0d EXIST::FUNCTION:SRP +ASIdentifiers_new 4092 1_1_0d EXIST::FUNCTION:RFC3779 +RSA_PSS_PARAMS_free 4093 1_1_0d EXIST::FUNCTION:RSA +X509_STORE_CTX_get_error 4094 1_1_0d EXIST::FUNCTION: +SM2_cosigner1_setup 4095 1_1_0d EXIST::FUNCTION:SM2 +CAST_ecb_encrypt 4096 1_1_0d EXIST::FUNCTION:CAST +RC2_ofb64_encrypt 4097 1_1_0d EXIST::FUNCTION:RC2 +CRYPTO_cts128_encrypt_block 4098 1_1_0d EXIST::FUNCTION: +CMS_RecipientInfo_kekri_id_cmp 4099 1_1_0d EXIST::FUNCTION:CMS +X509_NAME_get_text_by_OBJ 4100 1_1_0d EXIST::FUNCTION: +EVP_PKEY_CTX_get0_peerkey 4101 1_1_0d EXIST::FUNCTION: +X509_REQ_get0_signature 4102 1_1_0d EXIST::FUNCTION: +GENERAL_NAME_free 4103 1_1_0d EXIST::FUNCTION: +DSA_SIG_get0 4104 1_1_0d EXIST::FUNCTION:DSA +CMS_unsigned_get_attr_by_OBJ 4105 1_1_0d EXIST::FUNCTION:CMS +EXTENDED_KEY_USAGE_free 4106 1_1_0d EXIST::FUNCTION: +d2i_SM9PrivateKey 4107 1_1_0d EXIST::FUNCTION:SM9 +EVP_MD_meth_get_input_blocksize 4108 1_1_0d EXIST::FUNCTION: +EC_GROUP_new_from_ecparameters 4109 1_1_0d EXIST::FUNCTION:EC +PEM_write_bio_DSAPrivateKey 4110 1_1_0d EXIST::FUNCTION:DSA +OCSP_REQINFO_it 4111 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:OCSP +OCSP_REQINFO_it 4111 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:OCSP +i2d_ASN1_UTF8STRING 4112 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_CTX_original_iv 4113 1_1_0d EXIST::FUNCTION: +ASN1_item_dup 4114 1_1_0d EXIST::FUNCTION: +RIPEMD160_Transform 4115 1_1_0d EXIST::FUNCTION:RMD160 +ASYNC_WAIT_CTX_new 4116 1_1_0d EXIST::FUNCTION: +SKF_GetContainerTypeName 4117 1_1_0d EXIST::FUNCTION:SKF +ASN1_TIME_it 4118 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_TIME_it 4118 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ASN1_buf_print 4119 1_1_0d EXIST::FUNCTION: +PKCS12_MAC_DATA_free 4120 1_1_0d EXIST::FUNCTION: +BN_get_rfc3526_prime_1536 4121 1_1_0d EXIST::FUNCTION: +PaillierPublicKey_it 4122 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:PAILLIER +PaillierPublicKey_it 4122 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:PAILLIER +PEM_SignFinal 4123 1_1_0d EXIST::FUNCTION: +X509_get_default_cert_file_env 4124 1_1_0d EXIST::FUNCTION: +X509_STORE_set_purpose 4125 1_1_0d EXIST::FUNCTION: +CMS_ContentInfo_it 4126 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:CMS +CMS_ContentInfo_it 4126 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:CMS +BN_BLINDING_get_flags 4127 1_1_0d EXIST::FUNCTION: +BIO_fd_should_retry 4128 1_1_0d EXIST::FUNCTION: +CRYPTO_ccm128_encrypt_ccm64 4129 1_1_0d EXIST::FUNCTION: +X509_REQ_get_attr_by_OBJ 4130 1_1_0d EXIST::FUNCTION: +EVP_MD_meth_set_final 4131 1_1_0d EXIST::FUNCTION: +EVP_CipherUpdate 4132 1_1_0d EXIST::FUNCTION: +ASN1_PRINTABLE_new 4133 1_1_0d EXIST::FUNCTION: +CRYPTO_memcmp 4134 1_1_0d EXIST::FUNCTION: +ASN1_STRING_set_default_mask_asc 4135 1_1_0d EXIST::FUNCTION: +DES_key_sched 4136 1_1_0d EXIST::FUNCTION:DES +ASN1_generate_nconf 4137 1_1_0d EXIST::FUNCTION: +i2d_POLICYINFO 4138 1_1_0d EXIST::FUNCTION: +SM2_cosigner2_setup 4139 1_1_0d EXIST::FUNCTION:SM2 +ENGINE_set_DH 4140 1_1_0d EXIST::FUNCTION:ENGINE +EVP_PKEY_meth_get_verify_recover 4141 1_1_0d EXIST::FUNCTION: +ASN1_TYPE_pack_sequence 4142 1_1_0d EXIST::FUNCTION: +OPENSSL_strlcpy 4143 1_1_0d EXIST::FUNCTION: +SDF_ExternalVerify_ECC 4144 1_1_0d EXIST::FUNCTION: +SM9PublicKey_it 4145 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:SM9 +SM9PublicKey_it 4145 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:SM9 +BN_BLINDING_invert_ex 4146 1_1_0d EXIST::FUNCTION: +ENGINE_register_all_digests 4147 1_1_0d EXIST::FUNCTION:ENGINE +CMS_signed_add1_attr_by_OBJ 4148 1_1_0d EXIST::FUNCTION:CMS +EVP_CIPHER_impl_ctx_size 4149 1_1_0d EXIST::FUNCTION: +d2i_RSAPrivateKey 4150 1_1_0d EXIST::FUNCTION:RSA +sms4_ofb128_encrypt 4151 1_1_0d EXIST::FUNCTION:SMS4 +CRYPTO_THREAD_read_lock 4152 1_1_0d EXIST::FUNCTION: +BN_uadd 4153 1_1_0d EXIST::FUNCTION: +UTF8_putc 4154 1_1_0d EXIST::FUNCTION: +OCSP_REQUEST_add1_ext_i2d 4155 1_1_0d EXIST::FUNCTION:OCSP +X509_VERIFY_PARAM_add0_table 4156 1_1_0d EXIST::FUNCTION: +BIO_ADDR_free 4157 1_1_0d EXIST::FUNCTION:SOCK +EVP_rc5_32_12_16_ofb 4158 1_1_0d EXIST::FUNCTION:RC5 +BIO_vprintf 4159 1_1_0d EXIST::FUNCTION: +IDEA_set_encrypt_key 4160 1_1_0d EXIST::FUNCTION:IDEA +d2i_IPAddressFamily 4161 1_1_0d EXIST::FUNCTION:RFC3779 +EVP_PKEY_add1_attr_by_OBJ 4162 1_1_0d EXIST::FUNCTION: +DH_meth_set_bn_mod_exp 4163 1_1_0d EXIST::FUNCTION:DH +OCSP_REQ_CTX_new 4164 1_1_0d EXIST::FUNCTION:OCSP +RSA_bits 4165 1_1_0d EXIST::FUNCTION:RSA +PKCS7_add_signature 4166 1_1_0d EXIST::FUNCTION: +CRYPTO_ccm128_init 4167 1_1_0d EXIST::FUNCTION: +PKCS7_to_TS_TST_INFO 4168 1_1_0d EXIST::FUNCTION:TS +OCSP_RESPDATA_new 4169 1_1_0d EXIST::FUNCTION:OCSP +EC_KEY_set_group 4170 1_1_0d EXIST::FUNCTION:EC +X509_ALGOR_set_md 4171 1_1_0d EXIST::FUNCTION: +DIST_POINT_new 4172 1_1_0d EXIST::FUNCTION: +i2d_CMS_ReceiptRequest 4173 1_1_0d EXIST::FUNCTION:CMS +PKCS12_unpack_authsafes 4174 1_1_0d EXIST::FUNCTION: +ESS_SIGNING_CERT_dup 4175 1_1_0d EXIST::FUNCTION:TS +ASN1_verify 4176 1_1_0d EXIST::FUNCTION: +ASN1_VISIBLESTRING_it 4177 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_VISIBLESTRING_it 4177 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +EVP_CIPHER_CTX_clear_flags 4178 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_type 4179 1_1_0d EXIST::FUNCTION: +d2i_SM9PrivateKey_bio 4180 1_1_0d EXIST::FUNCTION:SM9 +ASIdentifierChoice_it 4181 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:RFC3779 +ASIdentifierChoice_it 4181 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:RFC3779 +FIPS_mode_set 4182 1_1_0d EXIST::FUNCTION: +ENGINE_get_ex_data 4183 1_1_0d EXIST::FUNCTION:ENGINE +SRP_Calc_A 4184 1_1_0d EXIST::FUNCTION:SRP +d2i_PKCS7_ENVELOPE 4185 1_1_0d EXIST::FUNCTION: +DH_meth_get_finish 4186 1_1_0d EXIST::FUNCTION:DH +EVP_CipherInit 4187 1_1_0d EXIST::FUNCTION: +CONF_dump_bio 4188 1_1_0d EXIST::FUNCTION: +ENGINE_register_all_ciphers 4189 1_1_0d EXIST::FUNCTION:ENGINE +SDF_Encrypt 4190 1_1_0d EXIST::FUNCTION: +ASN1_BIT_STRING_num_asc 4191 1_1_0d EXIST::FUNCTION: +X509_policy_level_get0_node 4192 1_1_0d EXIST::FUNCTION: +X509_get0_pubkey 4193 1_1_0d EXIST::FUNCTION: +OCSP_SINGLERESP_get_ext_by_NID 4194 1_1_0d EXIST::FUNCTION:OCSP +EVP_DecryptInit_ex 4195 1_1_0d EXIST::FUNCTION: +EVP_blake2s256 4196 1_1_0d EXIST::FUNCTION:BLAKE2 +EVP_CIPHER_CTX_iv_length 4197 1_1_0d EXIST::FUNCTION: +OCSP_ONEREQ_add_ext 4198 1_1_0d EXIST::FUNCTION:OCSP +X509_STORE_free 4199 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_CTX_set_key_length 4200 1_1_0d EXIST::FUNCTION: +ASN1_OBJECT_new 4201 1_1_0d EXIST::FUNCTION: +RAND_OpenSSL 4202 1_1_0d EXIST::FUNCTION: +X509_check_host 4203 1_1_0d EXIST::FUNCTION: +BIO_ctrl 4204 1_1_0d EXIST::FUNCTION: +SDF_GenerateKeyWithIPK_RSA 4205 1_1_0d EXIST::FUNCTION: +TS_RESP_CTX_set_extension_cb 4206 1_1_0d EXIST::FUNCTION:TS +PEM_read_PrivateKey 4207 1_1_0d EXIST::FUNCTION:STDIO +EC_GFp_nistp256_method 4208 1_1_0d EXIST::FUNCTION:EC,EC_NISTP_64_GCC_128 +EVP_MD_meth_set_cleanup 4209 1_1_0d EXIST::FUNCTION: +X509_get1_email 4210 1_1_0d EXIST::FUNCTION: +DSA_bits 4211 1_1_0d EXIST::FUNCTION:DSA +RSA_padding_add_PKCS1_PSS 4212 1_1_0d EXIST::FUNCTION:RSA +UI_add_input_string 4213 1_1_0d EXIST::FUNCTION:UI +BIO_get_new_index 4214 1_1_0d EXIST::FUNCTION: +ENGINE_register_DSA 4215 1_1_0d EXIST::FUNCTION:ENGINE +OBJ_NAME_cleanup 4216 1_1_0d EXIST::FUNCTION: +PKCS7_set_signed_attributes 4217 1_1_0d EXIST::FUNCTION: +SKF_ImportECCPrivateKey 4218 1_1_0d EXIST::FUNCTION:SKF +EVP_CIPHER_CTX_get_app_data 4219 1_1_0d EXIST::FUNCTION: +MD2_Final 4220 1_1_0d EXIST::FUNCTION:MD2 +PKCS12_SAFEBAG_create_crl 4221 1_1_0d EXIST::FUNCTION: +TS_TST_INFO_set_accuracy 4222 1_1_0d EXIST::FUNCTION:TS +i2d_re_X509_tbs 4223 1_1_0d EXIST::FUNCTION: +PKCS7_SIGNED_it 4224 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PKCS7_SIGNED_it 4224 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +EVP_PKEY_set1_DSA 4225 1_1_0d EXIST::FUNCTION:DSA +EC_KEY_set_private_key 4226 1_1_0d EXIST::FUNCTION:EC +ASN1_TIME_print 4227 1_1_0d EXIST::FUNCTION: +d2i_PKCS7_RECIP_INFO 4228 1_1_0d EXIST::FUNCTION: +X509_OBJECT_retrieve_by_subject 4229 1_1_0d EXIST::FUNCTION: +BN_bn2lebinpad 4230 1_1_0d EXIST::FUNCTION: +PEM_write_CMS 4231 1_1_0d EXIST::FUNCTION:CMS,STDIO +DSO_new 4232 1_1_0d EXIST::FUNCTION: +EVP_MD_meth_set_app_datasize 4233 1_1_0d EXIST::FUNCTION: +i2d_PrivateKey_bio 4234 1_1_0d EXIST::FUNCTION: +ASN1_i2d_bio 4235 1_1_0d EXIST::FUNCTION: +X509_REQ_get_extensions 4236 1_1_0d EXIST::FUNCTION: +BN_is_negative 4237 1_1_0d EXIST::FUNCTION: +i2d_X509_NAME 4238 1_1_0d EXIST::FUNCTION: +ASN1_TIME_new 4239 1_1_0d EXIST::FUNCTION: +PKCS12_unpack_p7data 4240 1_1_0d EXIST::FUNCTION: +BN_get_rfc2409_prime_768 4241 1_1_0d EXIST::FUNCTION: +EC_POINT_set_affine_coordinates_GFp 4242 1_1_0d EXIST::FUNCTION:EC +EVP_PKEY_meth_add0 4243 1_1_0d EXIST::FUNCTION: +SM2_KAP_CTX_init 4244 1_1_0d EXIST::FUNCTION:SM2 +X509_STORE_get_check_policy 4245 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_get_explicit_policy 4246 1_1_0d EXIST::FUNCTION: +TS_REQ_delete_ext 4247 1_1_0d EXIST::FUNCTION:TS +OPENSSL_init_crypto 4248 1_1_0d EXIST::FUNCTION: +RSA_check_key 4249 1_1_0d EXIST::FUNCTION:RSA +X509_ALGOR_new 4250 1_1_0d EXIST::FUNCTION: +EVP_PKEY_derive_set_peer 4251 1_1_0d EXIST::FUNCTION: +PKCS5_v2_PBE_keyivgen 4252 1_1_0d EXIST::FUNCTION: +RAND_poll 4253 1_1_0d EXIST::FUNCTION: +EC_POINT_clear_free 4254 1_1_0d EXIST::FUNCTION:EC +i2d_NOTICEREF 4255 1_1_0d EXIST::FUNCTION: +X509_CRL_check_suiteb 4256 1_1_0d EXIST::FUNCTION: +X509_CRL_cmp 4257 1_1_0d EXIST::FUNCTION: +BN_MONT_CTX_set_locked 4258 1_1_0d EXIST::FUNCTION: +AES_cfb128_encrypt 4259 1_1_0d EXIST::FUNCTION: +NCONF_load 4260 1_1_0d EXIST::FUNCTION: +ENGINE_get_cipher_engine 4261 1_1_0d EXIST::FUNCTION:ENGINE +BN_swap 4262 1_1_0d EXIST::FUNCTION: +RC5_32_cbc_encrypt 4263 1_1_0d EXIST::FUNCTION:RC5 +i2d_PKCS8PrivateKeyInfo_fp 4264 1_1_0d EXIST::FUNCTION:STDIO +BIO_s_mem 4265 1_1_0d EXIST::FUNCTION: +EVP_seed_cfb128 4266 1_1_0d EXIST::FUNCTION:SEED +UI_ctrl 4267 1_1_0d EXIST::FUNCTION:UI +ASN1_BIT_STRING_get_bit 4268 1_1_0d EXIST::FUNCTION: +ENGINE_unregister_RAND 4269 1_1_0d EXIST::FUNCTION:ENGINE +COMP_CTX_get_type 4270 1_1_0d EXIST::FUNCTION:COMP +OPENSSL_LH_new 4271 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_CTX_set_app_data 4272 1_1_0d EXIST::FUNCTION: +SDF_CreateFile 4273 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_meth_dup 4274 1_1_0d EXIST::FUNCTION: +AUTHORITY_INFO_ACCESS_it 4275 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +AUTHORITY_INFO_ACCESS_it 4275 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +OCSP_REVOKEDINFO_new 4276 1_1_0d EXIST::FUNCTION:OCSP +EVP_PKEY_delete_attr 4277 1_1_0d EXIST::FUNCTION: +SDF_ImportKeyWithISK_ECC 4278 1_1_0d EXIST::FUNCTION: +SKF_PrintRSAPrivateKey 4279 1_1_0d EXIST::FUNCTION:SKF +X509_REQ_it 4280 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_REQ_it 4280 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PEM_read_PaillierPublicKey 4281 1_1_0d EXIST::FUNCTION:PAILLIER,STDIO +ERR_pop_to_mark 4282 1_1_0d EXIST::FUNCTION: +TS_REQ_get_version 4283 1_1_0d EXIST::FUNCTION:TS +PEM_read_bio_RSAPrivateKey 4284 1_1_0d EXIST::FUNCTION:RSA +d2i_X509_CRL_bio 4285 1_1_0d EXIST::FUNCTION: +EVP_PBE_CipherInit 4286 1_1_0d EXIST::FUNCTION: +ASN1_GENERALIZEDTIME_free 4287 1_1_0d EXIST::FUNCTION: +d2i_PBEPARAM 4288 1_1_0d EXIST::FUNCTION: +PKCS7_set_digest 4289 1_1_0d EXIST::FUNCTION: +X509V3_NAME_from_section 4290 1_1_0d EXIST::FUNCTION: +BIO_set_callback 4291 1_1_0d EXIST::FUNCTION: +X509_NAME_add_entry_by_OBJ 4292 1_1_0d EXIST::FUNCTION: +DIST_POINT_free 4293 1_1_0d EXIST::FUNCTION: +POLICY_CONSTRAINTS_it 4294 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +POLICY_CONSTRAINTS_it 4294 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ESS_SIGNING_CERT_new 4295 1_1_0d EXIST::FUNCTION:TS +OBJ_obj2txt 4296 1_1_0d EXIST::FUNCTION: +EC_KEY_get_default_method 4297 1_1_0d EXIST::FUNCTION:EC +ASN1_OBJECT_free 4298 1_1_0d EXIST::FUNCTION: +BIO_clear_flags 4299 1_1_0d EXIST::FUNCTION: +X509v3_addr_validate_resource_set 4300 1_1_0d EXIST::FUNCTION:RFC3779 +X509_VERIFY_PARAM_set1_email 4301 1_1_0d EXIST::FUNCTION: +SKF_ExportEVPPublicKey 4302 1_1_0d EXIST::FUNCTION:SKF +RSA_meth_get_priv_dec 4303 1_1_0d EXIST::FUNCTION:RSA +o2i_ECPublicKey 4304 1_1_0d EXIST::FUNCTION:EC +BIO_ADDRINFO_next 4305 1_1_0d EXIST::FUNCTION:SOCK +ENGINE_load_public_key 4306 1_1_0d EXIST::FUNCTION:ENGINE +EVP_aes_192_gcm 4307 1_1_0d EXIST::FUNCTION: +DSA_generate_parameters_ex 4308 1_1_0d EXIST::FUNCTION:DSA +i2d_SM9MasterSecret 4309 1_1_0d EXIST::FUNCTION:SM9 +ENGINE_init 4310 1_1_0d EXIST::FUNCTION:ENGINE +EC_POINT_dbl 4311 1_1_0d EXIST::FUNCTION:EC +PEM_read_bio 4312 1_1_0d EXIST::FUNCTION: +OCSP_SINGLERESP_add1_ext_i2d 4313 1_1_0d EXIST::FUNCTION:OCSP +PEM_write_bio_ECPKParameters 4314 1_1_0d EXIST::FUNCTION:EC +TS_ACCURACY_get_micros 4315 1_1_0d EXIST::FUNCTION:TS +i2d_ASN1_PRINTABLE 4316 1_1_0d EXIST::FUNCTION: +PEM_write_bio_PaillierPrivateKey 4317 1_1_0d EXIST::FUNCTION:PAILLIER +SM9MasterSecret_it 4318 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:SM9 +SM9MasterSecret_it 4318 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:SM9 +X509_EXTENSION_dup 4319 1_1_0d EXIST::FUNCTION: +RSA_clear_flags 4320 1_1_0d EXIST::FUNCTION:RSA +OBJ_bsearch_ex_ 4321 1_1_0d EXIST::FUNCTION: +BN_BLINDING_convert 4322 1_1_0d EXIST::FUNCTION: +PEM_write_DSAPrivateKey 4323 1_1_0d EXIST::FUNCTION:DSA,STDIO +ASN1_PCTX_set_flags 4324 1_1_0d EXIST::FUNCTION: +X509_get_default_private_dir 4325 1_1_0d EXIST::FUNCTION: +ECDSA_SIG_new_from_ECCSignature 4326 1_1_0d EXIST::FUNCTION:EC,GMAPI,SDF +PKCS7_free 4327 1_1_0d EXIST::FUNCTION: +ASN1_INTEGER_set 4328 1_1_0d EXIST::FUNCTION: +i2d_DIST_POINT_NAME 4329 1_1_0d EXIST::FUNCTION: +ASN1_dup 4330 1_1_0d EXIST::FUNCTION: +i2s_ASN1_INTEGER 4331 1_1_0d EXIST::FUNCTION: +X509_policy_tree_get0_user_policies 4332 1_1_0d EXIST::FUNCTION: +SDF_CloseDevice 4333 1_1_0d EXIST::FUNCTION: +TS_RESP_CTX_set_clock_precision_digits 4334 1_1_0d EXIST::FUNCTION:TS +ASN1_PRINTABLESTRING_free 4335 1_1_0d EXIST::FUNCTION: +CRYPTO_gcm128_finish 4336 1_1_0d EXIST::FUNCTION: +PEM_read_bio_PKCS7 4337 1_1_0d EXIST::FUNCTION: +SKF_GetDevStateName 4338 1_1_0d EXIST::FUNCTION:SKF +BIO_s_secmem 4339 1_1_0d EXIST::FUNCTION: +EC_KEY_get_ECCPUBLICKEYBLOB 4340 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF +OCSP_response_create 4341 1_1_0d EXIST::FUNCTION:OCSP +ZLONG_it 4342 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ZLONG_it 4342 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ASN1_UTCTIME_new 4343 1_1_0d EXIST::FUNCTION: +EVP_camellia_128_cfb8 4344 1_1_0d EXIST::FUNCTION:CAMELLIA +GENERAL_NAME_cmp 4345 1_1_0d EXIST::FUNCTION: +SM2_sign_ex 4346 1_1_0d EXIST::FUNCTION:SM2 +SHA384_Final 4347 1_1_0d EXIST:!VMSVAX:FUNCTION: +RC5_32_cfb64_encrypt 4348 1_1_0d EXIST::FUNCTION:RC5 +OCSP_BASICRESP_new 4349 1_1_0d EXIST::FUNCTION:OCSP +DH_meth_get_flags 4350 1_1_0d EXIST::FUNCTION:DH +BN_BLINDING_free 4351 1_1_0d EXIST::FUNCTION: +EVP_PKEY_meth_new 4352 1_1_0d EXIST::FUNCTION: +CMS_data_create 4353 1_1_0d EXIST::FUNCTION:CMS +X509_STORE_CTX_get0_policy_tree 4354 1_1_0d EXIST::FUNCTION: +BIO_read 4355 1_1_0d EXIST::FUNCTION: +BN_nist_mod_func 4356 1_1_0d EXIST::FUNCTION: +i2d_EDIPARTYNAME 4357 1_1_0d EXIST::FUNCTION: +DES_set_odd_parity 4358 1_1_0d EXIST::FUNCTION:DES +IPAddressChoice_free 4359 1_1_0d EXIST::FUNCTION:RFC3779 +RC5_32_ecb_encrypt 4360 1_1_0d EXIST::FUNCTION:RC5 +IPAddressFamily_new 4361 1_1_0d EXIST::FUNCTION:RFC3779 +RAND_status 4362 1_1_0d EXIST::FUNCTION: +ERR_put_error 4363 1_1_0d EXIST::FUNCTION: +BIO_test_flags 4364 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_get_get_crl 4365 1_1_0d EXIST::FUNCTION: +MD4_Transform 4366 1_1_0d EXIST::FUNCTION:MD4 +ASN1_ENUMERATED_get_int64 4367 1_1_0d EXIST::FUNCTION: +EC_POINT_point2buf 4368 1_1_0d EXIST::FUNCTION:EC +PEM_read_SM9_PUBKEY 4369 1_1_0d EXIST::FUNCTION:SM9,STDIO +EC_KEY_print 4370 1_1_0d EXIST::FUNCTION:EC +SKF_ImportSessionKey 4371 1_1_0d EXIST::FUNCTION:SKF +X509_new 4372 1_1_0d EXIST::FUNCTION: +X509_TRUST_set 4373 1_1_0d EXIST::FUNCTION: +i2d_NETSCAPE_SPKAC 4374 1_1_0d EXIST::FUNCTION: +BN_new 4375 1_1_0d EXIST::FUNCTION: +ASN1_OCTET_STRING_free 4376 1_1_0d EXIST::FUNCTION: +ASN1_PRINTABLE_type 4377 1_1_0d EXIST::FUNCTION: +PKCS12_get_attr 4378 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0 +OCSP_BASICRESP_add_ext 4379 1_1_0d EXIST::FUNCTION:OCSP +BN_to_ASN1_INTEGER 4380 1_1_0d EXIST::FUNCTION: +d2i_PKCS12_fp 4381 1_1_0d EXIST::FUNCTION:STDIO +EVP_CIPHER_CTX_free 4382 1_1_0d EXIST::FUNCTION: +EVP_PKEY_base_id 4383 1_1_0d EXIST::FUNCTION: +d2i_PublicKey 4384 1_1_0d EXIST::FUNCTION: +SDF_ExportSignPublicKey_RSA 4385 1_1_0d EXIST::FUNCTION: +i2d_OTHERNAME 4386 1_1_0d EXIST::FUNCTION: +EC_GROUP_get_curve_name 4387 1_1_0d EXIST::FUNCTION:EC +EVP_PKEY_CTX_dup 4388 1_1_0d EXIST::FUNCTION: +CRYPTO_ccm128_decrypt_ccm64 4389 1_1_0d EXIST::FUNCTION: +sms4_set_encrypt_key 4390 1_1_0d EXIST::FUNCTION:SMS4 +EC_GROUP_set_asn1_flag 4391 1_1_0d EXIST::FUNCTION:EC +DSA_meth_set1_name 4392 1_1_0d EXIST::FUNCTION:DSA +X509_signature_print 4393 1_1_0d EXIST::FUNCTION: +NCONF_get_section 4394 1_1_0d EXIST::FUNCTION: +BIO_ADDR_family 4395 1_1_0d EXIST::FUNCTION:SOCK +BN_GF2m_mod_sqrt 4396 1_1_0d EXIST::FUNCTION:EC2M +X509_STORE_CTX_set_depth 4397 1_1_0d EXIST::FUNCTION: +PKCS12_SAFEBAG_get1_cert 4398 1_1_0d EXIST::FUNCTION: +SKF_DisConnectDev 4399 1_1_0d EXIST::FUNCTION:SKF +RSA_size 4400 1_1_0d EXIST::FUNCTION:RSA +BN_BLINDING_set_current_thread 4401 1_1_0d EXIST::FUNCTION: +ERR_set_mark 4402 1_1_0d EXIST::FUNCTION: +OCSP_BASICRESP_it 4403 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:OCSP +OCSP_BASICRESP_it 4403 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:OCSP +EC_KEY_METHOD_set_sign 4404 1_1_0d EXIST::FUNCTION:EC +BIO_new_CMS 4405 1_1_0d EXIST::FUNCTION:CMS +X509_STORE_CTX_get0_parent_ctx 4406 1_1_0d EXIST::FUNCTION: +DSA_free 4407 1_1_0d EXIST::FUNCTION:DSA +CMS_signed_get_attr_count 4408 1_1_0d EXIST::FUNCTION:CMS +EVP_blake2b512 4409 1_1_0d EXIST::FUNCTION:BLAKE2 +X509_NAME_it 4410 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_NAME_it 4410 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_CRL_verify 4411 1_1_0d EXIST::FUNCTION: +X509_set1_notAfter 4412 1_1_0d EXIST::FUNCTION: +i2d_RSA_PUBKEY 4413 1_1_0d EXIST::FUNCTION:RSA +X509_OBJECT_up_ref_count 4414 1_1_0d EXIST::FUNCTION: +d2i_SM9_MASTER_PUBKEY 4415 1_1_0d EXIST::FUNCTION:SM9 +d2i_PKCS12_BAGS 4416 1_1_0d EXIST::FUNCTION: +EVP_PBE_scrypt 4417 1_1_0d EXIST::FUNCTION:SCRYPT +OPENSSL_LH_insert 4418 1_1_0d EXIST::FUNCTION: +BN_rshift 4419 1_1_0d EXIST::FUNCTION: +X509_NAME_oneline 4420 1_1_0d EXIST::FUNCTION: +d2i_EC_PUBKEY_fp 4421 1_1_0d EXIST::FUNCTION:EC,STDIO +RSAPrivateKey_dup 4422 1_1_0d EXIST::FUNCTION:RSA +ENGINE_get_finish_function 4423 1_1_0d EXIST::FUNCTION:ENGINE +BIO_ADDR_path_string 4424 1_1_0d EXIST::FUNCTION:SOCK +TS_REQ_add_ext 4425 1_1_0d EXIST::FUNCTION:TS +CRYPTO_THREAD_get_current_id 4426 1_1_0d EXIST::FUNCTION: +EVP_camellia_128_cfb1 4427 1_1_0d EXIST::FUNCTION:CAMELLIA +SM9_sign 4428 1_1_0d EXIST::FUNCTION:SM9 +OCSP_ONEREQ_get_ext_by_OBJ 4429 1_1_0d EXIST::FUNCTION:OCSP +BIO_ADDRINFO_free 4430 1_1_0d EXIST::FUNCTION:SOCK +X509_STORE_CTX_free 4431 1_1_0d EXIST::FUNCTION: +X509_keyid_set1 4432 1_1_0d EXIST::FUNCTION: +X509_ALGOR_free 4433 1_1_0d EXIST::FUNCTION: +X509_STORE_get_check_revocation 4434 1_1_0d EXIST::FUNCTION: +EVP_md5_sha1 4435 1_1_0d EXIST::FUNCTION:MD5 +BIO_dump_indent_cb 4436 1_1_0d EXIST::FUNCTION: +TS_RESP_set_tst_info 4437 1_1_0d EXIST::FUNCTION:TS +CRYPTO_cts128_encrypt 4438 1_1_0d EXIST::FUNCTION: +X509_STORE_set_lookup_crls 4439 1_1_0d EXIST::FUNCTION: +EVP_aes_256_ecb 4440 1_1_0d EXIST::FUNCTION: +BIO_dgram_is_sctp 4441 1_1_0d EXIST::FUNCTION:DGRAM,SCTP +UI_add_info_string 4442 1_1_0d EXIST::FUNCTION:UI +SDF_ImportKey 4443 1_1_0d EXIST::FUNCTION:SDF +EC_GFp_simple_method 4444 1_1_0d EXIST::FUNCTION:EC +MD5_Transform 4445 1_1_0d EXIST::FUNCTION:MD5 +EVP_cast5_cfb64 4446 1_1_0d EXIST::FUNCTION:CAST +X509_CRL_http_nbio 4447 1_1_0d EXIST::FUNCTION:OCSP +RSA_new_method 4448 1_1_0d EXIST::FUNCTION:RSA +OCSP_REQ_CTX_free 4449 1_1_0d EXIST::FUNCTION:OCSP +SEED_cfb128_encrypt 4450 1_1_0d EXIST::FUNCTION:SEED +X509_get_issuer_name 4451 1_1_0d EXIST::FUNCTION: +X509V3_EXT_conf_nid 4452 1_1_0d EXIST::FUNCTION: +TS_RESP_new 4453 1_1_0d EXIST::FUNCTION:TS +PKCS12_SAFEBAG_get0_type 4454 1_1_0d EXIST::FUNCTION: +ESS_ISSUER_SERIAL_dup 4455 1_1_0d EXIST::FUNCTION:TS +PEM_read_bio_RSA_PUBKEY 4456 1_1_0d EXIST::FUNCTION:RSA +BIO_get_callback_arg 4457 1_1_0d EXIST::FUNCTION: +EVP_aes_256_ccm 4458 1_1_0d EXIST::FUNCTION: +ASN1_SEQUENCE_ANY_it 4459 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_SEQUENCE_ANY_it 4459 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509V3_add_value_int 4460 1_1_0d EXIST::FUNCTION: +d2i_X509_bio 4461 1_1_0d EXIST::FUNCTION: +OCSP_response_status_str 4462 1_1_0d EXIST::FUNCTION:OCSP +ASN1_GENERALIZEDTIME_it 4463 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_GENERALIZEDTIME_it 4463 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ACCESS_DESCRIPTION_new 4464 1_1_0d EXIST::FUNCTION: +X509_CINF_it 4465 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_CINF_it 4465 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +PKCS7_ENC_CONTENT_free 4466 1_1_0d EXIST::FUNCTION: +DSA_generate_parameters 4467 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_0_9_8,DSA +X509_ALGOR_cmp 4468 1_1_0d EXIST::FUNCTION: +BIO_meth_get_read 4469 1_1_0d EXIST::FUNCTION: +EC_GROUP_get_mont_data 4470 1_1_0d EXIST::FUNCTION:EC +DSO_pathbyaddr 4471 1_1_0d EXIST::FUNCTION: +EVP_sm3 4472 1_1_0d EXIST::FUNCTION:SM3 +X509_VERIFY_PARAM_get0 4473 1_1_0d EXIST::FUNCTION: +d2i_PKCS8_bio 4474 1_1_0d EXIST::FUNCTION: +DH_meth_set0_app_data 4475 1_1_0d EXIST::FUNCTION:DH +ENGINE_unregister_digests 4476 1_1_0d EXIST::FUNCTION:ENGINE +TXT_DB_free 4477 1_1_0d EXIST::FUNCTION: +SCT_get_source 4478 1_1_0d EXIST::FUNCTION:CT +PROXY_POLICY_it 4479 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +PROXY_POLICY_it 4479 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +POLICY_CONSTRAINTS_free 4480 1_1_0d EXIST::FUNCTION: +i2d_NETSCAPE_CERT_SEQUENCE 4481 1_1_0d EXIST::FUNCTION: +BN_GF2m_mod 4482 1_1_0d EXIST::FUNCTION:EC2M +ENGINE_get_DH 4483 1_1_0d EXIST::FUNCTION:ENGINE +CMS_SignerInfo_cert_cmp 4484 1_1_0d EXIST::FUNCTION:CMS +X509_PUBKEY_get 4485 1_1_0d EXIST::FUNCTION: +PEM_read_X509_CRL 4486 1_1_0d EXIST::FUNCTION:STDIO +d2i_ECIES_CIPHERTEXT_VALUE 4487 1_1_0d EXIST::FUNCTION:ECIES +i2d_TS_MSG_IMPRINT_bio 4488 1_1_0d EXIST::FUNCTION:TS +DH_set_length 4489 1_1_0d EXIST::FUNCTION:DH +CONF_module_set_usr_data 4490 1_1_0d EXIST::FUNCTION: +ECIES_CIPHERTEXT_VALUE_new_from_ECCCipher 4491 1_1_0d EXIST::FUNCTION:EC,ECIES,GMAPI,SDF +EVP_MD_meth_get_ctrl 4492 1_1_0d EXIST::FUNCTION: +CONF_modules_finish 4493 1_1_0d EXIST::FUNCTION: +X509_get_ext_by_OBJ 4494 1_1_0d EXIST::FUNCTION: +X509_CRL_get_ext 4495 1_1_0d EXIST::FUNCTION: +PKCS12_newpass 4496 1_1_0d EXIST::FUNCTION: +CRYPTO_128_wrap_pad 4497 1_1_0d EXIST::FUNCTION: +ECDH_KDF_X9_62 4498 1_1_0d EXIST::FUNCTION:EC +ASN1_OBJECT_it 4499 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_OBJECT_it 4499 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +X509_CRL_it 4500 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +X509_CRL_it 4500 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +DH_generate_key 4501 1_1_0d EXIST::FUNCTION:DH +RSA_padding_check_SSLv23 4502 1_1_0d EXIST::FUNCTION:RSA +EVP_CIPHER_do_all_sorted 4503 1_1_0d EXIST::FUNCTION: +PKCS7_dup 4504 1_1_0d EXIST::FUNCTION: +EVP_aes_192_cbc 4505 1_1_0d EXIST::FUNCTION: +EC_KEY_METHOD_set_init 4506 1_1_0d EXIST::FUNCTION:EC +SM2_COSIGNER2_SHARE_new 4507 1_1_0d EXIST::FUNCTION:SM2 +d2i_X509_VAL 4508 1_1_0d EXIST::FUNCTION: +PEM_write_DHparams 4509 1_1_0d EXIST::FUNCTION:DH,STDIO +d2i_DHparams 4510 1_1_0d EXIST::FUNCTION:DH +d2i_ECPrivateKey_bio 4511 1_1_0d EXIST::FUNCTION:EC +CMS_signed_get_attr 4512 1_1_0d EXIST::FUNCTION:CMS +SDF_GenerateKeyWithEPK_RSA 4513 1_1_0d EXIST::FUNCTION: +SCT_get_log_entry_type 4514 1_1_0d EXIST::FUNCTION:CT +ASN1_OCTET_STRING_set 4515 1_1_0d EXIST::FUNCTION: +SDF_CloseSession 4516 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_CTX_encrypting 4517 1_1_0d EXIST::FUNCTION: +X509_NAME_free 4518 1_1_0d EXIST::FUNCTION: +X509_reject_clear 4519 1_1_0d EXIST::FUNCTION: +ASN1_GENERALSTRING_new 4520 1_1_0d EXIST::FUNCTION: +X509_get_default_cert_area 4521 1_1_0d EXIST::FUNCTION: +ERR_load_UI_strings 4522 1_1_0d EXIST::FUNCTION:UI +CONF_imodule_get_value 4523 1_1_0d EXIST::FUNCTION: +i2d_X509_ALGORS 4524 1_1_0d EXIST::FUNCTION: +EVP_PKEY_cmp 4525 1_1_0d EXIST::FUNCTION: +CMS_RecipientInfo_decrypt 4526 1_1_0d EXIST::FUNCTION:CMS +CMS_add0_cert 4527 1_1_0d EXIST::FUNCTION:CMS +OTHERNAME_it 4528 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +OTHERNAME_it 4528 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +EVP_ENCODE_CTX_free 4529 1_1_0d EXIST::FUNCTION: +RSA_get_RSArefPrivateKey 4530 1_1_0d EXIST::FUNCTION:GMAPI,RSA,SDF +BIO_s_datagram 4531 1_1_0d EXIST::FUNCTION:DGRAM +PKCS12_item_i2d_encrypt 4532 1_1_0d EXIST::FUNCTION: +CMS_SignerInfo_sign 4533 1_1_0d EXIST::FUNCTION:CMS +ENGINE_unregister_pkey_asn1_meths 4534 1_1_0d EXIST::FUNCTION:ENGINE +BN_is_prime 4535 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_0_9_8 +EC_KEY_set_method 4536 1_1_0d EXIST::FUNCTION:EC +BN_nist_mod_224 4537 1_1_0d EXIST::FUNCTION: +EVP_md_null 4538 1_1_0d EXIST::FUNCTION: +OCSP_archive_cutoff_new 4539 1_1_0d EXIST::FUNCTION:OCSP +BIO_meth_free 4540 1_1_0d EXIST::FUNCTION: +PBE2PARAM_new 4541 1_1_0d EXIST::FUNCTION: +DES_set_key_unchecked 4542 1_1_0d EXIST::FUNCTION:DES +BIO_closesocket 4543 1_1_0d EXIST::FUNCTION:SOCK +BN_BLINDING_convert_ex 4544 1_1_0d EXIST::FUNCTION: +EVP_aes_128_cbc_hmac_sha1 4545 1_1_0d EXIST::FUNCTION: +ECIES_CIPHERTEXT_VALUE_new 4546 1_1_0d EXIST::FUNCTION:ECIES +CMS_get0_SignerInfos 4547 1_1_0d EXIST::FUNCTION:CMS +EVP_MD_meth_set_input_blocksize 4548 1_1_0d EXIST::FUNCTION: +i2d_IPAddressChoice 4549 1_1_0d EXIST::FUNCTION:RFC3779 +d2i_TS_RESP_bio 4550 1_1_0d EXIST::FUNCTION:TS +OCSP_id_get0_info 4551 1_1_0d EXIST::FUNCTION:OCSP +OBJ_NAME_init 4552 1_1_0d EXIST::FUNCTION: +X509_get1_ocsp 4553 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_CTX_num 4554 1_1_0d EXIST::FUNCTION: +RSA_PKCS1_OpenSSL 4555 1_1_0d EXIST::FUNCTION:RSA +OPENSSL_sk_find 4556 1_1_0d EXIST::FUNCTION: +i2d_ASN1_bio_stream 4557 1_1_0d EXIST::FUNCTION: +ERR_load_ASN1_strings 4558 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_push 4559 1_1_0d EXIST::FUNCTION: +BIO_ctrl_pending 4560 1_1_0d EXIST::FUNCTION: +ERR_get_error_line_data 4561 1_1_0d EXIST::FUNCTION: +ASN1_parse_dump 4562 1_1_0d EXIST::FUNCTION: +OBJ_NAME_add 4563 1_1_0d EXIST::FUNCTION: +CMS_SignerInfo_get0_signer_id 4564 1_1_0d EXIST::FUNCTION:CMS +EC_KEY_set_ECCPUBLICKEYBLOB 4565 1_1_0d EXIST::FUNCTION:EC,GMAPI,SKF +ASN1_PRINTABLESTRING_new 4566 1_1_0d EXIST::FUNCTION: +a2i_GENERAL_NAME 4567 1_1_0d EXIST::FUNCTION: +OPENSSL_sk_shift 4568 1_1_0d EXIST::FUNCTION: +EVP_CIPHER_meth_get_do_cipher 4569 1_1_0d EXIST::FUNCTION: +X509_VERIFY_PARAM_set1_host 4570 1_1_0d EXIST::FUNCTION: +CONF_module_add 4571 1_1_0d EXIST::FUNCTION: +OCSP_url_svcloc_new 4572 1_1_0d EXIST::FUNCTION:OCSP +ASN1_UNIVERSALSTRING_it 4573 1_1_0d EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE: +ASN1_UNIVERSALSTRING_it 4573 1_1_0d EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION: +ERR_reason_error_string 4574 1_1_0d EXIST::FUNCTION: +SM2_do_decrypt 4575 1_1_0d EXIST::FUNCTION:SM2 +i2d_X509_EXTENSIONS 4576 1_1_0d EXIST::FUNCTION: +CTLOG_free 4577 1_1_0d EXIST::FUNCTION:CT +RSA_meth_get_pub_enc 4578 1_1_0d EXIST::FUNCTION:RSA +OPENSSL_sk_set_cmp_func 4579 1_1_0d EXIST::FUNCTION: +CONF_imodule_get_name 4580 1_1_0d EXIST::FUNCTION: +BIO_new_accept 4581 1_1_0d EXIST::FUNCTION:SOCK +i2v_ASN1_BIT_STRING 4582 1_1_0d EXIST::FUNCTION: +SKF_ECCSignData 4583 1_1_0d EXIST::FUNCTION:SKF +EC_POINT_get_Jprojective_coordinates_GFp 4584 1_1_0d EXIST::FUNCTION:EC +i2d_PKCS8_PRIV_KEY_INFO 4585 1_1_0d EXIST::FUNCTION: +EC_GROUP_order_bits 4586 1_1_0d EXIST::FUNCTION:EC +EVP_PKEY_asn1_set_item 4587 1_1_0d EXIST::FUNCTION: +BN_RECP_CTX_free 4588 1_1_0d EXIST::FUNCTION: +RSA_meth_set_flags 4589 1_1_0d EXIST::FUNCTION:RSA +i2d_TS_REQ_fp 4590 1_1_0d EXIST::FUNCTION:STDIO,TS +ENGINE_get_default_EC 4591 1_1_0d EXIST::FUNCTION:ENGINE +CMS_RecipientInfo_kari_get0_alg 4592 1_1_0d EXIST::FUNCTION:CMS +EC_METHOD_get_field_type 4593 1_1_0d EXIST::FUNCTION:EC +PKCS7_set_attributes 4594 1_1_0d EXIST::FUNCTION: +OCSP_single_get0_status 4595 1_1_0d EXIST::FUNCTION:OCSP +X509_CRL_free 4596 1_1_0d EXIST::FUNCTION: +PKCS12_get0_mac 4597 1_1_0d EXIST::FUNCTION: +X509_STORE_CTX_set_flags 4598 1_1_0d EXIST::FUNCTION: +PKCS12_get_attr_gen 4599 1_1_0d EXIST::FUNCTION: diff --git a/util/libssl.num b/util/libssl.num index e69de29b..de8a0011 100644 --- a/util/libssl.num +++ b/util/libssl.num @@ -0,0 +1,411 @@ +SSL_rstate_string 1 1_1_0d EXIST::FUNCTION: +SSL_add_ssl_module 2 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_cert_store 3 1_1_0d EXIST::FUNCTION: +SSL_CIPHER_get_id 4 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_verify 5 1_1_0d EXIST::FUNCTION: +DTLSv1_2_client_method 6 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,DTLS1_2_METHOD +SRP_Calc_A_param 7 1_1_0d EXIST::FUNCTION:SRP +SSL_set_connect_state 8 1_1_0d EXIST::FUNCTION: +SSL_SESSION_set1_id 9 1_1_0d EXIST::FUNCTION: +SSL_get_cipher_list 10 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_default_read_buffer_len 11 1_1_0d EXIST::FUNCTION: +SSL_get_client_CA_list 12 1_1_0d EXIST::FUNCTION: +SSL_CTX_use_RSAPrivateKey_file 13 1_1_0d EXIST::FUNCTION:RSA +SSL_set0_rbio 14 1_1_0d EXIST::FUNCTION: +SSL_get_shutdown 15 1_1_0d EXIST::FUNCTION: +SSL_alert_desc_string 16 1_1_0d EXIST::FUNCTION: +TLS_client_method 17 1_1_0d EXIST::FUNCTION: +SSL_set_verify_depth 18 1_1_0d EXIST::FUNCTION: +SSL_get_info_callback 19 1_1_0d EXIST::FUNCTION: +SSL_get_default_passwd_cb 20 1_1_0d EXIST::FUNCTION: +SSL_use_PrivateKey_ASN1 21 1_1_0d EXIST::FUNCTION: +SSL_get_client_random 22 1_1_0d EXIST::FUNCTION: +SSL_get0_alpn_selected 23 1_1_0d EXIST::FUNCTION: +SSL_SESSION_get0_cipher 24 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_ciphers 25 1_1_0d EXIST::FUNCTION: +SSL_CTX_flush_sessions 26 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_client_cert_cb 27 1_1_0d EXIST::FUNCTION: +SSL_is_gmtls 28 1_1_0d EXIST::FUNCTION: +SSL_get0_peer_scts 29 1_1_0d EXIST::FUNCTION:CT +SSL_CTX_clear_options 30 1_1_0d EXIST::FUNCTION: +SSL_CTX_free 31 1_1_0d EXIST::FUNCTION: +SSL_set_SSL_CTX 32 1_1_0d EXIST::FUNCTION: +DTLSv1_client_method 33 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,DTLS1_METHOD +SSL_CTX_ct_is_enabled 34 1_1_0d EXIST::FUNCTION:CT +OPENSSL_init_ssl 35 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_ex_data 36 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_cookie_generate_cb 37 1_1_0d EXIST::FUNCTION: +SSL_CTX_use_certificate_chain_file 38 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_default_verify_paths 39 1_1_0d EXIST::FUNCTION: +SSL_CTX_sess_set_get_cb 40 1_1_0d EXIST::FUNCTION: +GMTLS_client_method 41 1_1_0d EXIST::FUNCTION:GMTLS +SSL_add1_host 42 1_1_0d EXIST::FUNCTION: +SSL_dup_CA_list 43 1_1_0d EXIST::FUNCTION: +SSL_get_verify_callback 44 1_1_0d EXIST::FUNCTION: +SSL_get_current_compression 45 1_1_0d EXIST::FUNCTION: +SSL_alert_type_string_long 46 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_trust 47 1_1_0d EXIST::FUNCTION: +SSL_CTX_up_ref 48 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_alpn_select_cb 49 1_1_0d EXIST::FUNCTION: +SSL_get_security_callback 50 1_1_0d EXIST::FUNCTION: +DTLSv1_listen 51 1_1_0d EXIST::FUNCTION:SOCK +SSL_CTX_get0_certificate 52 1_1_0d EXIST::FUNCTION: +SSL_set_default_passwd_cb 53 1_1_0d EXIST::FUNCTION: +SSL_waiting_for_async 54 1_1_0d EXIST::FUNCTION: +SSL_set_options 55 1_1_0d EXIST::FUNCTION: +SSL_CIPHER_get_kx_nid 56 1_1_0d EXIST::FUNCTION: +SSL_dane_enable 57 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_quiet_shutdown 58 1_1_0d EXIST::FUNCTION: +SSL_srp_server_param_with_username 59 1_1_0d EXIST::FUNCTION:SRP +SSL_get_state 60 1_1_0d EXIST::FUNCTION: +SSL_CTX_use_certificate 61 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_client_cert_engine 62 1_1_0d EXIST::FUNCTION:ENGINE +SSL_get_current_expansion 63 1_1_0d EXIST::FUNCTION: +TLSv1_1_method 64 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,TLS1_1_METHOD +SSL_CTX_get0_security_ex_data 65 1_1_0d EXIST::FUNCTION: +SSLv3_server_method 66 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,SSL3_METHOD +SSL_set_debug 67 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0 +d2i_SSL_SESSION 68 1_1_0d EXIST::FUNCTION: +SSL_use_psk_identity_hint 69 1_1_0d EXIST::FUNCTION:PSK +SSL_set_info_callback 70 1_1_0d EXIST::FUNCTION: +SSL_get_servername 71 1_1_0d EXIST::FUNCTION: +SSL_CTX_enable_ct 72 1_1_0d EXIST::FUNCTION:CT +DTLS_client_method 73 1_1_0d EXIST::FUNCTION: +SSL_set0_security_ex_data 74 1_1_0d EXIST::FUNCTION: +SSL_in_init 75 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_default_verify_dir 76 1_1_0d EXIST::FUNCTION: +SSL_get0_param 77 1_1_0d EXIST::FUNCTION: +SSL_get_server_random 78 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_verify_depth 79 1_1_0d EXIST::FUNCTION: +SSL_CIPHER_description 80 1_1_0d EXIST::FUNCTION: +SSL_pending 81 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_next_protos_advertised_cb 82 1_1_0d EXIST::FUNCTION:NEXTPROTONEG +BIO_ssl_shutdown 83 1_1_0d EXIST::FUNCTION: +TLSv1_client_method 84 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,TLS1_METHOD +SSL_CTX_set_client_CA_list 85 1_1_0d EXIST::FUNCTION: +SSL_CONF_CTX_finish 86 1_1_0d EXIST::FUNCTION: +SSL_rstate_string_long 87 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_srp_cb_arg 88 1_1_0d EXIST::FUNCTION:SRP +SSL_CIPHER_find 89 1_1_0d EXIST::FUNCTION: +SSL_set_security_level 90 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_psk_client_callback 91 1_1_0d EXIST::FUNCTION:PSK +SSL_add_dir_cert_subjects_to_stack 92 1_1_0d EXIST::FUNCTION: +SSL_get_client_ciphers 93 1_1_0d EXIST::FUNCTION: +DTLSv1_2_method 94 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,DTLS1_2_METHOD +DTLSv1_method 95 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,DTLS1_METHOD +SSL_set_cipher_list 96 1_1_0d EXIST::FUNCTION: +SSL_CTX_add_client_CA 97 1_1_0d EXIST::FUNCTION: +SSL_is_init_finished 98 1_1_0d EXIST::FUNCTION: +PEM_write_SSL_SESSION 99 1_1_0d EXIST::FUNCTION:STDIO +SSL_SESSION_print 100 1_1_0d EXIST::FUNCTION: +SSL_CTX_get0_ctlog_store 101 1_1_0d EXIST::FUNCTION:CT +SSL_set_session_secret_cb 102 1_1_0d EXIST::FUNCTION: +SSL_set_cert_cb 103 1_1_0d EXIST::FUNCTION: +SSL_is_dtls 104 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_psk_server_callback 105 1_1_0d EXIST::FUNCTION:PSK +SSL_check_private_key 106 1_1_0d EXIST::FUNCTION: +SSL_SESSION_get0_id_context 107 1_1_0d EXIST::FUNCTION: +SSL_get_sigalgs 108 1_1_0d EXIST::FUNCTION: +SSL_CTX_dane_set_flags 109 1_1_0d EXIST::FUNCTION: +SSL_SESSION_get0_hostname 110 1_1_0d EXIST::FUNCTION: +SSL_COMP_get_name 111 1_1_0d EXIST::FUNCTION: +SSL_set_verify 112 1_1_0d EXIST::FUNCTION: +TLSv1_1_client_method 113 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,TLS1_1_METHOD +SSL_add_file_cert_subjects_to_stack 114 1_1_0d EXIST::FUNCTION: +SSL_set_security_callback 115 1_1_0d EXIST::FUNCTION: +SSL_get_servername_type 116 1_1_0d EXIST::FUNCTION: +SSL_get_peer_cert_chain 117 1_1_0d EXIST::FUNCTION: +SSL_COMP_get_id 118 1_1_0d EXIST::FUNCTION: +SSL_CTX_sess_set_new_cb 119 1_1_0d EXIST::FUNCTION: +SSL_get_verify_result 120 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_ct_validation_callback 121 1_1_0d EXIST::FUNCTION:CT +SSL_SESSION_set_timeout 122 1_1_0d EXIST::FUNCTION: +PEM_read_SSL_SESSION 123 1_1_0d EXIST::FUNCTION:STDIO +SSL_get_srp_userinfo 124 1_1_0d EXIST::FUNCTION:SRP +SSL_accept 125 1_1_0d EXIST::FUNCTION: +SSL_get_wfd 126 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_quiet_shutdown 127 1_1_0d EXIST::FUNCTION: +SSL_CTX_use_certificate_file 128 1_1_0d EXIST::FUNCTION: +TLSv1_2_server_method 129 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,TLS1_2_METHOD +SSL_set_session_id_context 130 1_1_0d EXIST::FUNCTION: +SSL_connect 131 1_1_0d EXIST::FUNCTION: +DTLSv1_server_method 132 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,DTLS1_METHOD +SSL_set_session_ticket_ext_cb 133 1_1_0d EXIST::FUNCTION: +DTLSv1_2_server_method 134 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,DTLS1_2_METHOD +SSL_COMP_set0_compression_methods 135 1_1_0d EXIST::FUNCTION: +TLS_server_method 136 1_1_0d EXIST::FUNCTION: +SSL_get0_security_ex_data 137 1_1_0d EXIST::FUNCTION: +SSL_get_version 138 1_1_0d EXIST::FUNCTION: +SSL_get_ciphers 139 1_1_0d EXIST::FUNCTION: +SSL_SESSION_get_protocol_version 140 1_1_0d EXIST::FUNCTION: +SSLv3_method 141 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,SSL3_METHOD +SSL_dup 142 1_1_0d EXIST::FUNCTION: +SSL_get1_supported_ciphers 143 1_1_0d EXIST::FUNCTION: +SSL_CONF_CTX_clear_flags 144 1_1_0d EXIST::FUNCTION: +SSL_CTX_sess_set_remove_cb 145 1_1_0d EXIST::FUNCTION: +SSL_set_shutdown 146 1_1_0d EXIST::FUNCTION: +SSL_use_PrivateKey 147 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_default_passwd_cb_userdata 148 1_1_0d EXIST::FUNCTION: +SSL_SESSION_get_master_key 149 1_1_0d EXIST::FUNCTION: +SSL_set_quiet_shutdown 150 1_1_0d EXIST::FUNCTION: +SSL_COMP_get0_name 151 1_1_0d EXIST::FUNCTION: +SSL_SESSION_set_time 152 1_1_0d EXIST::FUNCTION: +SSL_state_string 153 1_1_0d EXIST::FUNCTION: +SSL_set_fd 154 1_1_0d EXIST::FUNCTION:SOCK +SSL_get_current_cipher 155 1_1_0d EXIST::FUNCTION: +SSL_set_hostflags 156 1_1_0d EXIST::FUNCTION: +SSL_CTX_set1_param 157 1_1_0d EXIST::FUNCTION: +SSL_CTX_set0_ctlog_store 158 1_1_0d EXIST::FUNCTION:CT +SSL_CONF_CTX_set_ssl_ctx 159 1_1_0d EXIST::FUNCTION: +SSL_CIPHER_get_version 160 1_1_0d EXIST::FUNCTION: +DTLS_method 161 1_1_0d EXIST::FUNCTION: +SSL_get_shared_sigalgs 162 1_1_0d EXIST::FUNCTION: +GMTLS_method 163 1_1_0d EXIST::FUNCTION:GMTLS +SSL_use_RSAPrivateKey_ASN1 164 1_1_0d EXIST::FUNCTION:RSA +SSL_CIPHER_get_auth_nid 165 1_1_0d EXIST::FUNCTION: +SSL_CTX_sessions 166 1_1_0d EXIST::FUNCTION: +SSL_get_srp_username 167 1_1_0d EXIST::FUNCTION:SRP +SSL_session_reused 168 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_ssl_method 169 1_1_0d EXIST::FUNCTION: +SSL_CTX_dane_mtype_set 170 1_1_0d EXIST::FUNCTION: +SSL_CTX_add_server_custom_ext 171 1_1_0d EXIST::FUNCTION: +TLSv1_2_client_method 172 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,TLS1_2_METHOD +SSL_get_srtp_profiles 173 1_1_0d EXIST::FUNCTION:SRTP +SSL_get_all_async_fds 174 1_1_0d EXIST::FUNCTION: +SSL_CTX_sess_get_new_cb 175 1_1_0d EXIST::FUNCTION: +SSL_clear 176 1_1_0d EXIST::FUNCTION: +SSL_renegotiate_pending 177 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_srp_username_callback 178 1_1_0d EXIST::FUNCTION:SRP +SSL_set_session_ticket_ext 179 1_1_0d EXIST::FUNCTION: +SSL_SESSION_new 180 1_1_0d EXIST::FUNCTION: +SSL_SRP_CTX_init 181 1_1_0d EXIST::FUNCTION:SRP +SSL_SESSION_print_keylog 182 1_1_0d EXIST::FUNCTION: +SSL_set1_param 183 1_1_0d EXIST::FUNCTION: +TLSv1_2_method 184 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,TLS1_2_METHOD +SSL_CTX_get_client_cert_cb 185 1_1_0d EXIST::FUNCTION: +SSL_SESSION_print_fp 186 1_1_0d EXIST::FUNCTION:STDIO +TLS_method 187 1_1_0d EXIST::FUNCTION: +SSL_get_rfd 188 1_1_0d EXIST::FUNCTION: +SSL_set_read_ahead 189 1_1_0d EXIST::FUNCTION: +SSL_CTX_load_verify_locations 190 1_1_0d EXIST::FUNCTION: +SSL_extension_supported 191 1_1_0d EXIST::FUNCTION: +SSL_set_ssl_method 192 1_1_0d EXIST::FUNCTION: +SSL_get0_dane 193 1_1_0d EXIST::FUNCTION: +SSL_CTX_get0_param 194 1_1_0d EXIST::FUNCTION: +SSL_free 195 1_1_0d EXIST::FUNCTION: +TLSv1_server_method 196 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,TLS1_METHOD +SSL_CIPHER_get_digest_nid 197 1_1_0d EXIST::FUNCTION: +SSL_get_privatekey 198 1_1_0d EXIST::FUNCTION: +SSL_CIPHER_get_name 199 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_verify_mode 200 1_1_0d EXIST::FUNCTION: +BIO_ssl_copy_session_id 201 1_1_0d EXIST::FUNCTION: +SSL_write 202 1_1_0d EXIST::FUNCTION: +SSL_SESSION_free 203 1_1_0d EXIST::FUNCTION: +BIO_new_ssl 204 1_1_0d EXIST::FUNCTION: +SSL_get_changed_async_fds 205 1_1_0d EXIST::FUNCTION: +SSL_SESSION_get_ex_data 206 1_1_0d EXIST::FUNCTION: +SSL_get0_dane_authority 207 1_1_0d EXIST::FUNCTION: +SSL_SESSION_get_timeout 208 1_1_0d EXIST::FUNCTION: +SSL_CONF_cmd_argv 209 1_1_0d EXIST::FUNCTION: +SSL_ct_is_enabled 210 1_1_0d EXIST::FUNCTION:CT +SSL_get_rbio 211 1_1_0d EXIST::FUNCTION: +SSL_test_functions 212 1_1_0d EXIST::FUNCTION:UNIT_TEST +SSL_set_msg_callback 213 1_1_0d EXIST::FUNCTION: +SSL_in_before 214 1_1_0d EXIST::FUNCTION: +TLSv1_method 215 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,TLS1_METHOD +SSL_get_psk_identity 216 1_1_0d EXIST::FUNCTION:PSK +SSL_do_handshake 217 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_default_passwd_cb 218 1_1_0d EXIST::FUNCTION: +SSL_load_client_CA_file 219 1_1_0d EXIST::FUNCTION: +SSL_shutdown 220 1_1_0d EXIST::FUNCTION: +SSL_set0_wbio 221 1_1_0d EXIST::FUNCTION: +SSL_select_next_proto 222 1_1_0d EXIST::FUNCTION: +BIO_new_buffer_ssl_connect 223 1_1_0d EXIST::FUNCTION: +SSL_set_client_CA_list 224 1_1_0d EXIST::FUNCTION: +SSL_get_fd 225 1_1_0d EXIST::FUNCTION: +SSL_CIPHER_get_bits 226 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_session_id_context 227 1_1_0d EXIST::FUNCTION: +SSL_set_tlsext_use_srtp 228 1_1_0d EXIST::FUNCTION:SRTP +SSL_get_selected_srtp_profile 229 1_1_0d EXIST::FUNCTION:SRTP +SSL_set_tmp_dh_callback 230 1_1_0d EXIST::FUNCTION:DH +SSL_CTX_add_session 231 1_1_0d EXIST::FUNCTION: +SSL_get0_peername 232 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_default_passwd_cb_userdata 233 1_1_0d EXIST::FUNCTION: +SSL_CIPHER_is_aead 234 1_1_0d EXIST::FUNCTION: +SSL_get_security_level 235 1_1_0d EXIST::FUNCTION: +SSL_config 236 1_1_0d EXIST::FUNCTION: +SSL_CTX_SRP_CTX_free 237 1_1_0d EXIST::FUNCTION:SRP +SSL_dane_tlsa_add 238 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_ex_data 239 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_purpose 240 1_1_0d EXIST::FUNCTION: +SSL_SESSION_has_ticket 241 1_1_0d EXIST::FUNCTION: +SSL_get_error 242 1_1_0d EXIST::FUNCTION: +SSL_has_matching_session_id 243 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_srp_username 244 1_1_0d EXIST::FUNCTION:SRP +SSL_CTX_new 245 1_1_0d EXIST::FUNCTION: +SSL_ctrl 246 1_1_0d EXIST::FUNCTION: +SSL_set_purpose 247 1_1_0d EXIST::FUNCTION: +BIO_new_ssl_connect 248 1_1_0d EXIST::FUNCTION: +SSL_get_peer_certificate 249 1_1_0d EXIST::FUNCTION: +SSL_set_ex_data 250 1_1_0d EXIST::FUNCTION: +SSL_get_psk_identity_hint 251 1_1_0d EXIST::FUNCTION:PSK +SSL_CONF_cmd_value_type 252 1_1_0d EXIST::FUNCTION: +BIO_f_ssl 253 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_timeout 254 1_1_0d EXIST::FUNCTION: +SSL_use_certificate 255 1_1_0d EXIST::FUNCTION: +SSL_SESSION_get0_peer 256 1_1_0d EXIST::FUNCTION: +SSL_get_ex_data_X509_STORE_CTX_idx 257 1_1_0d EXIST::FUNCTION: +SSL_dane_set_flags 258 1_1_0d EXIST::FUNCTION: +SSL_set_accept_state 259 1_1_0d EXIST::FUNCTION: +SSL_set_session 260 1_1_0d EXIST::FUNCTION: +SSL_check_chain 261 1_1_0d EXIST::FUNCTION: +SSL_state_string_long 262 1_1_0d EXIST::FUNCTION: +SSL_get_ssl_method 263 1_1_0d EXIST::FUNCTION: +SSL_get_quiet_shutdown 264 1_1_0d EXIST::FUNCTION: +SSL_CIPHER_standard_name 265 1_1_0d EXIST::FUNCTION:SSL_TRACE +SSL_get_srp_N 266 1_1_0d EXIST::FUNCTION:SRP +SSL_client_version 267 1_1_0d EXIST::FUNCTION: +SSL_get_default_passwd_cb_userdata 268 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_options 269 1_1_0d EXIST::FUNCTION: +SSL_get1_session 270 1_1_0d EXIST::FUNCTION: +SSL_use_certificate_ASN1 271 1_1_0d EXIST::FUNCTION: +SSL_CTX_has_client_custom_ext 272 1_1_0d EXIST::FUNCTION: +SSL_trace 273 1_1_0d EXIST::FUNCTION:SSL_TRACE +SSL_set_rfd 274 1_1_0d EXIST::FUNCTION:SOCK +SSL_CTX_set_cert_verify_callback 275 1_1_0d EXIST::FUNCTION: +SSL_CTX_use_PrivateKey_file 276 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_info_callback 277 1_1_0d EXIST::FUNCTION: +SSL_set_verify_result 278 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_srp_strength 279 1_1_0d EXIST::FUNCTION:SRP +SSL_CTX_use_PrivateKey_ASN1 280 1_1_0d EXIST::FUNCTION: +i2d_SSL_SESSION 281 1_1_0d EXIST::FUNCTION: +SSL_set_srp_server_param_pw 282 1_1_0d EXIST::FUNCTION:SRP +SSL_set_default_passwd_cb_userdata 283 1_1_0d EXIST::FUNCTION: +SSL_CONF_CTX_set_flags 284 1_1_0d EXIST::FUNCTION: +SSL_is_server 285 1_1_0d EXIST::FUNCTION: +SSL_get0_verified_chain 286 1_1_0d EXIST::FUNCTION: +SSL_up_ref 287 1_1_0d EXIST::FUNCTION: +SSL_SESSION_get_time 288 1_1_0d EXIST::FUNCTION: +SSL_get_verify_depth 289 1_1_0d EXIST::FUNCTION: +SSL_get_ex_data 290 1_1_0d EXIST::FUNCTION: +SSL_CTX_use_serverinfo 291 1_1_0d EXIST::FUNCTION: +SSL_read 292 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_next_proto_select_cb 293 1_1_0d EXIST::FUNCTION:NEXTPROTONEG +SSL_set_generate_session_id 294 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_srp_client_pwd_callback 295 1_1_0d EXIST::FUNCTION:SRP +SSL_CTX_set_timeout 296 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_cipher_list 297 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_default_ctlog_list_file 298 1_1_0d EXIST::FUNCTION:CT +SSL_CTX_set_cookie_verify_cb 299 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_security_level 300 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_tmp_dh_callback 301 1_1_0d EXIST::FUNCTION:DH +SSL_new 302 1_1_0d EXIST::FUNCTION: +SSL_CTX_set0_security_ex_data 303 1_1_0d EXIST::FUNCTION: +PEM_read_bio_SSL_SESSION 304 1_1_0d EXIST::FUNCTION: +SSL_SESSION_get_ticket_lifetime_hint 305 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_not_resumable_session_callback 306 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_verify_depth 307 1_1_0d EXIST::FUNCTION: +SSL_CTX_SRP_CTX_init 308 1_1_0d EXIST::FUNCTION:SRP +SSL_callback_ctrl 309 1_1_0d EXIST::FUNCTION: +SSL_use_certificate_file 310 1_1_0d EXIST::FUNCTION: +SSL_SESSION_up_ref 311 1_1_0d EXIST::FUNCTION: +SSL_set_psk_server_callback 312 1_1_0d EXIST::FUNCTION:PSK +SSL_CTX_set_cert_cb 313 1_1_0d EXIST::FUNCTION: +SSL_certs_clear 314 1_1_0d EXIST::FUNCTION: +SSL_CTX_get0_privatekey 315 1_1_0d EXIST::FUNCTION: +SSL_set_wfd 316 1_1_0d EXIST::FUNCTION:SOCK +SSL_CTX_set_srp_verify_param_callback 317 1_1_0d EXIST::FUNCTION:SRP +SSL_get_peer_finished 318 1_1_0d EXIST::FUNCTION: +SSL_CONF_cmd 319 1_1_0d EXIST::FUNCTION: +SSL_alert_type_string 320 1_1_0d EXIST::FUNCTION: +SSL_get0_dane_tlsa 321 1_1_0d EXIST::FUNCTION: +PEM_write_bio_SSL_SESSION 322 1_1_0d EXIST::FUNCTION: +SSL_COMP_add_compression_method 323 1_1_0d EXIST::FUNCTION: +SSL_get_shared_ciphers 324 1_1_0d EXIST::FUNCTION: +ERR_load_SSL_strings 325 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_default_verify_file 326 1_1_0d EXIST::FUNCTION: +SSL_CTX_sess_get_get_cb 327 1_1_0d EXIST::FUNCTION: +SSL_use_certificate_chain_file 328 1_1_0d EXIST::FUNCTION: +SSL_CTX_use_certificate_ASN1 329 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_security_callback 330 1_1_0d EXIST::FUNCTION: +SSL_CTX_remove_session 331 1_1_0d EXIST::FUNCTION: +SSL_get_default_timeout 332 1_1_0d EXIST::FUNCTION: +SSL_set_srp_server_param 333 1_1_0d EXIST::FUNCTION:SRP +SSL_SESSION_set1_id_context 334 1_1_0d EXIST::FUNCTION: +SSL_CONF_CTX_free 335 1_1_0d EXIST::FUNCTION: +SSL_set_alpn_protos 336 1_1_0d EXIST::FUNCTION: +SSL_SESSION_get_compress_id 337 1_1_0d EXIST::FUNCTION: +TLSv1_1_server_method 338 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,TLS1_1_METHOD +SSL_CONF_CTX_set_ssl 339 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_alpn_protos 340 1_1_0d EXIST::FUNCTION: +SSL_CTX_callback_ctrl 341 1_1_0d EXIST::FUNCTION: +SSL_CTX_config 342 1_1_0d EXIST::FUNCTION: +SSL_renegotiate_abbreviated 343 1_1_0d EXIST::FUNCTION: +SSL_CONF_CTX_new 344 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_verify_callback 345 1_1_0d EXIST::FUNCTION: +SSL_CTX_use_serverinfo_file 346 1_1_0d EXIST::FUNCTION: +SSL_set_bio 347 1_1_0d EXIST::FUNCTION: +SSL_peek 348 1_1_0d EXIST::FUNCTION: +SSL_COMP_get_compression_methods 349 1_1_0d EXIST::FUNCTION: +SSL_SRP_CTX_free 350 1_1_0d EXIST::FUNCTION:SRP +SSL_get_wbio 351 1_1_0d EXIST::FUNCTION: +SSL_use_PrivateKey_file 352 1_1_0d EXIST::FUNCTION: +SSL_SESSION_get0_ticket 353 1_1_0d EXIST::FUNCTION: +SSL_use_RSAPrivateKey 354 1_1_0d EXIST::FUNCTION:RSA +SSL_CTX_ctrl 355 1_1_0d EXIST::FUNCTION: +SSL_set_ct_validation_callback 356 1_1_0d EXIST::FUNCTION:CT +SSL_set_not_resumable_session_callback 357 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_security_level 358 1_1_0d EXIST::FUNCTION: +SSL_copy_session_id 359 1_1_0d EXIST::FUNCTION: +SSL_CIPHER_get_cipher_nid 360 1_1_0d EXIST::FUNCTION: +SSL_get_finished 361 1_1_0d EXIST::FUNCTION: +SSL_clear_options 362 1_1_0d EXIST::FUNCTION: +SSL_enable_ct 363 1_1_0d EXIST::FUNCTION:CT +SSL_CTX_set_tlsext_use_srtp 364 1_1_0d EXIST::FUNCTION:SRTP +SSL_get_session 365 1_1_0d EXIST::FUNCTION: +SSL_set1_host 366 1_1_0d EXIST::FUNCTION: +SSL_CTX_check_private_key 367 1_1_0d EXIST::FUNCTION: +SSL_SESSION_set_ex_data 368 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_security_callback 369 1_1_0d EXIST::FUNCTION: +SSL_CTX_dane_enable 370 1_1_0d EXIST::FUNCTION: +SSL_get_certificate 371 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_client_CA_list 372 1_1_0d EXIST::FUNCTION: +SSLv3_client_method 373 1_1_0d EXIST::FUNCTION:DEPRECATEDIN_1_1_0,SSL3_METHOD +SSL_get_srp_g 374 1_1_0d EXIST::FUNCTION:SRP +SSL_CTX_use_RSAPrivateKey_ASN1 375 1_1_0d EXIST::FUNCTION:RSA +SSL_alert_desc_string_long 376 1_1_0d EXIST::FUNCTION: +SSL_SESSION_get_id 377 1_1_0d EXIST::FUNCTION: +SSL_CTX_add_client_custom_ext 378 1_1_0d EXIST::FUNCTION: +SSL_get_options 379 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_options 380 1_1_0d EXIST::FUNCTION: +SSL_renegotiate 381 1_1_0d EXIST::FUNCTION: +SSL_use_RSAPrivateKey_file 382 1_1_0d EXIST::FUNCTION:RSA +SSL_CONF_CTX_set1_prefix 383 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_srp_password 384 1_1_0d EXIST::FUNCTION:SRP +SSL_add_client_CA 385 1_1_0d EXIST::FUNCTION: +SSL_set_default_read_buffer_len 386 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_info_callback 387 1_1_0d EXIST::FUNCTION: +SSL_set_psk_client_callback 388 1_1_0d EXIST::FUNCTION:PSK +SSL_CTX_set_default_passwd_cb 389 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_ssl_version 390 1_1_0d EXIST::FUNCTION: +SSL_get_verify_mode 391 1_1_0d EXIST::FUNCTION: +DTLS_server_method 392 1_1_0d EXIST::FUNCTION: +SSL_dane_clear_flags 393 1_1_0d EXIST::FUNCTION: +SSL_CTX_use_PrivateKey 394 1_1_0d EXIST::FUNCTION: +SSL_CTX_get_cert_store 395 1_1_0d EXIST::FUNCTION: +SSL_set_trust 396 1_1_0d EXIST::FUNCTION: +SSL_CTX_use_RSAPrivateKey 397 1_1_0d EXIST::FUNCTION:RSA +SSL_get_SSL_CTX 398 1_1_0d EXIST::FUNCTION: +SSL_want 399 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_ctlog_list_file 400 1_1_0d EXIST::FUNCTION:CT +SSL_CTX_sess_get_remove_cb 401 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_generate_session_id 402 1_1_0d EXIST::FUNCTION: +SSL_CTX_use_psk_identity_hint 403 1_1_0d EXIST::FUNCTION:PSK +SSL_get_read_ahead 404 1_1_0d EXIST::FUNCTION: +SSL_CTX_set_msg_callback 405 1_1_0d EXIST::FUNCTION: +SSL_export_keying_material 406 1_1_0d EXIST::FUNCTION: +SSL_get0_next_proto_negotiated 407 1_1_0d EXIST::FUNCTION:NEXTPROTONEG +GMTLS_server_method 408 1_1_0d EXIST::FUNCTION:GMTLS +SSL_version 409 1_1_0d EXIST::FUNCTION: +SSL_CTX_dane_clear_flags 410 1_1_0d EXIST::FUNCTION: +SSL_has_pending 411 1_1_0d EXIST::FUNCTION: diff --git a/util/mkdef.pl b/util/mkdef.pl index ba63551e..f0e939bd 100755 --- a/util/mkdef.pl +++ b/util/mkdef.pl @@ -133,8 +133,8 @@ my @known_algorithms = ( "RC2", "RC4", "RC5", "IDEA", "DES", "BF", # APPLINK (win build feature?) "APPLINK", # GmSSL - "SM3", "SMS4", "KDF2", "ECIES", "FFX", "SM2", "PAILLIER", "OTP", "GMAPI", "EC2", - "BFIBE", "BB1IBE", "SM9", "SDF", "SKF", "ZUC", "SERPENT", "SPECK", "BASE58", + "SM3", "SMS4", "KDF2", "ECIES", "SM2", "PAILLIER", "OTP", "GMAPI", + "SM9", "SDF", "SKF", "ZUC", "BASE58", "GMTLS", "GMTLS_METHOD", "CA", "MACRO", "ASYNC" ); @@ -312,23 +312,13 @@ $crypto.=" include/openssl/async.h"; $crypto.=" include/openssl/ct.h"; $crypto.=" include/openssl/kdf.h"; # GmSSL -$crypto.=" include/openssl/bb1ibe.h"; -$crypto.=" include/openssl/bfibe.h"; -$crypto.=" include/openssl/bn_gfp2.h"; -$crypto.=" include/openssl/bn_hash.h"; -$crypto.=" include/openssl/bn_solinas.h"; -$crypto.=" include/openssl/ec_hash.h"; -$crypto.=" include/openssl/ec_type1.h"; $crypto.=" include/openssl/ecies.h"; -$crypto.=" include/openssl/ffx.h"; -$crypto.=" include/openssl/fppoint.h"; $crypto.=" include/openssl/gmapi.h"; $crypto.=" include/openssl/gmsdf.h"; $crypto.=" include/openssl/gmskf.h"; $crypto.=" include/openssl/kdf2.h"; $crypto.=" include/openssl/otp.h"; $crypto.=" include/openssl/paillier.h"; -$crypto.=" include/openssl/saf.h"; $crypto.=" include/openssl/sdf.h"; $crypto.=" include/openssl/sgd.h"; $crypto.=" include/openssl/skf.h"; @@ -339,8 +329,6 @@ $crypto.=" include/openssl/sm9.h"; $crypto.=" include/openssl/sms4.h"; $crypto.=" include/openssl/ssf33.h"; $crypto.=" include/openssl/zuc.h"; -$crypto.=" include/openssl/serpent.h"; -$crypto.=" include/openssl/speck.h"; my $symhacks="include/openssl/symhacks.h";