作者:LelandLee和DevOzha
具有諷刺意味的是,一些市值數十億美元的加密貨幣本身并不支持多重簽名。其中m-of-n的簽名者需授權一筆交易。我們不需要審判,因為也許我們只設計了一把私鑰。但這不是我們想要生活的世界,因為誰都不想因為錯誤的智能合約或丟失的私匙,而損失數百萬美元。
今天,我們將研究各種適用于UTXO和帳戶模型的交易簽名多重簽名方案。請注意,一些方案仍在被積極研究當中,并且會有多種具有不同屬性的構造。如果讀者因本文涉及太多的技術內容,而不想看這些枯燥的東西,您可直接跳至“權衡空間”部分,查看各簽名方案的優劣勢。
在目前的情況下,現有的區塊鏈已采用了幾種不同的系統,讓多個所有者控制同一筆區塊鏈token,以太坊是基于智能合約,而比特幣則基于腳本。
基于智能合約的例子:以太坊、Tezos、EOS、Vechain、ETC;基于腳本的例子:比特幣、萊特幣、Iota、Cardano、Zcash、NEO、DASH、Decred;客戶端內置:恒星和瑞波;自定義密碼系統:GRIN和門羅;一、簽名是如何工作的
福建省福鼎市將區塊鏈技術滲透進茶葉全程可追溯體系:目前,福建省福鼎市全面推進大數據平臺建設和完善可追溯體系;天湖茶業也與廣東東方翠健康科技達成合作,聯合土壤檢測儀器廠商、土壤修復服務商和第三方檢測機構一起構建真實可信的監測體系,將生物科技與區塊鏈技術全面滲透進茶葉全程可追溯體系,政企合力共同推進福鼎白茶現代化生產進程。(閩東日報)[2020/3/25]
為了在任何區塊鏈上發送有效的交易,必須采取幾個步驟:
構造一筆有效交易;使用帳戶或UTXO的相應私鑰簽署交易;將簽名的交易提交到網絡;礦工核實交易和簽名;交易被放置到一個區塊當中,并更新相關的區塊鏈狀態;二、非密碼技術及其問題
智能合約:雖然基于智能合約的多重簽名帳戶提供了很大的靈活性,但從歷史上看,它們在代碼、語言、虛擬機和編譯器方面都存在缺陷。由于與人類有關的錯誤,數億美元的區塊鏈token被永久鎖定了。
腳本:與智能合約平臺不同,比特幣具有更原始的腳本語言。區別也很明顯:非圖靈完備、非編譯、沒有虛擬機,也沒有“狀態”的概念。這是否會使加密貨幣變得不那么有用,這一爭論將在其他地方展開。但更重要的是,其對多重簽名有特定的操作碼。在比特幣和比特幣相關分叉中,有一個特殊的腳本被稱為支付到腳本哈希,其被用于創建多重簽名帳戶。
比特幣的多重簽名地址和以太坊的多重簽名錢包都要求在發送交易時提交所有相關簽名。我們今天將探討的一些方案,只需要提交一個簽名,從而節省了寶貴的鏈上空間,并可能使地址與單個私鑰地址無法區分。
動態 | 《咬文嚼字》發布2019年十大流行語:區塊鏈上榜:《咬文嚼字》編輯部發布2019年十大流行語:文明互鑒、區塊鏈、硬核、融梗、××千萬條,××第一條、檸檬精、996、、我太難/南了、我不要你覺得,我要我覺得、霸凌主義。[2019/12/2]
三、各類加密簽名技術
在本文當中,我們會探索各種技術,將多重簽名添加到區塊鏈協議當中。注意,這些技術均不是什么萬能藥,因為每種方案都會存在各種權衡,在確定哪種技術最適合特定情況之前,我們需要去徹底探索。
1、沙米爾秘密共享算法
注:這不是經典意義上的多重簽名,盡管這里討論的是為其他形式的密碼多重簽名提供反例。
這里使用一個私鑰來派生n個碎片,其中的m是重建私鑰所需的。此方案通常用于密鑰恢復,如果用戶丟失了私鑰,則可使用用戶分發給不同朋友的碎片重建原始密鑰。但是,它不適用于多重簽名,這是因為:
必須生成私鑰才能派生碎片;在簽署交易之前,必須從碎片重新組裝私鑰;這意味著存在一個可信生成和重新組裝的步驟,這是一個故障點。另外,個人碎片持有者沒有發言權,他們提供的只是碎片。可信硬件可減輕可信生成和簽名問題,但這會導致諸如側通道攻擊、可用性等問題。
盡管如此,應注意SSS的一些獨特特性,其可在不修改基礎密鑰/私鑰的情況下創建盡可能多的不同的共享集。因此,如果Alice最初擁有10個秘密,而非朋友關系的Bob是一個秘密持有者,那么Alice可重新生成9個秘密,并將其交給其余的受信任方。
動態 | 韓國信息安全產業協會宣布于12月19日召開區塊鏈安全會議:據zdnet消息,韓國信息安全產業協會(KISIA)區塊鏈專家委員會今日宣布,將于12月19日在韓國科技廳舉行區塊鏈安全會議。國會政務委員會委員長minbyeongdu和國會第4次產業革命論壇共同代表、自由韓國黨議員songhuigyeong將出席此次會議。[2019/11/2]
2、門限ECDSA
在門限ECDSA方案中,我們消除了沙米爾方案存在的一個漏洞。在這里,我們描述了StevenGoldfeder在其ECDSAMPC論文中開創的一項最新建設,在密鑰生成和簽名效率方面,這項建設超過了以前的ECDSA工作。
使用分布式密鑰生成方案,所有密鑰持有者都參與一個交互過程,該過程為自己生成一個私鑰,并生成一個公鑰。這樣可確保任何一方都不會知道真正的私鑰。在此構造密鑰生成之前,只能使用一個可信方,因為對于大于兩個的參與方來說,計算時間太長了。
據目前所知的是,KeepNetwork和KzenNetworks在運用這種閾值ECDSA方案。
3、門限ED25519
動態 | 西南財經大學開設區塊鏈技術與加密數字貨幣課程:據中華網消息,近日,西南財經大學中國區塊鏈研究中心主任助理羅旭斌副教授在接受采訪中透露,西南財經大學繼上半年開設的研究生課程《區塊鏈技術》成功結課之后,下半年將面向全校本科生開設《區塊鏈技術與加密數字貨幣》課程,課程將主要講解區塊鏈的原理、發展歷程和未來前景,并利用比特幣、以太坊等具有代表性的案例來具體講解區塊鏈技術。[2018/6/26]
ECDSA的一個問題是,由于簽名算法的復雜性,閾值簽名是很復雜的。然而,對于其他簽名方案,如EdDSA,尤其是曲線Edwards25519,其簽名方案ED25519具有相對更有效和更直接的閾值簽名。用戶生成自己的密鑰,然后有一個聚合步驟來創建單個公鑰,交易簽名有三輪交互協議。
KzenNetworks已經為ED25519門限簽名實現了一個參考庫,恒星、NearProtocol以及Cosmos使用了相同的曲線,但不實現加密門限簽名。
4、Schnorr簽名
在比特幣中,Schnorr簽名是簽名聚合的一種形式。相比使用P2SH,其與密鑰數成線性增長關系,而簽名聚合允許使用恒定大小的簽名。驗證者不需要知道簽名者的個人公鑰,從而增加了隱私性。在這方面,Blockstream正大力推動將這種技術應用于比特幣。
上市公司將與TraNexus合作保護TraNexus區塊鏈引擎:上市公司WISeKey將為TraNexus區塊鏈平臺提供技術支持。TraNexus錢包將成為BTC,ETH,WISECoin和TNX的中央存儲位置,用戶可在應用程序內購買TNX,并能夠隨時與BCH和ETH進行轉換。[2018/4/18]
在Schnorr簽名方案論文中,有幾種方法可實現m-of-n多重簽名,并進行各種權衡,在某些方案中,用戶提供自己的密鑰,而在其他方案中,必須有一個DKG。一般來說,至少有一輪的密鑰生成和交易簽名通信,交易簽名也不能很好地擴展到大的m或n。
5、BLS簽名方案
所謂BLS簽名,其全稱為簽名方案,這種方案在大簽名集的情況下來說是非常有效的。也就是說,我們可以有2-of-10或2-of-1000多重簽名方案,而在設置和簽名時間上和普通簽名方案幾乎沒有任何區別。對于設置階段,唯一需要做的就是為每個私鑰生成成員密鑰,這只需要一輪通信因為用戶提供自己的私鑰,所以可以使用HD派生等技術來輕松管理多個密鑰。用戶離線簽署交易,單個聚合器匯總簽名并提交。
使用成員密鑰的這種特殊構造是相當新的,另一種方法是利用沙米爾秘密共享方案,但是需要一個可信方或DKG。BLS簽名方案的一個缺點在于,其簽名驗證會是緩慢的,它比ECDSA要慢上一個數量級。
四、權衡空間
當從遠處觀察這些技術時,我們可能會認為某些技術會優于其他技術。不幸的是,當我們潛入到權衡領域時,我們會發現,情況并非如此。一些技術對于較大的簽名者組而言更可取,一些技術則更適合于低帶寬環境。在這里,我們探索一個非詳盡的屬性列表,以分析以上各類技術。
原像:是否有必須拆分的私鑰?
可信設置:是否存在生成密鑰的單個實體,或者是否存在分布式密鑰生成方案?
檢測多重簽名:區塊鏈的查看者能否確定特定地址是否為多重簽名地址?
HD派生:是否可以為相關的加密過程設置硬件確定性密鑰?
權重:是否可以為特定的私鑰分配不同的權重?。
能見度
簽名者的隱私:區塊鏈的查看者能否確定誰是交易的特定簽名者?簽名大小:多重簽名交易是否需要更多的鏈上空間,空間大小是否隨簽名者的數量而變化?時間
密鑰生成時間:生成密鑰需要多長時間,密鑰生成時間是否根據參與方數量增加?密鑰生成回合:如果密鑰生成是交互的,參與者需要交互多少次?驗證時間:驗證簽名需要多長時間?簽名時間:簽署交易需要多長時間?簽名
交互式:簽署交易需要多少輪通信?曲線效率:盡管其中一些技術適用于所有曲線,但有必要考慮曲線效率和輔助因子選擇等問題。
圖:以上方案的權衡考慮,注意每個方案都有幾個構造,導致會有不同的屬性。
五、未來發展
盡管有很多不同的技術可以為區塊鏈啟用多重簽名帳戶,但我們必須認識到協議中的設計注意事項。其中一些技術需要更改底層協議,而另一些則不需要。協議設計者應意識到在用戶體驗和未來的密碼技術進步校對中的隱含權衡。
有趣的事實:簽名比發送交易有更多的用途。它們可用于權益證明系統中的區塊簽名、具有較小區塊鏈的聚合簽名以及交易壓縮。
六、有趣的問題
現在,您大概了解了一些關于加密多重簽名的知識,在決定實現協議時應選擇哪種簽名方案時,這里有一些問題是值得探討的:
是否存在希望能夠區分多重簽名帳戶和鏈上單個簽名帳戶的用例;門限密碼系統提供了一種屬性,在該屬性中,單個密鑰簽名者是未知的,這在哪里有益或有害?有沒有可能有一個允許選擇性公開的簽名方案,在某些交易公開簽名者,而在其他交易則不公開?有沒有可能有一個只顯示簽名者的一個子集而非全部簽名者的簽名方案?是否可能有一個方案,其中簽名方無法確定交互步驟中的其他簽名方是誰?當無法使用HD錢包時,密鑰管理如何工作?對于BLS方案,人們可使用HD密鑰,但是需要生成其他成員密鑰。當用戶丟失其成員密鑰時,協議應該是什么樣的?多重簽名應該完全位于加密領域,還是應該在智能合約/腳本和加密之間保持平衡?是否存在簽名大小根本不重要的情況,因為簽名被丟棄,或者存在一種新的壓縮形式?腳注
從技術上講,假設存在加密簽名,所有區塊鏈都具有原生多重簽名的形式。然而,對于任意的簽名算法,尋找一個有效的門限簽名方案是相當困難的。
zcash目前使用P2SH,在即將到來的Blossom更新中,它將切換到自定義加密結構。
GRIN是加密貨幣中唯一使用基于密碼學的多重簽名方案,類似于比特幣的保密交易。該方法的一個缺點是,其是按照他們的協議定制的,很難概括。
門羅幣只支持n-of-n和多重簽名方案,前者與Splitkey非常相似。
恒星有多重簽名,但沒有在密碼學中實現,而是通過使用他們的腳本語言來實現的。
注意,對于UTXO模型,有一個一次性交互步驟來生成公鑰,這對于用戶想要花費的解鎖腳本而言是必需的。
感謝TarunChitra、JoyceYang、DanRobinson、JeremyRubin、JeremiahAndrews和很多其他人對本文中提到的各種密碼技術進行的審查和解釋工作。
Tags:區塊鏈比特幣DSA區塊鏈工程專業學什么區塊鏈存證怎么弄區塊鏈技術發展現狀和趨勢比特幣中國官網聯系方式40億比特幣能提現嗎比特幣最新價格行情走勢DSA幣是什么幣
簡單來說 加密市值(TOTALCAP)在大幅上漲后停滯不前。比特幣(BTC)創建了一個中性的每周燭臺。ssv.network(SSV)從下行阻力線突破.
1900/1/1 0:00:00編者按 眾所周知,2010年一萬個BTC只能買到一個披薩,而如今它經歷了兩輪牛市,已經漲到現在的上萬美金一枚.
1900/1/1 0:00:0011:30 小蟻為何改名NEO? NEO這個項目是達鴻飛的團隊在2014年做的,他在2011年開始接觸比特幣,13年開始全職從事區塊鏈技術創新.
1900/1/1 0:00:00NO.1博傻只是一群傻瓜與另一群傻瓜的較量臨近月末,你可敢回首翹望五月的幣圈。刀光劍影,血雨腥風,幾分幽怨,幾分惆悵,難掩韭菜心酸淚。琴弦蕭洞,吟詞賦曲,些許愁思,些許癡狂,不解韭菜博傻夢.
1900/1/1 0:00:00自2002年奧特萊斯業態首次進入中國以來,奧特萊斯行業在促進內需增長、實現居民消費升級、發展數字經濟等方面發揮著越來越重要的作用,充當著零售行業排頭兵的角色.
1900/1/1 0:00:00編者按:區塊鏈(Blockchain)是比特幣的底層技術,像一個數據庫賬本,記載所有的交易記錄。區塊鏈在近年來成為熱詞,迸發出強大的生命力.
1900/1/1 0:00:00