bips/bip-0352
Sebastian Falbesoner f2ffa99a4a BIP-352: take use of vendored secp256k1lab for reference implementation
This allows to remove secp256k1.py and replace the secp256k1-specific
parts in the reference implementation. Replacement guide:

    * ECKey -> Scalar
    * ECKey.set(seckey_bytes) -> Scalar.from_bytes_checked(seckey_bytes)
    * seckey.get_pubkey() -> seckey * G
    * seckey.get_bytes() -> seckey.to_bytes()
    * seckey.add(tweak_bytes) -> seckey + Scalar.from_bytes_checked(tweak_bytes)
    * seckey.negate() -> seckey = -seckey
    * seckey.sign_schnorr -> schnorr_sign(..., seckey.to_bytes(), ...)

    * ECPubKey -> GE
    * ECPubKey.set(pubkey_bytes) -> GE.from_bytes_{xonly,compressed}(pubkey_bytes)
    * pubkey.get_y() % 2 == 0 -> pubkey.has_even_y()
    * pubkey.get_bytes(False) -> pubkey.to_bytes_compressed()
    * pubkey.get_bytes() -> pubkey.to_bytes_xonly()
    * not pubkey.valid -> pubkey.infinity
    * pubkey.verify_schnorr -> schnorr_verify(..., pubkey.to_bytes_xonly(), ...)

    * TaggedHash -> tagged_hash
    * hashlib.sha256(preimage).digest() -> hash_sha256(preimage)
2026-03-02 19:17:21 +01:00
..
secp256k1lab Merge commit '53b590e190f798131a10a16194261243abdf6b4d' as 'bip-0352/secp256k1lab' 2026-03-02 19:16:00 +01:00
bech32m.py Add reference.py with test vectors 2024-05-08 18:14:55 +02:00
bitcoin_utils.py BIP-352: take use of vendored secp256k1lab for reference implementation 2026-03-02 19:17:21 +01:00
reference.py BIP-352: take use of vendored secp256k1lab for reference implementation 2026-03-02 19:17:21 +01:00
ripemd160.py BIP-352: use own ripemd160 for reference implementation (#1616) 2024-06-29 07:08:49 -07:00
scan_data_downloader_per_month.png bip352: update appendix 2024-07-12 09:05:35 +02:00
send_and_receive_test_vectors.json BIP-352: add test vector for exceeding K_max limit [receiver side] 2026-03-02 13:31:46 +01:00