比特幣分層確定性錢包的可重用支付代碼BIP47介紹
比特幣的隱私并不能在協(xié)議層面得到保障。個人如何存儲、交易或以其他方式使用比特幣,是保持匿名與向有動機的旁觀者提供永久訪問其交易歷史記錄的區(qū)別。
不幸的是,獲得更大的隱私往往是以便利為代價的。地址重用是一個禁忌,但是對于懶惰的/不懂技術(shù)的人來說,生成一個新地址并與交易對手共享它并不總是那么簡單。
輸入BIP47錢包。
BIP47,分層確定性錢包的可重用支付代碼,由Justus Ranvier于2015年提交。正如標(biāo)題所示,它為現(xiàn)有的分層確定性(或HD)錢包結(jié)構(gòu)增加了功能——值得注意的是,它概述了一個系統(tǒng),方便雙方重復(fù)支付(同時保護他們的隱私)。
HD錢包通過在不泄露“主密鑰”(或xpub,這應(yīng)該是保密的)的情況下派生出公鑰,使用戶更容易獲得隱私。這些公鑰的數(shù)量幾乎是無限的,可以創(chuàng)建并分發(fā)給交易對手,而交易對手只能收集特定密鑰所持有的數(shù)量(而不能收集錢包的全部)。
到目前為止,一切都發(fā)展的順利。你避免了經(jīng)典的“XYZ知道你拿了多少,現(xiàn)在你的生命處于危險之中”的場景,你可以更有效地劃分你的活動,而不用不斷地在不同的錢包應(yīng)用程序中切換。
可以肯定的是,這是一個凈改進,但是對于頻繁的交易來說,仍然遠遠不是最優(yōu)的。良好的實踐要求每次付款都使用一個新地址,因此不斷地重新簽發(fā)它們會很快變得不方便。
解決方案
BIP47的實現(xiàn)通過提供可重用的支付代碼,增強了HD錢包的功能,為那些尋求與同行建立重復(fù)支付通道的用戶提供服務(wù)。如果你想要一個極其簡單的類比,支付代碼有點像你朋友可以支付的現(xiàn)金現(xiàn)金卡。
不久我將詳細說明。首先有幾件事需要澄清——您不是依賴于可信的第三方,您不是在技術(shù)上向付款代碼發(fā)送代幣,它仍然只是一長串字母數(shù)字字符(但您現(xiàn)在應(yīng)該已經(jīng)習(xí)慣了這一點)。如果你不喜歡,歡迎使用比特幣?。?/p>
需要記住的關(guān)鍵是,這些支付代碼可以在不損害隱私的情況下在每筆交易中重復(fù)使用,因為這些代幣每次都被發(fā)送到一個新的鏈上地址。正如Ranvier 在2015年的BitcoinTalk帖子中所說,一個支付代碼就可以將資金轉(zhuǎn)移到40億個不同的地址。
它們與其他的隱形地址實現(xiàn)有些不同(Kyle y在這里做了一個很好的比較)——這一點的一種表現(xiàn)方式是通過使用鏈上的“交易通知”來建立一個對等點的支付通道。
在來回傳輸資金之前,發(fā)送方向接收方的監(jiān)聽地址廣播一個特殊的交易(使用OP_RETURN),從而啟動通道。通過所有這些在鏈上展開的功能,用戶可以在發(fā)生災(zāi)難時恢復(fù)他們的通道,前提是他們保留了備份(同樣,這也是您肯定已經(jīng)習(xí)慣的)。
在野外
令人驚訝的是,現(xiàn)在幾乎沒有實現(xiàn)——Samourai錢包只是人們腦海中想象出來的(Stash錢包也有支持,但我無法讓它起作用)。除了常規(guī)的功能之外,后者還進一步使用BIP47來實現(xiàn)私有消息傳遞,而前者以PayNyms為基礎(chǔ)構(gòu)建更好的UI/UX標(biāo)準(zhǔn)。
BIP47對錢包軟件來說是一個福音,它引入了隱私,這也許是大規(guī)模采用的最佳方式——也就是說,特洛伊木馬(Trojan Horse-ing )在以便利的幌子下把它賣給了用戶。