When transferring Bitcoins, we all need to communicate with the receiver’s Bitcoin address. Bitcoin addresses are anonymous and do not contain information about the owner. Almost everyone who has been in contact with Bitcoin for a period of time has dealt with different types of Bitcoin addresses.
Anyone can generate Bitcoin addresses for free. You can also use an account in an exchange or online wallet service to obtain a Bitcoin address. You can also choose to generate it offline and store it on paper or in a hardware wallet, but do you know that there are three types of Bitcoin addresses? they are, respectively:
Legacy (P2PKH) format
The address starts with “1”, which is the address format used by Bitcoin since its original source, and it is also the most common address format . As for P2PKH, it is an abbreviation of “Pay To PubKey Hash”.
Nested SegWit (P2SH) format
Addresses start with “3”. From this format, we can’t distinguish whether they are MultiSig addresses or Segregated Witness compatible addresses. P2SH is the abbreviation of “Pay To Script Hash” and it supports more than Legacy Functions with more complex formats , such as specifying multiple digital signatures to authorize transactions.
Native SegWit (Bech32) format
The address starts with “bc1” and belongs to the local SegWit address format, an address format developed specifically for SegWit. Some exchanges may not yet have an address that supports this format. At present, there are three types of Bitcoin addresses in this format. The Bech32 format is the least common of the three.
Since more transaction data can be stored in a single block, and the Bech32 format address itself is compatible with SegWit, no extra space is needed to put the SegWit address into the P2SH address, so the average cost of sending Bitcoin from this address may be lower .
Bech32 was defined in BIP173 (Bitcoin Improvement Proposal, used by Bitcoin code developers) at the end of 2017. One of the main features of this format is that it is case-insensitive (the address only contains 0-9, a-z), so when you enter the address it can effectively avoid confusion and make it easier to read. Since the address requires fewer characters, the address uses Base32 encoding instead of the traditional Base58, which makes the calculation more convenient and efficient. Data can be stored more closely in the QR code.
Bech32 provides higher security, better optimizes the checksum error detection code, and can minimize the chance of invalid addresses.
What is SegWit?
SegWit is a soft fork that occurs on the Bitcoin blockchain. SegWit (Segregated Witness) is an upgrade protocol developed by the Bitcoin community in 2015 to solve the scalability problem faced by the blockchain network. It was officially implemented in August 2017. Its central idea is to reorganize block data so that signatures are no longer stored with transaction data, so that more transactions can be stored in a single block to increase the transaction throughput of the network.
Image source: Shutterstock