From d112f5b0352f404e2cfebd6f3d9bf030c6894917 Mon Sep 17 00:00:00 2001 From: Jonas Nick Date: Mon, 30 Sep 2019 11:15:23 +0000 Subject: Replace taproot_tweak_pubkey assertion with exception and add it to taproot_tweak_seckey too --- bip-taproot.mediawiki | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'bip-taproot.mediawiki') diff --git a/bip-taproot.mediawiki b/bip-taproot.mediawiki index 8abf6e1..ba54689 100644 --- a/bip-taproot.mediawiki +++ b/bip-taproot.mediawiki @@ -187,7 +187,8 @@ For any byte string h it holds that taproot_tweak_pubkey(pubk def taproot_tweak_pubkey(pubkey, h): t = int_from_bytes(tagged_hash("TapTweak", pubkey + h)) - assert t < SECP256K1_ORDER + if t >= SECP256K1_ORDER: + raise ValueError Q = point_mul(point(pubkey), t) return bytes_from_int(x(Q)), is_quad(y(Q)) @@ -195,6 +196,8 @@ def taproot_tweak_seckey(seckey0, h): P = point_mul(G, int_from_bytes(seckey0)) seckey = SECP256K1_ORDER - seckey0 if not is_quad(y(R)) else seckey t = int_from_bytes(tagged_hash("TapTweak", bytes_from_int(x(P)) + h)) + if t >= SECP256K1_ORDER: + raise ValueError return (seckey + t) % SECP256K1_ORDER -- cgit v1.2.3