@@ -33,46 +33,46 @@ static secp256k1_context* secp256k1_context_sign = nullptr;
33
33
*
34
34
* out32 must point to an output buffer of length at least 32 bytes.
35
35
*/
36
- static int ec_privkey_import_der (const secp256k1_context* ctx, unsigned char *out32, const unsigned char *privkey , size_t privkeylen ) {
37
- const unsigned char *end = privkey + privkeylen ;
36
+ static int ec_seckey_import_der (const secp256k1_context* ctx, unsigned char *out32, const unsigned char *seckey , size_t seckeylen ) {
37
+ const unsigned char *end = seckey + seckeylen ;
38
38
memset (out32, 0 , 32 );
39
39
/* sequence header */
40
- if (end - privkey < 1 || *privkey != 0x30u ) {
40
+ if (end - seckey < 1 || *seckey != 0x30u ) {
41
41
return 0 ;
42
42
}
43
- privkey ++;
43
+ seckey ++;
44
44
/* sequence length constructor */
45
- if (end - privkey < 1 || !(*privkey & 0x80u )) {
45
+ if (end - seckey < 1 || !(*seckey & 0x80u )) {
46
46
return 0 ;
47
47
}
48
- ptrdiff_t lenb = *privkey & ~0x80u ; privkey ++;
48
+ ptrdiff_t lenb = *seckey & ~0x80u ; seckey ++;
49
49
if (lenb < 1 || lenb > 2 ) {
50
50
return 0 ;
51
51
}
52
- if (end - privkey < lenb) {
52
+ if (end - seckey < lenb) {
53
53
return 0 ;
54
54
}
55
55
/* sequence length */
56
- ptrdiff_t len = privkey [lenb-1 ] | (lenb > 1 ? privkey [lenb-2 ] << 8 : 0u );
57
- privkey += lenb;
58
- if (end - privkey < len) {
56
+ ptrdiff_t len = seckey [lenb-1 ] | (lenb > 1 ? seckey [lenb-2 ] << 8 : 0u );
57
+ seckey += lenb;
58
+ if (end - seckey < len) {
59
59
return 0 ;
60
60
}
61
61
/* sequence element 0: version number (=1) */
62
- if (end - privkey < 3 || privkey [0 ] != 0x02u || privkey [1 ] != 0x01u || privkey [2 ] != 0x01u ) {
62
+ if (end - seckey < 3 || seckey [0 ] != 0x02u || seckey [1 ] != 0x01u || seckey [2 ] != 0x01u ) {
63
63
return 0 ;
64
64
}
65
- privkey += 3 ;
65
+ seckey += 3 ;
66
66
/* sequence element 1: octet string, up to 32 bytes */
67
- if (end - privkey < 2 || privkey [0 ] != 0x04u ) {
67
+ if (end - seckey < 2 || seckey [0 ] != 0x04u ) {
68
68
return 0 ;
69
69
}
70
- ptrdiff_t oslen = privkey [1 ];
71
- privkey += 2 ;
72
- if (oslen > 32 || end - privkey < oslen) {
70
+ ptrdiff_t oslen = seckey [1 ];
71
+ seckey += 2 ;
72
+ if (oslen > 32 || end - seckey < oslen) {
73
73
return 0 ;
74
74
}
75
- memcpy (out32 + (32 - oslen), privkey , oslen);
75
+ memcpy (out32 + (32 - oslen), seckey , oslen);
76
76
if (!secp256k1_ec_seckey_verify (ctx, out32)) {
77
77
memset (out32, 0 , 32 );
78
78
return 0 ;
@@ -85,17 +85,17 @@ static int ec_privkey_import_der(const secp256k1_context* ctx, unsigned char *ou
85
85
* <http://www.secg.org/sec1-v2.pdf>. The optional parameters and publicKey fields are
86
86
* included.
87
87
*
88
- * privkey must point to an output buffer of length at least CKey::SIZE bytes.
89
- * privkeylen must initially be set to the size of the privkey buffer. Upon return it
88
+ * seckey must point to an output buffer of length at least CKey::SIZE bytes.
89
+ * seckeylen must initially be set to the size of the seckey buffer. Upon return it
90
90
* will be set to the number of bytes used in the buffer.
91
91
* key32 must point to a 32-byte raw private key.
92
92
*/
93
- static int ec_privkey_export_der (const secp256k1_context *ctx, unsigned char *privkey , size_t *privkeylen , const unsigned char *key32, bool compressed) {
94
- assert (*privkeylen >= CKey::SIZE);
93
+ static int ec_seckey_export_der (const secp256k1_context *ctx, unsigned char *seckey , size_t *seckeylen , const unsigned char *key32, bool compressed) {
94
+ assert (*seckeylen >= CKey::SIZE);
95
95
secp256k1_pubkey pubkey;
96
96
size_t pubkeylen = 0 ;
97
97
if (!secp256k1_ec_pubkey_create (ctx, &pubkey, key32)) {
98
- *privkeylen = 0 ;
98
+ *seckeylen = 0 ;
99
99
return 0 ;
100
100
}
101
101
if (compressed) {
@@ -113,15 +113,15 @@ static int ec_privkey_export_der(const secp256k1_context *ctx, unsigned char *pr
113
113
0xFF ,0xFF ,0xFF ,0xFF ,0xFE ,0xBA ,0xAE ,0xDC ,0xE6 ,0xAF ,0x48 ,0xA0 ,0x3B ,0xBF ,0xD2 ,0x5E ,
114
114
0x8C ,0xD0 ,0x36 ,0x41 ,0x41 ,0x02 ,0x01 ,0x01 ,0xA1 ,0x24 ,0x03 ,0x22 ,0x00
115
115
};
116
- unsigned char *ptr = privkey ;
116
+ unsigned char *ptr = seckey ;
117
117
memcpy (ptr, begin, sizeof (begin)); ptr += sizeof (begin);
118
118
memcpy (ptr, key32, 32 ); ptr += 32 ;
119
119
memcpy (ptr, middle, sizeof (middle)); ptr += sizeof (middle);
120
120
pubkeylen = CPubKey::COMPRESSED_SIZE;
121
121
secp256k1_ec_pubkey_serialize (ctx, ptr, &pubkeylen, &pubkey, SECP256K1_EC_COMPRESSED);
122
122
ptr += pubkeylen;
123
- *privkeylen = ptr - privkey ;
124
- assert (*privkeylen == CKey::COMPRESSED_SIZE);
123
+ *seckeylen = ptr - seckey ;
124
+ assert (*seckeylen == CKey::COMPRESSED_SIZE);
125
125
} else {
126
126
static const unsigned char begin[] = {
127
127
0x30 ,0x82 ,0x01 ,0x13 ,0x02 ,0x01 ,0x01 ,0x04 ,0x20
@@ -139,15 +139,15 @@ static int ec_privkey_export_der(const secp256k1_context *ctx, unsigned char *pr
139
139
0xFF ,0xFF ,0xFF ,0xFF ,0xFE ,0xBA ,0xAE ,0xDC ,0xE6 ,0xAF ,0x48 ,0xA0 ,0x3B ,0xBF ,0xD2 ,0x5E ,
140
140
0x8C ,0xD0 ,0x36 ,0x41 ,0x41 ,0x02 ,0x01 ,0x01 ,0xA1 ,0x44 ,0x03 ,0x42 ,0x00
141
141
};
142
- unsigned char *ptr = privkey ;
142
+ unsigned char *ptr = seckey ;
143
143
memcpy (ptr, begin, sizeof (begin)); ptr += sizeof (begin);
144
144
memcpy (ptr, key32, 32 ); ptr += 32 ;
145
145
memcpy (ptr, middle, sizeof (middle)); ptr += sizeof (middle);
146
146
pubkeylen = CPubKey::SIZE;
147
147
secp256k1_ec_pubkey_serialize (ctx, ptr, &pubkeylen, &pubkey, SECP256K1_EC_UNCOMPRESSED);
148
148
ptr += pubkeylen;
149
- *privkeylen = ptr - privkey ;
150
- assert (*privkeylen == CKey::SIZE);
149
+ *seckeylen = ptr - seckey ;
150
+ assert (*seckeylen == CKey::SIZE);
151
151
}
152
152
return 1 ;
153
153
}
@@ -167,20 +167,20 @@ void CKey::MakeNewKey(bool fCompressedIn) {
167
167
bool CKey::Negate ()
168
168
{
169
169
assert (fValid );
170
- return secp256k1_ec_privkey_negate (secp256k1_context_sign, keydata.data ());
170
+ return secp256k1_ec_seckey_negate (secp256k1_context_sign, keydata.data ());
171
171
}
172
172
173
173
CPrivKey CKey::GetPrivKey () const {
174
174
assert (fValid );
175
- CPrivKey privkey ;
175
+ CPrivKey seckey ;
176
176
int ret;
177
- size_t privkeylen ;
178
- privkey .resize (SIZE);
179
- privkeylen = SIZE;
180
- ret = ec_privkey_export_der (secp256k1_context_sign, privkey .data (), &privkeylen , begin (), fCompressed );
177
+ size_t seckeylen ;
178
+ seckey .resize (SIZE);
179
+ seckeylen = SIZE;
180
+ ret = ec_seckey_export_der (secp256k1_context_sign, seckey .data (), &seckeylen , begin (), fCompressed );
181
181
assert (ret);
182
- privkey .resize (privkeylen );
183
- return privkey ;
182
+ seckey .resize (seckeylen );
183
+ return seckey ;
184
184
}
185
185
186
186
CPubKey CKey::GetPubKey () const {
@@ -260,8 +260,8 @@ bool CKey::SignCompact(const uint256 &hash, std::vector<unsigned char>& vchSig)
260
260
return true ;
261
261
}
262
262
263
- bool CKey::Load (const CPrivKey &privkey , const CPubKey &vchPubKey, bool fSkipCheck =false ) {
264
- if (!ec_privkey_import_der (secp256k1_context_sign, (unsigned char *)begin (), privkey .data (), privkey .size ()))
263
+ bool CKey::Load (const CPrivKey &seckey , const CPubKey &vchPubKey, bool fSkipCheck =false ) {
264
+ if (!ec_seckey_import_der (secp256k1_context_sign, (unsigned char *)begin (), seckey .data (), seckey .size ()))
265
265
return false ;
266
266
fCompressed = vchPubKey.IsCompressed ();
267
267
fValid = true ;
@@ -286,7 +286,7 @@ bool CKey::Derive(CKey& keyChild, ChainCode &ccChild, unsigned int nChild, const
286
286
}
287
287
memcpy (ccChild.begin (), vout.data ()+32 , 32 );
288
288
memcpy ((unsigned char *)keyChild.begin (), begin (), 32 );
289
- bool ret = secp256k1_ec_privkey_tweak_add (secp256k1_context_sign, (unsigned char *)keyChild.begin (), vout.data ());
289
+ bool ret = secp256k1_ec_seckey_tweak_add (secp256k1_context_sign, (unsigned char *)keyChild.begin (), vout.data ());
290
290
keyChild.fCompressed = true ;
291
291
keyChild.fValid = ret;
292
292
return ret;
0 commit comments