Commit Graph
85 Commits
Author SHA1 Message Date
Jonas Nick 0916da6594 BIP-0341: Replace notion of is_negated with parity bit 2020-03-27 15:14:43 +00:00
Jonas Nick 4ea021f28c BIP-0341: Avoid decompressing the output public key in script spends 2020-03-06 14:20:08 +00:00
Jonas Nick 9bfa53e9fb BIP 340: Verify sig before returning it 2020-03-04 16:34:24 +00:00
Jonas Nick b6b5f58e6e BIP 340: Use synthetic nonces in reference code and test vectors 2020-03-04 16:34:24 +00:00
Jonas Nick d41e778ca1 BIP 340: Update reference code and test vectors as follows:
- use evenness as tiebreaker
 - using different tags for nonce- and challenge hashing
 - add pubkey to nonce function.
2020-03-04 16:34:17 +00:00
Jonas Nick ddc31eb6f6 BIP-340: Improve wording of recommendation for fresh secret keys 2020-02-23 19:33:13 -08:00
Jonas Nick 8b4f79b6f6 BIP-340: Stress that secret key should be fresh and if not then RFC6979 shouldn't be used 2020-02-23 19:33:13 -08:00
Jonas Nick b4255dc83b BIP 340: Recommend verifying the signing output 2020-01-28 22:04:39 +00:00
Jonas Nick 2874f1ffe7 BIP 340: Recommend synthetic nonces 2020-01-28 22:04:34 +00:00
Jonas Nick d199b6dff6 Replace private key with secret key 2020-01-19 14:47:33 -08:00
Jonas Nick 66e2931de2 Clarify bip-taproot digest difference to bip143 regarding sub-hashes 2020-01-19 14:47:33 -08:00
Jonas Nick 1f5bdb304e Improve clarity of footnotes for lift_x 2020-01-19 14:47:33 -08:00
Jonas Nick 708aeadf85 Replace references to Euler's criterion with Legendre symbol in bip-schnorr 2020-01-19 14:47:33 -08:00
Jonas Nick 5a25adc490 Fix bip-schnorr footnote 7 by specifying that we're referring to P's y coordinate and not some undefined 'x' 2020-01-19 14:47:33 -08:00
Jonas Nick 3e5a79af88 Rename is_y_square to is_negated in taproot signing 2020-01-19 14:47:33 -08:00
Jonas Nick fe74ab65db Update test-vectors.csv 2020-01-19 14:47:33 -08:00
Jonas Nick c8281deec6 Fix point_from_bytes accepting out-of-range pubkeys and add test vector 2020-01-19 14:47:33 -08:00
Jonas Nick c9196eeef4 Fix typo in reference code comment 2020-01-19 14:47:33 -08:00
Jonas Nick 301fef36de Make more clear that signing function in test vectors generation code isn't intended to be used anywhere else 2020-01-19 14:47:33 -08:00
Jonas Nick a6d2d42aa2 Check infinity in is_positive 2020-01-19 14:47:33 -08:00
Jonas Nick 82129e720d Adjust test vector generation code to latest terminology 2020-01-19 14:47:33 -08:00
Jonas Nick fdf6e897d9 Fix test vector generation code after changing schnorrsig_sign api 2020-01-19 14:47:33 -08:00
Jonas Nick 78bb31c3bf Accept seckey in the form of bytes and not int in the reference BIP-schnorr code to match the spec. 2020-01-19 14:47:33 -08:00
Jonas Nick d112f5b035 Replace taproot_tweak_pubkey assertion with exception and add it to taproot_tweak_seckey too 2020-01-19 14:47:33 -08:00
Jonas Nick afa5519ade Add taproot_tweak_pubkey and taproot_tweak_privkey functions to bip-taproot wallet section 2020-01-19 14:47:33 -08:00
Jonas Nick e1d7da3796 Add is_quad function to bip-schnorr reference code 2020-01-19 14:47:33 -08:00
Jonas Nick fe8f5f68ca Standardize on secret key in bip-schnorr 2020-01-19 14:47:33 -08:00
Jonas Nick 05cc92b9ad Add x() and y() functions for points to bip-schnorr 2020-01-19 14:47:33 -08:00
Jonas Nick 1c8bdd75a5 Remove 0xc1 2020-01-19 14:47:33 -08:00
Jonas Nick 65a4f1deb8 Mention SHA256 block size
Rebased by Pieter Wuille
2020-01-19 14:47:33 -08:00
Jonas Nick a5112f9f01 Move plain public key in output rationale to design section
Rebased by Pieter Wuille
2020-01-19 14:47:33 -08:00
Jonas Nick 204b7f13a0 Prescribe that a taproot output key should always have a taproot commitment 2020-01-19 14:47:33 -08:00
Jonas Nick 8fd629c3f9 Fix privkey negation in taproot_sign_key 2020-01-19 14:47:33 -08:00
Jonas Nick cc962bf84f Address sipa's comments 2020-01-19 14:47:33 -08:00
Jonas Nick c33c7d0a0c Tag signature hashes, improve rationale and update test vectors 2020-01-19 14:47:33 -08:00
Jonas Nick 7f3611d239 Use a tagged hash in bip-schnorr nonce derivation 2020-01-19 14:47:33 -08:00
Jonas Nick ba748dcd93 Use key path spend terminology more consistently in taproot/tapscript 2020-01-19 14:47:33 -08:00
Jonas Nick 16073d0c20 Clarify how to disable key path spending 2020-01-19 14:47:33 -08:00
Jonas Nick f3bef4f459 Address sipa's feedback 2020-01-19 14:47:33 -08:00
Jonas NickandTim Ruffing a67e5e323c Update bip-schnorr/test-vectors.py
Co-Authored-By: Tim Ruffing <tim@timruffing.de>
2020-01-19 14:47:33 -08:00
Jonas NickandTim Ruffing 5da30bd568 Update bip-schnorr.mediawiki
Co-Authored-By: Tim Ruffing <tim@timruffing.de>
2020-01-19 14:47:33 -08:00
Jonas Nick 303ff5fb26 Address Tim's comments 2020-01-19 14:47:33 -08:00
Jonas Nick 08e1b3da74 Use short public keys for taproot output keys 2020-01-19 14:47:33 -08:00
Jonas Nick e084aafb8b Switch to 32 byte public keys in bip-schnorr 2020-01-19 14:47:33 -08:00
Jonas Nick 1a4b08ab72 Fix point_from_bytes in bip-schnorr reference implementation 2020-01-19 14:47:33 -08:00
Jonas Nick b2e6d11a6e Clarify diagram 2020-01-19 14:47:33 -08:00
Jonas Nick eb96be7a9d Clarify what 'reduced' means in tests and use word 'message' instead of 'message hash' 2020-01-19 14:47:33 -08:00
Jonas Nick 633cca9b1c Replace private key with secret key 2019-12-13 13:25:16 +00:00
Jonas Nick 93e1921d83 Improve clarity of footnotes for lift_x 2019-12-04 20:21:52 +00:00
Jonas Nick 2c6b472e9c Clarify bip-taproot digest difference to bip143 regarding sub-hashes 2019-11-29 16:32:44 +00:00
Jonas Nick 382a1d19a0 Replace references to Euler's criterion with Legendre symbol in bip-schnorr 2019-11-29 15:48:22 +00:00
Jonas Nick 3acb150829 Fix bip-schnorr footnote 7 by specifying that we're referring to P's y coordinate and not some undefined 'x' 2019-11-29 15:48:02 +00:00
Jonas Nick 9208857b92 Rename is_y_square to is_negated in taproot signing 2019-11-22 20:40:20 +00:00
Jonas Nick 8a8a35bfc5 Update test-vectors.csv 2019-11-05 10:14:23 +00:00
Jonas Nick 8e7aef083e Fix point_from_bytes accepting out-of-range pubkeys and add test vector 2019-11-05 00:05:07 +00:00
Jonas Nick 0ec01e9255 Fix typo in reference code comment 2019-11-04 23:35:55 +00:00
Jonas Nick 35f1fface5 Make more clear that signing function in test vectors generation code isn't intended to be used anywhere else 2019-11-04 23:35:31 +00:00
Jonas Nick c0f0c8d43d Check infinity in is_positive 2019-11-04 23:35:24 +00:00
Jonas Nick 220df7da78 Adjust test vector generation code to latest terminology 2019-11-04 23:35:17 +00:00
Jonas Nick 854a33ab48 Fix test vector generation code after changing schnorrsig_sign api 2019-11-04 23:35:11 +00:00
Jonas Nick a6e5c16821 Replace taproot_tweak_pubkey assertion with exception and add it to taproot_tweak_seckey too 2019-09-30 11:15:23 +00:00
Jonas Nick 398897cd29 Add taproot_tweak_pubkey and taproot_tweak_privkey functions to bip-taproot wallet section 2019-09-27 15:36:51 +00:00
Jonas Nick 1882aa7b8f Add is_quad function to bip-schnorr reference code 2019-09-27 15:36:51 +00:00
Jonas Nick 5c52872fe0 Standardize on secret key in bip-schnorr 2019-09-27 15:36:51 +00:00
Jonas Nick 7e273fbda6 Add x() and y() functions for points to bip-schnorr 2019-09-27 15:36:51 +00:00
Jonas Nick 472911379c Accept seckey in the form of bytes and not int in the reference BIP-schnorr code to match the spec. 2019-09-26 21:13:18 +00:00
Jonas Nick 479fe5f365 Remove 0xc1 2019-09-25 21:02:43 +00:00
Jonas Nick 87fa069b8f Mention SHA256 block size
Rebased by Pieter Wuille
2019-09-11 17:43:11 -07:00
Jonas Nick 0995c8a5b5 Move plain public key in output rationale to design section
Rebased by Pieter Wuille
2019-09-10 16:03:25 -07:00
Jonas Nick 02bdf88ef9 Fix privkey negation in taproot_sign_key 2019-08-29 20:46:47 +00:00
Jonas Nick dc6b91c1a9 Address sipa's comments 2019-08-27 15:13:08 +00:00
Jonas Nick 775cb2fd90 Tag signature hashes, improve rationale and update test vectors 2019-08-26 20:46:08 +00:00
Jonas Nick 7cd53f6eec Use a tagged hash in bip-schnorr nonce derivation 2019-08-26 11:32:04 +00:00
Jonas Nick ed0bb5b0c2 Prescribe that a taproot output key should always have a taproot commitment 2019-08-22 15:49:09 +00:00
Jonas Nick 16bdfcf534 Use key path spend terminology more consistently in taproot/tapscript 2019-08-22 11:41:04 +00:00
Jonas Nick 0d28b3c37b Address sipa's feedback 2019-08-21 11:42:03 +00:00
Jonas NickandTim Ruffing ae96228913 Update bip-schnorr/test-vectors.py
Co-Authored-By: Tim Ruffing <tim@timruffing.de>
2019-08-20 10:53:58 +00:00
Jonas NickandTim Ruffing 30fdc87599 Update bip-schnorr.mediawiki
Co-Authored-By: Tim Ruffing <tim@timruffing.de>
2019-08-20 10:53:51 +00:00
Jonas Nick 112d9c150a Address Tim's comments 2019-08-19 14:37:55 +00:00
Jonas Nick 9795b7081a Clarify how to disable key path spending 2019-08-18 15:52:46 +00:00
Jonas Nick 5793d3d735 Use short public keys for taproot output keys 2019-08-18 15:04:03 +00:00
Jonas Nick ed01c1a776 Switch to 32 byte public keys in bip-schnorr 2019-08-18 15:04:03 +00:00
Jonas Nick 1faf705388 Fix point_from_bytes in bip-schnorr reference implementation 2019-08-18 15:04:03 +00:00
Jonas Nick 04b844540e Clarify diagram 2019-05-10 13:57:12 +00:00
Jonas Nick e9ea1710ef Clarify what 'reduced' means in tests and use word 'message' instead of 'message hash' 2019-05-06 20:09:33 +00:00