After the successful activations of OP_CLTV and OP_CSV, SegWit was the last protocol change needed to make the Lightning Network safe to deploy on the Bitcoin network.
Because the witness structure contains Script versioning, it is also possible to make changes to or introduce new opcodes to SegWit scripts that would have originally required a hardfork to function without SegWit.
Question: "How do I get cheaper transactions?"
One of the features made available by segwit is a larger maximum block size. Since a block can hold more data, transactions that can use that new space may be cheaper than they would if the older and smaller maximum block size was still enforced. To get cheaper transactions, you have to:
- Install a SegWit-supporting wallet.
- Receive money on new SegWit addresses, which start with 3. You must generate new addresses; your old addresses will never be SegWit addresses. Note that not all addresses starting with 3 are SegWit addresses, and it is impossible to tell just from looking at an address whether it is a SegWit address.
- Whenever you spend BTC which you have received via SegWit addresses, you will receive the SegWit discount. If you send a transaction spending some BTC received via non-SegWit addresses and some BTC received via SegWit addresses, you will receive a partial discount. The destination address doesn't matter.
There are no compatibility issues: non-SegWit wallets can send BTC to SegWit addresses, and SegWit wallets can send BTC to non-SegWit addresses.
- BIP 141 Segregated Witness (Consensus layer)
- BIP 143 Transaction Signature Verification for Version 0 Witness Program
- BIP 144 Segregated Witness (Peer Services)
- BIP 145 getblocktemplate Updates for Segregated Witness
- BIP 147 Dealing with dummy stack element malleability
- BIP 173 Base32 address format for native v0-16 witness outputs
- Segregated Witness Benefits
- Segregated Witness Wallet Developer Guide