mirror of
https://github.com/bitcoin/bips.git
synced 2025-03-04 11:08:05 +01:00
BIP 341: add missing conversions between bytes and int
Convert seckey0 to bytes at the start of the function. Return the output as bytes for consistency with the rest of the code.
This commit is contained in:
parent
52f68fecd8
commit
3cdfe1bd16
1 changed files with 4 additions and 3 deletions
|
@ -186,12 +186,13 @@ def taproot_tweak_pubkey(pubkey, h):
|
||||||
return 0 if has_even_y(Q) else 1, bytes_from_int(x(Q))
|
return 0 if has_even_y(Q) else 1, bytes_from_int(x(Q))
|
||||||
|
|
||||||
def taproot_tweak_seckey(seckey0, h):
|
def taproot_tweak_seckey(seckey0, h):
|
||||||
P = point_mul(G, int_from_bytes(seckey0))
|
seckey0 = int_from_bytes(seckey0)
|
||||||
|
P = point_mul(G, seckey0)
|
||||||
seckey = seckey0 if has_even_y(P) else SECP256K1_ORDER - seckey0
|
seckey = seckey0 if has_even_y(P) else SECP256K1_ORDER - seckey0
|
||||||
t = int_from_bytes(tagged_hash("TapTweak", bytes_from_int(x(P)) + h))
|
t = int_from_bytes(tagged_hash("TapTweak", bytes_from_int(x(P)) + h))
|
||||||
if t >= SECP256K1_ORDER:
|
if t >= SECP256K1_ORDER:
|
||||||
raise ValueError
|
raise ValueError
|
||||||
return (seckey + t) % SECP256K1_ORDER
|
return bytes_from_int((seckey + t) % SECP256K1_ORDER)
|
||||||
</source>
|
</source>
|
||||||
|
|
||||||
The following function, <code>taproot_output_script</code>, returns a byte array with the scriptPubKey (see [[bip-0141.mediawiki|BIP141]]).
|
The following function, <code>taproot_output_script</code>, returns a byte array with the scriptPubKey (see [[bip-0141.mediawiki|BIP141]]).
|
||||||
|
|
Loading…
Add table
Reference in a new issue