Segwit | Replace-by-Fee

Segwit Addresses

What are segwit addresses? Transactions that spend bitcoins secured by segregated witness (segwit) use less block weight than equivalent non-segwit (legacy) transactions, allowing segwit transactions to pay less total fee to achieve the same feerate as legacy transactions.

Tested: version 0.17.1 on macOS

Tested on: 2019-03-28

Receive support

  • Allows receiving to P2SH-wrapped segwit
    Allows the generation of P2SH-wrapped (either P2WPKH or P2WSH) segwit receiving addresses.
  • Allows receiving to bech32 segwit addresses
    Allows the generation of bech32 native (either P2WPKH or P2WSH) segwit receiving addresses.
  • Default receiving address is P2SH-wrapped P2WPKH
    This service generates P2SH-wrapped P2WPKH segwit receiving addresses by default.

Send support

  • Allows sending to bech32 P2WPKH addresses
    Allows sending to bech32 P2WPKH native segwit addresses.
  • Allows sending to bech32 P2WSH addresses
    Allows sending to bech32 P2WSH native segwit addresses.
  • Creates bech32 change addresses
    When sending, generates bech32 (either P2WPKH or P2WSH) segwit change addresses.

Usability

Click on a thumbnail for a larger image or to play its video.

Receive - Generate a new address with tooltip. Bech32 option defaults to unchecked. If checked, the checkbox will still be unchecked once Bitcoin-Qt is restarted.
Receive - Generate a new address with tooltip. Bech32 option defaults to unchecked. If checked, the checkbox will still be unchecked once Bitcoin-Qt is restarted.

Address Details - Showing Bech32 address as well as equivalent uri and QR code.
Address Details - Showing Bech32 address as well as equivalent uri and QR code.


Send - By default, the change address takes the same type as the address being paid to. Can be overridden with change control's 'Custom change address'.
Send - By default, the change address takes the same type as the address being paid to. Can be overridden with change control’s ‘Custom change address’.

Replace-by-Fee (RBF)

What is Replace-by-Fee (RBF)? An unconfirmed transaction can be replaced by another version of the same transaction that spends the same inputs. Most full nodes support this if the earlier transaction enables BIP125 signaling and the replacement transaction increases the amount of fee paid. In terms of block chain space used, this is the most efficient form of fee bumping.

Tested: version 0.16.2 on macOS

Tested on: 2018-08-28

Receiving support

  • Notification does not note RBF
    Notification of incoming transaction does not note that the transaction signals RBF.
  • Received transaction not labeled replaceable in list
    Does not visually indicate that an incoming transaction has signaled RBF.
  • Received transaction not labeled replaceable in transaction details
    Does not visually indicate that a received transaction has signaled RBF when viewing the transaction details.
  • Shows replacement and original transactions
    Both the original transaction and replacement transaction(s) are shown in the transaction list.

Sending support

  • Signals BIP125 replacability when sending transactions
    Allows sending of BIP125 opt-in-RBF transactions in the interface.
  • Sent transaction not labeled replaceable in list
    Does not visually indicate that an outgoing transaction has signaled RBF.
  • Sent transaction not labeled replaceable in transaction details
    Does not visually indicate that a sent transaction has signaled RBF when viewing the transaction details.
  • Shows replacement and original transactions
    Both the original transaction and replacement transactions are shown in the transaction list.

Usability

Click on a thumbnail for a larger image or to play its video.

Sending Transaction - Default wallet send screen.
Sending Transaction - Default wallet send screen.

Sending Transaction - Wallet Send Screen (Transaction Fee details expanded).
Sending Transaction - Wallet Send Screen (Transaction Fee details expanded).


Sending Transaction - Warning prompt for low fee. Includes RBF note at the bottom when RBF disabled.
Sending Transaction - Warning prompt for low fee. Includes RBF note at the bottom when RBF disabled.

Sending Transaction - Warning prompt for low fee. Includes RBF note at the bottom when RBF enabled.
Sending Transaction - Warning prompt for low fee. Includes RBF note at the bottom when RBF enabled.


Sending Transaction - Transaction list screen for outgoing transaction signaling RBF. No note of RBF signaling.
Sending Transaction - Transaction list screen for outgoing transaction signaling RBF. No note of RBF signaling.

Sending Transaction - Transaction details screen for outgoing transaction signaling RBF. No note of RBF signaling.
Sending Transaction - Transaction details screen for outgoing transaction signaling RBF. No note of RBF signaling.


Attempting Transaction Replacement - Transaction details context menu showing “Increase transaction fee”.
Attempting Transaction Replacement - Transaction details context menu showing “Increase transaction fee”.

Attempting Transaction Replacement - Confirmation prompt for “Increase transaction fee”.
Attempting Transaction Replacement - Confirmation prompt for “Increase transaction fee”.


Attempting Transaction Replacement - Transaction list showing an additional transaction representing the replacement transaction. The original shows up greyed out with brackets around the amount.
Attempting Transaction Replacement - Transaction list showing an additional transaction representing the replacement transaction. The original shows up greyed out with brackets around the amount.

Attempting Transaction Replacement - Transaction details of the outgoing bumped RBF transaction. No flag for RBF.
Attempting Transaction Replacement - Transaction details of the outgoing bumped RBF transaction. No flag for RBF.


Receiving Transaction Signaling RBF - Notification of incoming transaction. No specific note that the transaction signals RBF.
Receiving Transaction Signaling RBF - Notification of incoming transaction. No specific note that the transaction signals RBF.

Receiving Transaction Signaling RBF - Transaction List Screen. No RBF note.
Receiving Transaction Signaling RBF - Transaction List Screen. No RBF note.


Receiving Transaction Signaling RBF - Transaction Details screen for an transaction signaling RBF. No RBF note.
Receiving Transaction Signaling RBF - Transaction Details screen for an transaction signaling RBF. No RBF note.

Receiving Replacement Transaction - New transaction notification for the replacement transaction.
Receiving Replacement Transaction - New transaction notification for the replacement transaction.


Receiving Replacement Transaction - Transaction List Screen. No RBF note. Both the original and replacement transaction appear with “?”/unconfirmed.
Receiving Replacement Transaction - Transaction List Screen. No RBF note. Both the original and replacement transaction appear with “?”/unconfirmed.

Receiving Replacement Transaction - Transaction Details screen for original transaction. No RBF note.
Receiving Replacement Transaction - Transaction Details screen for original transaction. No RBF note.


Receiving Replacement Transaction - Transaction Details screen for replacement transaction. No RBF note.
Receiving Replacement Transaction - Transaction Details screen for replacement transaction. No RBF note.