嗨,早!
上週末比特幣完成了代號 Taproot 的區塊鏈升級,升級後比特幣交易更安全、更隱私,礦工手續費還可能會降低。
上一次比特幣區塊鏈大升級是在 2017 年 8 月。這次升級理應備受矚目,但相關的新聞報導並不多。多數人都是升級完成後才得知,具體的升級內容大概也有看沒有懂。
這篇文章討論 Taproot 升級了哪些功能,以及為什麼人們會忽視了這項重大升級。
Taproot 升級
比特幣區塊鏈是在 2009 年就問世的軟體系統。
當時連 iPhone 4 都還沒推出,比特幣系統就已經在運作。現在已經沒有人在使用 iPhone 4,但比特幣區塊鏈仍在運行,軟體也就得持續升級。
有別於 iPhone 的軟體更新,是由蘋果單方面推送給用戶,有漏洞再另外推出更新版。比特幣的升級很不一樣。開發者必須先與礦工們達成共識,確保升級符合各方利益。否則如果多數礦工不配合更新,就好像手機無法再支援新版本,用戶最終還是只能繼續使用舊版軟體。
此外,比特幣與錢有關。如果升級出現漏洞,嚴重的話甚至會導致幣價歸零。升級區塊鏈的壓力會比升級手機系統更大。程式碼的改動幅度越大,出問題的風險也就越高。而這次的 Taproot 就是比特幣的「大升級」,重要性可想而知。
根據 Kraken Intelligence 的介紹:
Taproot 最初是由知名的比特幣開發者 Greg Maxwell 在 2018 年提出。而各方最終在 2021 年 6 月達成共識,選定在區塊編號 709,632(約 2021 年 11 月)進行升級。
Taproot 是比特幣的軟分叉,它由三項比特幣改進提案(Bitcoin Improvement Proposal,BIP)共同組成,藉此加強比特幣的隱私性、安全性及可擴展性。
看到這段敘述,不少人可能會想:「難道比特幣還不夠隱私、安全嗎?」
這就得從比特幣的交易原理說起。
公私鑰機制
舉例來說,當小明要轉帳比特幣給小華,實際的過程可以分為解鎖、上鎖、再解鎖的三個步驟。其中,公鑰就像是鎖頭,而私鑰則像是鑰匙,兩者成對出現、搭配使用:
解鎖:小明以自己的「私鑰」向系統證明他有權「解鎖」特定帳戶內的比特幣資產
上鎖:小明拿著小華的「公鑰」將要轉出的比特幣「上鎖」,並傳送給小華
再解鎖:小華憑自己的「私鑰」將小明傳來的比特幣「解鎖」,就能收到錢
比特幣就是靠著這套以私鑰解鎖、以公鑰上鎖的機制運作。
而 Taproot 的最大改動,就是更新比特幣系統背後產生公、私鑰的密碼學機制。開發者在既有的橢圓曲線簽名演算法(ECDSA)之外,新增一套 Schnorr 簽名機制。這相當於改進鑰匙、鎖頭的安全設計。
Schnorr 簽名不僅比原本的密碼學機制更安全,它還可以將多個鎖頭(公鑰)、鑰匙(私鑰),重新聚合成一個新的鎖頭、鑰匙。專業術語稱為 key aggregation。
這項功能在多簽交易(multi-sig transaction)時很好用。就像企業在支出大筆款項之前,會需要經過多個人簽名核准,比特幣也有類似功能。付款人可以透過智慧合約的程式碼,設定得先蒐集到特定幾個人的私鑰簽名後才能啟動支付流程。
在 Taproot 升級之前,智慧合約內的交易條件都必須完整公開在比特幣區塊鏈,交易才能夠生效。因此,與交易無關的人也能透過區塊鏈瀏覽器,得知哪些地址在什麼時候同意向另一個地址支付多少錢。這就好像廠商和客戶私下談好的支付條件,都得完整公開在網路上一樣赤裸。
雖然交易內容並沒有指名道姓,也只有熟悉區塊鏈的人才知道這些細節,但早在 4 年前,開發者就認為這是隱私不足而待改進的項目。
而 Taproot 升級之後,智慧合約內的交易條件都會被隱藏起來。與交易無關的人,就無法從鏈上資料得知這筆交易是不是多簽交易,也不知道交易得由幾個簽名核准,更不會知道簽名者的真實身份。簡單來說,新的 Schnorr 簽名機制讓多簽交易看起來像是一般的個人交易,無法從鏈上紀錄得知交易細節。
這不僅能保障交易隱私,也降低多簽交易所佔用的資料空間。當每筆交易資料變小,礦工就可以在有限的區塊空間中塞入更多筆交易。這相當於提升區塊鏈的處理效率,也就能減緩鏈上塞車的情況,進而降低礦工手續費。
這就是文章開頭說 Taproot 可望替用戶降低礦工手續費,提升安全、隱私性的原因,也是一次比特幣區塊鏈的重大升級。但為什麼網路上討論的人這麼少?
被忽視的升級
這次 Taproot 的升級重點,是額外新增一套比特幣系統背後的公私鑰產生機制 —— Schnorr 簽名 —— 而它實際影響的對象是以智慧合約來支付比特幣的使用者。
多數人恐怕不曾把比特幣從交易所帳戶內提領出來,甚至是第一次聽到比特幣區塊鏈上有智慧合約的功能。因此,這次升級對比特幣社群來說或許很重要,但多數使用者卻很可能感覺不到 Taproot 和自己的關聯。
既然很少人使用智慧合約轉帳比特幣,它的交易隱私問題就更不在人們的關心範圍之內。
其次,Taproot 雖然能降低智慧合約的交易資料大小,進而減少礦工手續費。但降低手續費終究不是 Taproot 升級的主要目的,只是 Schnorr 簽名恰好能達到這個效果。而且所降低的手續費也有極限。
以我寫文章當下為例,比特幣轉帳的礦工手續費大約是每筆 10 元台幣。相較於以太坊動輒上千元的礦工手續費,確實非常便宜。
但這不全然是 Taproot 的功勞。如果比特幣區塊鏈上的智慧合約交易本來就少,Taproot 的改善幅度也有限。
更可能的情況是,將比特幣放在個人錢包內轉帳的人本來就不多,Taproot 升級之後讓手續費又變得更低了。除非各家交易所也願意調降比特幣目前近千元的提領手續費,否則使用者很難感受到升級前後的差異。
回頭來看,2017 年比特幣因為軟體升級引發社群內鬨,導致部分礦工出走,分叉出比特現金(Bitcoin Cash)這個獨立的區塊鏈。Taproot 不僅是比特幣 4 年來的首度升級,還是平和且成功的升級,相當具有歷史意義。
只不過,使用者對這項升級無感。畢竟比特幣早已不是人們使用智慧合約的首選區塊鏈,多數人也是把比特幣放在交易所內,而不是個人錢包。
若以公共建設來比喻,Taproot 更像是政府在更新下水道管線。實際上人們的生活並沒有太大的變化,但這對於一套已經持續運行 10 年且不曾斷線維修過的系統來說,已經是一項重大的成功。
區塊勢是由讀者付費訂閱來維持營運的獨立媒體。如果你覺得區塊勢的文章不錯,歡迎你分享這篇文章或是成為付費會員支持我們走得更遠 🙏
此外,也請大家推薦區塊勢給親朋好友。若想查閱區塊勢過往的出刊內容,可以參考文章列表。有鑒於常會有讀者寄信來問我推薦碼,因此我將它們整理成一頁。歡迎大家使用。