123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- #include <limits.h>
- #include <openssl/ec.h>
- #include <openssl/bn.h>
- #include <openssl/rand.h>
- #include <openssl/err.h>
- #include <openssl/ecdsa.h>
- #include <openssl/ecdh.h>
- #include <openssl/ssl.h>
- #define NID_X9_62_prime_field 406
- #define ABORT do { \
- fflush(stdout); \
- fprintf(stderr, "%s:%d: ABORT\n", __FILE__, __LINE__); \
- ERR_print_errors_fp(stderr); \
- exit(1); \
- } while (0)
- int sm2_init();
- EC_KEY* sm2_generate_key();
- int sm2_exchange_key(EC_KEY*B,EC_KEY*RB,EC_POINT*PA,EC_POINT*RA,unsigned char*ZA,unsigned char *ZB,unsigned char *outkey,size_t keylen);
- int sm2_end();
- int ecKey2str(EC_KEY*k,unsigned char*pubkey);
- int pubkey2ecPoint(char*pubkey,EC_POINT**k);
- int sm2_decrypt(const char*decdata,const char*dB,char*M);
- /*
- 旧国密密文格式解密
- */
- int sm2_decrypt_new(const char*decdata,const char*dB,char*M);
- /*
- 新国密密文格式解密
- */
- int sm2_encrypt(char*random_k,char*ecpoint_PBx,char*ecpoint_PBy,const char *M,unsigned char mdatalen,char*encdata);
- /*
- 旧国密密文格式加密
- */
- int sm2_encrypt_new(char*random_k,char*ecpoint_PBx,char*ecpoint_PBy,const char *M,unsigned char mdatalen,char*encdata);
- /*
- 新国密密文格式加密
- */
|