轉(zhuǎn)自:https://zhuanlan.zhihu.com/p/34931303
Bitcoin Cash雨膨,老的比特幣格式的地址被稱為L(zhǎng)egacy(遺產(chǎn))地址,升級(jí)節(jié)點(diǎn)至0.16.2后丢氢,所有的RPC地址展示都用了CashAddr格式,包括listunspent先改,listtransactions疚察,validateaddress等常用的RPC命令。
BCH新老地址的對(duì)比:
1. 新地址是和老地址一一對(duì)應(yīng)的仇奶,它們對(duì)應(yīng)了同一個(gè)私鑰貌嫡,只是換了種寫法
2. 新地址可以發(fā)送余額給老地址,老地址可以發(fā)送余額到新地址
3. 新地址是大小寫不敏感的该溯,可以全部轉(zhuǎn)成大寫岛抄,也可以全部轉(zhuǎn)成小寫,優(yōu)先小寫格式狈茉,同一地址不能大小寫混用
4. 新地址的前綴可寫可不寫夫椭,老地址沒有前綴,通過首字符來標(biāo)識(shí)類型
5. 新地址用base32編碼氯庆,老地址用base58編碼
6. 新地址格式不是一個(gè)軟分叉蹭秋,也不是一個(gè)硬分叉(這個(gè)有點(diǎn)爭(zhēng)議,改了大家都依賴的節(jié)點(diǎn)程序其實(shí)算是一個(gè)軟分叉)
自從比特幣分叉出BCH以來堤撵,兩個(gè)分叉幣就逐漸地往不同的方向走了仁讨,軟分叉的BTC支持了隔離見證,也增加了隔離見證地址等功能粒督,默認(rèn)生成新地址(getnewaddress)是p2sh-segwit隔離見證地址了陪竿,如果想要生成其它格式的地址,可以使用address_type來指定地址類型屠橄,例如要生成原始格式地址族跛,address_type要填legacy。現(xiàn)在锐墙,Bitcoin Cash也有了自己的地址格式礁哄,而且推薦用戶優(yōu)先選用新的地址格式。
BCH的新地址格式類似這樣:
bitcoincash:qpg6rgmpxr838cnwjhatdyuxkdz644xku54fe5yk99
bchtest:qqfpw4e90jhanpz2uspe29czwswgk5rd9v3yczymwq
開頭是一個(gè)網(wǎng)絡(luò)名溪北,后面是一個(gè)q開頭的base32編碼的字符串桐绒,包含了版本號(hào)夺脾、公鑰哈希值、校檢碼等信息茉继,它們根據(jù)一些規(guī)則來拼接成這樣一個(gè)地址咧叭,具體原理請(qǐng)參考這里。
新節(jié)點(diǎn)支持使調(diào)用接口數(shù)據(jù)時(shí)使用老地址:在節(jié)點(diǎn)配置usecashaddr=0
新弄一個(gè)地址格式的初衷烁竭,在于區(qū)別老地址和新地址菲茬,以免用戶充錯(cuò)幣。例如充錯(cuò)BTC到BCH地址派撕,由于BCH已經(jīng)做了防重放攻擊婉弹,這樣相當(dāng)于將BTC打過去了與BCH地址相同的一個(gè)BTC地址上去了,要找回的話還挺麻煩终吼,需要將BCH錢包的私鑰镀赌,導(dǎo)入到BTC錢包上,才能將幣打出际跪,類似的將BCH充值到BTC地址也一樣商佛。如果私鑰不由自己掌握,或者交易所垫卤、錢包等商家不提供找回服務(wù)威彰,那么這個(gè)幣就相當(dāng)于丟了。有些服務(wù)商為了防止用戶打錯(cuò)穴肘,干脆將BTC和BCH地址充值地址弄成一致的,這樣用戶就不會(huì)打錯(cuò)了舔痕,即使打錯(cuò)了评抚,也是充值到自己的賬號(hào)去,可以隨時(shí)提走伯复。
新格式解決了一些問題慨代,新老地址混用,可能會(huì)造成閱讀障礙啸如。
除了新老地址混用的問題侍匙,老的比特幣地址其實(shí)經(jīng)過了精心的設(shè)計(jì),通過base58編碼叮雳,避免了一些容易看錯(cuò)的字母和數(shù)字想暗;使用首字母來標(biāo)識(shí)類型,能夠讓人一眼知道這是個(gè)啥地址帘不,比如m或n開頭的说莫,是一個(gè)測(cè)試環(huán)境地址,而1開頭是正式環(huán)境地址寞焙,如果是3開頭的储狭,那么它是一個(gè)P2SH地址互婿。新地址格式,通過前面的版本號(hào)來看地址所屬的網(wǎng)絡(luò)辽狈,不能再輕松看出差別了慈参,新地址格式的確沒有老地址那么簡(jiǎn)潔易用。
BCH地址轉(zhuǎn)換器
https://cashaddr.bitcoincash.org/
https://bch.btc.com/tools/address-converter
https://www.viabtc.com/
參考資料
https://zhuanlan.zhihu.com/p/34931303
https://github.com/bitcoincashorg/spec/blob/master/cashaddr.md
https://github.com/bitcoincashorg/bitcoincash.org/blob/master/spec/cashaddr.md