ビットコインアドレス

ビットコインの送金は原理的には送金先の公開鍵があればできる
ビットコインで実際に送金先を表す固有名はビットコインアドレス
公開鍵と1対1に対応している

ビットコインアドレスは、チェックサム、プレフィックス、base58エンコーディングの利用を行なっている

0x04 公開鍵x 256ビット 公開鍵y 256ビット
↓                     チェックサム
1バイト ペイロード 20バイト(160バイト) 4バイト
↓ base58 エンコーディング
ビットコインアドレス アルファベット26-35文字

base58エンコーディングは1,l,0,o,+,/,=を使わない

プレフィックス
ビットコインアドレスの先頭1バイトはバージョン・種別を表す
0x00(mainnet), 0x6F(testnet), 0x05(mainnet), 0xC4(testnet)

チェックサム
SHA256(SHA256(プレフィックス + 512ビット公開鍵))