Safer Noinput With Output Tagging

Regarding NOINPUT, there was a proposal that would try to mitigate the risk of accidental double payment, as NOINPUT brings Bitcoin smarter contracts, these contracts can also be abused or used in a dumber way, the proposal here is that a certain bit will be used as a flag to let wallets know that this transaction can be spent with NOINPUT, the tag must be explicitly made by the payer and can have one of two implementations, the first would be a bit in the tx version, the second would be a bit in the scriptPubKey.

The advantages in tagging in the scriptPubKey is that we could tag on a per-output basis, while the cons are that the tagging is only possible with native-segwit and older implementations of bech32 will not understand the tag and will pay to a tagged address as usual, tagging with txversion only allows all or none tags, but it protects P2SH-segwit and all existing wallets.

Tagging an output means that the payer believes this address is one-time-use only, as the payer cannot control the payee’s addresses, tagging should only be used when paying ourselves.

Support us and the authors of this article by donating to the following address:

3F1XuY7u7YUi8cDFVvoo3aobF6MQTRtVXu

Comments powered by Talkyard.