mirror of
https://github.com/guanzhi/GmSSL.git
synced 2026-08-10 16:03:48 +08:00
modify-sm9
This commit is contained in:
32
crypto/sm9/sm9_params.c
Normal file → Executable file
32
crypto/sm9/sm9_params.c
Normal file → Executable file
@@ -62,6 +62,7 @@
|
||||
#define BN_SM9_BN256_TOP (256+BN_BITS2-1)/BN_BITS2
|
||||
#define BN_SM9_LOOP_TOP (66+BN_BITS2-1)/BN_BITS2
|
||||
#define BN_SM9_FINAL_EXPO_TOP (2816+BN_BITS2-1)/BN_BITS2
|
||||
#define BN_SM9_FAST_FINAL_EXPO_P3_TOP (768+BN_BITS2-1)/BN_BITS2
|
||||
|
||||
#if BN_BITS2 == 64
|
||||
static const BN_ULONG _sm9bn256v1_prime[BN_SM9_BN256_TOP] = {
|
||||
@@ -122,6 +123,15 @@ static const BN_ULONG _sm9bn256v1_final_expo[BN_SM9_FINAL_EXPO_TOP] = {
|
||||
0x1A09A6AE43ADE454ULL, 0x061835E8B1259499ULL,
|
||||
};
|
||||
|
||||
static const BN_ULONG _sm9bn256v1_fast_final_expo_p3[BN_SM9_FAST_FINAL_EXPO_P3_TOP] = {
|
||||
0xA9B2ADA593152855ULL, 0x44BF9D0FA74DDFB7ULL,
|
||||
0x83687EE0C6D9188CULL, 0xE0D49DE3AA8A4748ULL,
|
||||
0x0DA3D71BCDB13FE5ULL, 0xA5782C82FDB6B0A1ULL,
|
||||
0x7C0CA02D9B0D8649ULL, 0xBA4CADE09029E471ULL,
|
||||
0xDC53E586930846F1ULL, 0xD62CD8FB7B497A0AULL,
|
||||
0xF12FCAD3B31FE2B0ULL, 0x5C5E452404034E2AULL,
|
||||
};
|
||||
|
||||
#elif BN_BITS2 == 32
|
||||
static const BN_ULONG _sm9bn256v1_prime[BN_SM9_BN256_TOP] = {
|
||||
0xE351457D, 0xE56F9B27, 0x1A7AEEDB, 0x21F2934B,
|
||||
@@ -181,6 +191,15 @@ static const BN_ULONG _sm9bn256v1_final_expo[BN_SM9_FINAL_EXPO_TOP] = {
|
||||
0x43ADE454, 0x1A09A6AE, 0xB1259499, 0x061835E8,
|
||||
};
|
||||
|
||||
static const BN_ULONG _sm9bn256v1_fast_final_expo_p3[BN_SM9_FAST_FINAL_EXPO_P3_TOP] = {
|
||||
0xA9B2ADA5, 0x93152855, 0x44BF9D0F, 0xA74DDFB7,
|
||||
0x83687EE0, 0xC6D9188C, 0xE0D49DE3, 0xAA8A4748,
|
||||
0x0DA3D71B, 0xCDB13FE5, 0xA5782C82, 0xFDB6B0A1,
|
||||
0x7C0CA02D, 0x9B0D8649, 0xBA4CADE0, 0x9029E471,
|
||||
0xDC53E586, 0x930846F1, 0xD62CD8FB, 0x7B497A0A,
|
||||
0xF12FCAD3, 0xB31FE2B0, 0x5C5E4524, 0x04034E2A,
|
||||
};
|
||||
|
||||
#else
|
||||
# error "unsupported BN_BITS2"
|
||||
#endif
|
||||
@@ -225,6 +244,14 @@ static const BIGNUM _bignum_sm9bn256v1_final_expo = {
|
||||
BN_FLG_STATIC_DATA
|
||||
};
|
||||
|
||||
static const BIGNUM _bignum_sm9bn256v1_fast_final_expo_p3 = {
|
||||
(BN_ULONG *)_sm9bn256v1_fast_final_expo_p3,
|
||||
BN_SM9_FAST_FINAL_EXPO_P3_TOP,
|
||||
BN_SM9_FAST_FINAL_EXPO_P3_TOP,
|
||||
0,
|
||||
BN_FLG_STATIC_DATA
|
||||
};
|
||||
|
||||
static const BIGNUM _bignum_sm9bn256v1_x20 = {
|
||||
(BN_ULONG *)_sm9bn256v1_x2[0],
|
||||
BN_SM9_BN256_TOP,
|
||||
@@ -301,3 +328,8 @@ const BIGNUM *SM9_get0_final_exponent(void)
|
||||
{
|
||||
return &_bignum_sm9bn256v1_final_expo;
|
||||
}
|
||||
|
||||
const BIGNUM *SM9_get0_fast_final_exponent(void)
|
||||
{
|
||||
return &_bignum_sm9bn256v1_fast_final_expo_p3;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user