# Supported BIPs


Wasabi Wallet strives toward establishing solid industry best practices and standards. Here is a list of all the supported and integrated Bitcoin Improvement Proposals:

# What is supported

BIP 21: URI Scheme

BIP 21: URI Scheme

BIP 32: Hierarchical Deterministic Wallets

BIP 32: Hierarchical Deterministic Wallets

BIP 38: Password-Protected Private Key

BIP 38: Password-Protected Private Key

BIP 39: Mnemonic Code for Generating Deterministic Keys

BIP 39: Mnemonic Code for Generating Deterministic Keys

BIP 44: Multi-Account Hierarchy for Deterministic Wallets

BIP 44: Multi-Account Hierarchy for Deterministic Wallets

BIP 72: bitcoin: uri extensions for Payment Protocol

BIP 72: bitcoin: uri extensions for Payment Protocol

BIP 84: Derivation scheme for P2WPKH Based Accounts

BIP 84 defines a standard derivation scheme for hierarchical deterministic wallets BIP 32, specifically for segregated witness P2WPKH BIP 173. This allows to generate one root master seed that can derive a tree of public keys with different paths BIP 44. m / purpose' / coin_type' / account' / change / address_index. Wasabi specifically uses this standard m/84'/0'/0'. On the TestNet and on the RegTest Wasabi deviates from the standard and uses m/84'/0'/0' instead of m/84'/1'/0'.

BIP 125: Opt-In full Replace-by-Fee Signaling

BIP 125: Opt-In full Replace-by-Fee Signaling is activated for a subset of transactions chosen randomly, so to decrease wallet fingerprinting.

BIP 141: Segregated Witness (Consensus Layer)

BIP 141: Segregated Witness (Consensus Layer)

BIP 143: Transaction Signature Verification for Version 0 Witness Program

BIP 143: Transaction Signature Verification for Version 0 Witness Program

BIP 144: Segregated Witness (Peer Services)

BIP 144: Segregated Witness (Peer Services)

BIP 158: Compact Block Filters for Light Clients

BIP 158 Block filters are the reverse of BIP 37 Bloom filters - the client will connect to a Bitcoin node and say "Hey, for every block, I would like a condensed list of addresses that were affected." What would happen next is that a Bitcoin node would give the same filter that it gives to every client, because the client has thus far revealed nothing! Once a block filter has come in and the client believes that there is a transaction that affects the client, the client pings a single random node for a single full block. It then parses the block, and finds the transaction. This has been proven to be by far the best way to do light clients privately, and is the way Wasabi works today.

BIP 173: Base32 address format for native v0-16 witness outputs

BIP 173: Base32 address format for native v0-16 witness outputs

BIP 174: Partially Signed Bitcoin Transaction Format

BIP 174: Partially Signed Bitcoin Transaction Format

Hardware Wallet Interface

Hardware Wallet Interface

# What is not supported

BIP 37: Connection Bloom Filtering

BIP 37 Bloom filters are filters that a client will send to a Bitcoin full node which says "Hey, if you see any transactions that get caught in these filters, they may or may not be mine!". What would happen next is that a Bitcoin node would start sending tons and tons of transactions to the client, and the client would proceed to distinguish the 99% irrelevant transactions against the 1% relevant ones. This was quite brilliant of an idea at the time, but has since been proven to not protect user privacy, at the expense of wasting a ton of bandwidth and subjecting users to other risks.

BIP 69: Lexicographical Indexing of Transaction Inputs and Outputs

BIP 69: Lexicographical Indexing of Transaction Inputs and Outputs