找十位安全工程師來評判 MPC 與多簽孰優孰劣,你會聽到一種熟悉的分歧:託管技術廠商偏愛 MPC,比特幣老兵擁護多簽,兩個陣營各說各話。這場比較值得更認真的對待,因為兩種方案解決的是同一個問題——任何單一的人、裝置或伺服器,都不應該能夠獨自動用資金——只是解決的位置截然不同。MPC(多方運算)拆分的是私鑰本身,依靠鏈下密碼學;多簽拆分的是花費權限,依靠區塊鏈自身強制執行的規則。
這一個設計選擇,驅動了幾乎所有實務上的差異:你要付多少手續費、外部人士能驗證什麼、廠商消失時會發生什麼事,以及一筆有問題的簽名發生後誰能被追責。兩種方案都不是對另一方的全面升級。截至本文撰寫的 2024 年 4 月,兩者各自守護著數百億美元的資產,也都曾釀成代價高昂的事故。以下是這場比較的誠實版本。
拆分花費權力的兩種方式
MPC 錢包通常建立在門檻簽名方案(TSS)之上。它將一把私鑰拆分成由不同參與方或裝置持有的數學分片;要簽名時,分片持有者執行一套互動式協定,共同計算出一個單一的、普通的簽名。完整的私鑰在任何時刻都不會存在於任何一個地方——即使在錢包建立的那一刻也不會。區塊鏈看到的是一個普通地址和一個普通簽名,完全不知道背後有一組門檻參與其中。
多簽走的是相反的路線。每位參與方都持有一把完整、獨立的金鑰,而花費規則——例如 2-3——則寫在網路看得見、也能強制執行的地方:比特幣腳本自 2012 年起即原生支援多簽,以太坊等鏈則透過智能合約實現。一個 2-3 多簽,除非三把已登記金鑰中的兩把各自產生有效簽名,否則不會放行資金。這個門檻不是你所執行的軟體做出的承諾,而是鏈上共識強制執行的規則。
兩種模式都以同一個詞——「錢包」——對外銷售,這掩蓋了它們信任假設上的巨大差異。一種的保證來自外部人士無法檢視的進階密碼學實作;另一種則來自人人都能檢視的共識規則。
MPC 把門檻放進密碼學裡,要求你信任一套實作;多簽把門檻寫進鏈上,讓任何人都能驗證。
支持 MPC 的理由
MPC 的優勢是真實存在的,這也解釋了為什麼大量機構託管業務建立在它之上。
- 鏈的覆蓋幾乎是免費的。一套門檻 ECDSA 實作,原則上可以覆蓋所有接受 ECDSA 簽名的鏈。不需要為每條鏈編寫、審計並部署合約——這對多簽產品來說是實打實的成本,因為它們必須在每一個支援的網路上重新實作自己的模型。
- 地址看起來完全普通。MPC 錢包只需支付單簽等級的手續費,也不會在鏈上洩露任何策略資訊。在 taproot 於 2021 年啟用之前,比特幣多簽的花費交易明顯比單簽交易更大、更貴;MPC 從來沒有這個問題。
- 分片可以輪換。主動式更新(proactive refresh)讓持有者能在不移動資金、不變更入金地址的情況下,重新隨機化各自的分片,因此攻擊者必須在一個輪換週期之內攻破達到門檻數量的分片,而不是花上數年慢慢累積。
- 沒有智能合約風險。鏈上不部署任何東西,因此也就沒有可被利用的合約程式碼。2017 年的 Parity 事件——一個共用多簽程式庫中的漏洞凍結了數億美元的 ETH——是每一家 MPC 廠商都會引用的警世故事,而這個故事確實站得住腳。
MPC 會在哪裡失守
它的弱點同樣是結構性的,只是比較少被拿出來宣傳。
這套密碼學是真的很難。門檻 ECDSA 是一套互動式、多輪次的協定,處處是稜角,而失誤確實已經進入了生產環境。2023 年,安全研究人員披露了針對多個被廣泛部署的門檻簽名實作、實際可行的私鑰提取攻擊——問題出在程式碼,而非底層數學,但受影響錢包的使用者同樣暴露在風險之中。多簽使用者的核心假設是「鏈會正確驗證簽名」;MPC 使用者的核心假設是「我的廠商正確實作了一套精妙的密碼學協定」。這兩個假設的份量並不相同。
外部沒有人能驗證門檻。MPC 地址看起來與任何其他地址無異,這意味著行銷資料裡宣稱的門檻無法在鏈上查證。2023 年 7 月的 Multichain 事件把這一點具體化了:約 1.25 億美元從該專案的地址中流出,而團隊後續的聲明顯示,存放其金鑰材料的伺服器其實一直處於一個人的實際控制之下。無論架構圖上承諾了什麼,營運上的現實就是一個單點故障——而任何外部人士都不可能從鏈上察覺這件事。
恢復通常必須經過廠商。大多數生產環境中的 MPC 系統都與特定廠商綁定:分片以專有格式存放,簽名需要廠商的協調服務,恢復則仰賴廠商的工具持續存在。有些供應商提供離線匯出;許多則沒有。如果不依賴廠商的恢復能力對你很重要,請在把資金存入錢包之前——而不是之後——要求對方實際示範一次。
可追責性更加單薄。MPC 簽名儀式的產出是一個聚合簽名。鏈無法顯示是哪些參與方批准了一筆交易;僅有的歸屬紀錄存在於廠商的日誌之中,而日誌由廠商掌控。
支持多簽的理由——以及它誠實的代價
在 MPC 與多簽的比較中,鏈上多簽幾乎將上述所有性質全部反轉。策略是公開的,並由共識強制執行,因此無論是審計師、共同創辦人還是法院,都可以在不信任任何人儀表板的情況下確認門檻。每一次批准都是來自一把獨立金鑰的獨立簽名,因此事故發生後,你能確切知道是哪些金鑰簽了名。而且由於這些金鑰都是普通金鑰——在 Ownbit 多簽中,每位參與方都是一份標準的 BIP39 助記詞——恢復並不依賴任何公司的持續存在。比特幣多簽以這種方式守護資金已經超過十年。
代價同樣具體。更多的簽名意味著更大的交易與更高的手續費,儘管 taproot 已在比特幣上縮小了這個差距。審計師喜愛的公開策略,對手同樣看得見:一個 2-3 錢包等於在昭告天下自己是什麼。多簽必須逐鏈實作——比特幣腳本、EVM 合約、TRON 的原生方案、Solana 程式——而各實作的品質參差不齊。此外,在智能合約鏈上,合約本身就是攻擊面,這正是多簽合約程式碼應該開源並可供獨立審計的原因;Ownbit 公開自己的多簽合約,正是基於這一點。
MPC 與多簽:該如何選擇
當工作流程本身就是產品時,選擇 MPC:例如一個交易部門每天要在數十條鏈上執行數百次自動化簽名,並配有營運團隊、廠商合約與 SLA。在這種情境下,與鏈無關的簽名能力和分片輪換,確實對得起它們的複雜度,而對廠商的依賴也是一段經過談判的商業關係,而不是一場意外。同樣的邏輯也適用於交易所與支付處理商——在那樣的簽名量之下,無論採用哪種模型,逐筆人工審核都不切實際。
當策略必須讓彼此並不完全信任的人——共同創辦人、生意夥伴、家庭成員——都能驗證,或者必須比所有相關公司都存續得更久時,選擇多簽。如果兩位合夥人想要的是證明、而不是保證——證明任何一方都無法獨自動用金庫資金——鏈上的 2-3 就能提供這一點,而且多年之後,他們任何一方都可以用區塊鏈瀏覽器確認這套安排,無需徵得任何人的同意。至於需要在門檻之上建立組織結構的機構,企業多簽提供了擁有者與簽名人角色、簽名人權重、花費限額與地址白名單。
還有兩點能讓這個選擇保持誠實。第一,兩種方案可以組合:鏈上多簽中的某一位簽名人,本身就可以是一套 MPC 配置,有些團隊正是以這樣的混合架構在運作。第二,兩種方案治的都是同一種病根——作為單點故障的單一助記詞——但它們用來替代的東西並不相同:多簽用的是幾份你可以隨意選擇備份方式的標準助記詞,MPC 用的則是必須按照廠商規矩備份的廠商格式分片。
那麼,MPC 與多簽的誠實總結是:MPC 買到營運彈性與隱私,付出的是可驗證性與廠商依賴;多簽買到可驗證性與獨立性,付出的是手續費、隱私與逐鏈的工程成本。決定你更願意用哪種貨幣付帳——只有當失效模式是你能理解的失效模式時,資金才真正屬於你。
常見問題
MPC 比多簽更安全嗎?
兩者都不存在絕對意義上的更安全;它們只是以不同的方式失效。MPC 消除了鏈上合約風險,但把信任集中在廠商的協定實作與基礎設施上,而且其門檻無法從外部驗證。多簽讓門檻公開可驗證、由鏈強制執行,但手續費更高,而且在智能合約鏈上還會增加合約風險。評判每套方案時,看的應該是它最壞的失效模式,而不是它最好的行銷話術。
MPC 錢包有助記詞嗎?
通常沒有標準意義上的助記詞。私鑰只以分散的分片形式存在,因此沒有一份可以抄寫下來的 BIP39 助記詞。這消除了一個單點故障,但備份與恢復也因此必須遵循廠商的專有格式與工具,而非開放標準。在依賴任何一款 MPC 錢包之前,先問清楚:如果這家廠商消失了,你要怎麼恢復資產。
沒有開發它的公司,多簽錢包還能恢復嗎?
可以,前提是它建立在標準之上。鏈上多簽由普通金鑰加上公開的腳本或合約定義,因此任何相容的軟體都能重建它並從中花費。Ownbit 多簽的金鑰是標準 BIP39 助記詞,合約是開源的,而且正是針對這種情境提供了自助恢復指南。
MPC 與多簽可以搭配使用嗎?
可以。兩者運作在不同的層次,因此鏈上多簽中的某一位參與方,可以將自己的金鑰以 MPC 分片的形式分散在多台裝置上持有。有些機構就把 MPC 簽名叢集用於日常營運,把鏈上多簽用於最深層的冷儲存,讓每種方案都用在其取捨最合適的地方。
如果你在這場取捨中站在可驗證的一端,Ownbit 多簽是一個實際上手的方式:用兩支手機加一位家人的裝置組成 2-3,每把金鑰都是一份標準助記詞,合約開源,新使用者還可享 7 天免費試用。無論會員狀態如何,你的金鑰與資產始終屬於你。