Replies: 1 comment
-
I don't think opcodes are additive. For example, if OP_VAULT is added into bitcoin, I think it would replace Checksigfromstack in elements! |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Ideally we could maintain this crate as a fork of rust-bitcoin with some stuff added (and a minimal amount of stuff removed), similar to what we do with e.g. secp256k1-zkp and rust-secp256k1-zkp and elements-miniscript. However there are some big differences in Elements that make this hard.
This issue is to try to exhaustively list all of these. Let me start:
Network
is different in Bitcoin and Elements (Bitcoin has a small fixed list of main/testnet/regtest/signet; Elements has an open-ended "just name a chain" model with some special cases)Address
has two more encodings, blech32 and blech32m, which are used for confidential addressesScript
has new opcodes (this actually is probably purely additive and easy to maintain)Amount
is a "confidential amount" which has very different propertiesTxOut
fields: nonce, assetTxOut
witnesses (surjection proof and rangeproof)TxIn
fields (issuances, reissuances and pegins)psbt
andpset
have entirely different interfaces. (psbtv2 is similar, but we still might want to create our own separate crate with blinding support)sighash
module computation are different for taproot/ecsda and legacy transactions.slip77
BlockHeader
and block format with dynafed stuff.Beta Was this translation helpful? Give feedback.
All reactions