bitcoindevkit / bitcoindevkit/bdk-tx

Enforce standardness rules for TxBuilder::add_data

Open
#49 3 comments 0 reactions 0 assignees View on GitHub
discussion
Dominant language
Rust
Stars
13
Forks
17
Avg merge
17h 22m
Merged PRs (30d)
1

Description

~~"TxBuilder::add_data could enforce common standardness rules (max 80 bytes and at most one such output per transaction). It would also prevent a potential panic to be triggered from within rust-bitcoin (in push_slice_no_opt) if the data is too large, although i don't think it's realistic as a request for creating a 4GiB OP_RETURN would probably fail before then."~~

The policy for OP_RETURN has changed since [Bitcoin Core v30.0](https://bitcoincore.org/en/releases/30.0/)+, per release notes:

"-datacarriersize is increased to 100,000 by default, which effectively uncaps the limit (as the maximum transaction size limit will be hit first). It can be overridden with -datacarriersize=83 to revert to the limit enforced in previous versions. ([#32406](https://github.com/bitcoin/bitcoin/pull/32406))

Multiple data carrier (OP_RETURN) outputs in a transaction are now permitted for relay and mining. The -datacarriersize limit applies to the aggregate size of the scriptPubKeys across all such outputs in a transaction, not including the scriptPubKey size itself. ([#32406](https://github.com/bitcoin/bitcoin/pull/32406))"

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.