近幾年門限密碼學在區塊鏈系統里開始逐漸被應用,分為門限加密和門限簽名,一般見于隨機預言機、防審查、減少通信復雜度、共識網絡中防拜占庭以及作為分布式偽隨機數生成器的重要原語,其優越的資產協同防盜特性也慢慢被新興數字資產托管機制所重視,今天我們主要討論公鑰密碼學里的門限簽名機制。一種理想的門限簽名系統是可以在異步的網絡環境里做到容錯容災不可偽造,并且擁有極度可靠安全的消息傳輸通道,簽名份額的生成和驗證是完全非交互式的,在初始密鑰階段具備可以防止拜占庭行為的異步分布式密鑰生成機制。
與基礎簽名機制類似,門限簽名機制也分為兩部分:
門限密鑰生成:基于安全參數構造一種分布式密鑰生成協議DKG,協議運行輸出一個共同的公鑰pk和分屬不同參與方各自所有的私鑰份額ski,聚集起滿足閾值數量的私鑰份額可以構建出真正的私鑰sk。
門限簽名:基于分布式通信網絡,各參與方通過自己的私鑰份額ski完成對消息m的分布式協作簽署并輸出最終的可驗證簽名Sig(sk,m),這個簽名跟單獨用sk私鑰簽出的一模一樣,可以用所基于的基礎簽名機制里的驗證函數進行本地驗證,無需走通信交互驗證
聲音 | 比原鏈CEO朗豫:去中心化跨鏈將是未來公鏈的突破方向:比原鏈CEO朗豫今晚做客幣看大咖來了。在訪談中,朗豫表示:公鏈賽道是馬拉松, 需要長時間打磨,而且不能為路邊的各種光怪陸離所吸引停止腳步,難度還是挺大的。
朗豫稱未來公鏈能突破的很大的方向就是去中心化跨鏈, 和其他二層網絡的應用。技術社區有很多基于二層網絡做的存儲、云計算等,創意都非常好。公鏈現在的困境很大一部分是心態問題。[2019/10/17]
但是大多數情況下會通過使用一個可信的中心節點來實現私鑰份額的生成和分發。沙米爾秘密分享是最簡單的依賴中心dealer節點的門限密鑰生成方法,基本原理是拉格朗日插值,在(t,n)門限構造中,dealer會選擇一個(t-1)次方的隨機多項式f,令f(0)=s,s即為要分享的秘密值,然后向每個節點分發該多項式曲線上的點si=f(i)作為各自的秘密份額值,簡單來講,三個點確定一個二次方程曲線。為了解決中心作惡問題,人們又不斷探索了基于承諾的可驗證秘密分享,以及應用于異步網絡的VSS。有許多優秀成熟的commitmentscheme可以借鑒應用,簡單來講承諾算法=Com(pk,M,r)中pk是與承諾機制有關的公鑰,M是要承諾的原始值,r是一個隨機骰子,算法輸出的C便是commitment,D則是需要秘密保管的decommitment值,在正式公開M之前先公開M的承諾C,即先對自己要公布的消息做個上帝擔保,約束自己無法更換M,而對于M的受眾或者接收者,它們可以通過之前公布的承諾和驗證算法進行驗證唯一性。這里我們主要關注非交互式的VSS實現。
動態 | 比原鏈BaaS平臺Bystack白皮書正式發布:5月15日消息,比原鏈今日發布Bystack白皮書《全球首創一主多側架構BUTXO模型BaaS平臺》。據介紹,Bystack是比原鏈團隊首創的一主鏈多側鏈BUTXO模型BaaS平臺,能夠幫助用戶快速創建,管理和維護企業級區塊鏈網絡和商業區塊鏈應用的服務平臺,為開發者或企業提供區塊鏈能力的一站式解決方案。[2019/5/15]
此外,在過往的研究里,簽名的生成和驗證大多是交互式的,并且依賴一個同步通信網絡和廣播通道,節點們在某種設定下接收到特定消息后便同時啟動簽名協議,并嚴格遵循超時機制。而在互聯網環境和區塊鏈網絡里,對網絡假設的限定是有限的,所以門限系統要成功運作除了需要構造真正的DKG協議和非交互式簽名機制外,還需要具備商用級的網絡系統以及被驗證過的成熟代碼實現。這里我們嘗試提出并構建一種弱同步網絡假設下的門限簽名分布式系統,主要對網絡模型、DKG構建、簽名機制進行一些創新結合和應用,探索在實際網絡環境里最小可實用的門限簽名系統原型。
門限系統是一種型fault-tolerance系統,t代表網絡最大容錯,k代表最小門限值,n是節點數,一般設定k>=t+1,但這種對網絡分區是無能為力的,所以在一個異步拜占庭網絡里我們依然選用經典設定k=n-t&t<n/3去達成系統里的一個大多數共識。
聲音 | 比原鏈創始人:區塊鏈已開始在部分領域應用:在今日舉辦的2019中國·上海區塊鏈技術應用峰會上,比原鏈創始人段新星表示,如果現在認為區塊鏈已經成熟、馬上可以落地,過于樂觀。但是在部分領域,如慈善、多方計算等,區塊鏈應用已經開始。如剪裁過的聯盟鏈,未來一兩年就會比較快地普及。但是公有鏈的落地和成熟,現在還遠遠沒有看到。不過,這正顯示了區塊鏈的潛力。[2019/3/13]
門限網絡或者通信模型是實現可實用門限系統需要認真考量的一個關鍵點。像HoneyBadgerBFT所構建的接近異步通信網絡在現實案例中是少見的,一般會增加消息復雜度和通信輪次,異步網絡模型主要依賴所接收到的消息類型和數量進行判斷,因為時間因子并不能區分誰是慢節點誰是惡意節點。但在這里我們更傾向采用高效的弱同步網絡假設,即消息延遲和時鐘偏移有上限但未知,延遲的漸進是合理的,保障liveness;能夠對crash、networkfailure、byzantine等不同情況盡量做到分開處理,比如設置規定時間內可容忍的crash閾值,對于誠實節點發生crash后能夠從一個規定的狀態恢復等;并且假設網絡故障總能被修復、遭受的DoS攻擊總會停止;最后在構建通信通路上可以借助PKI和外部CA構建TLS鏈接,以及借助經典的RBC協議。
動態 | 比原鏈今日正式發布智能合約:今日,比原鏈Bytom(BTM)正式發布基于UTXO模型的智能合約。BTM全球現價0.3794美元,漲幅1.97%。[2018/7/26]
DKG是門限簽名最為核心的環節也是第一階段,負責完成門限密鑰的生成和分發。VSS是DKG的重要組成部分。上面提到VSS的基本原理是承諾機制,一般基于Pedersencommitment,構造形如C=mG+nH的承諾,其中m來自密鑰構造多項式f(x)系數,而n來自dealer另外構造的一個隨機多項式h(x)的系數,承諾集合{Ci,0<i<t}是一種公開可獲取的系數“證據”,用于證明dealer只承認一個合法的密鑰多項式。各個參與方在獲得dealer分發給自己的密鑰份額f(i)和秘密值份額h(i)后,計算f(i)G+h(i)H,如果與對應的承諾值相等,則認為合法,如果不一致,則認為dealer出現作惡行為,開始向網絡提交自己的抗議complaint,其他人可以進行驗證,如果發現事實如此,則立即停止協議,如果其他人驗證后發現該complaint不合法,則發起complaint的節點會被標記不可信。VSS過程簡單來講包括中心初始化密鑰分發、構建承諾和重建密鑰三部分內容,整個網絡交互存在兩輪全網廣播達成一致,最終將密鑰份額和承諾傳遞給每個參與節點,這里我們會定義三種消息類型用于標記多輪消息序列并攜帶足夠的信息用于計算門限密鑰。
ViaBTC礦池即將支持比原鏈挖礦:ViaBTC礦池發布公告稱即將支持比原鏈挖礦。比原鏈(Bytom)是一種多樣性比特資產的區塊鏈交互協議,運行在比原鏈上的不同類型資產(收益權、非上市股權、債權、數字貨幣等)可以通過該協議進行交換、對賭和基于智能合約的復雜性交互操作,是區塊鏈和人工智能結合的先行者。在比原鏈團隊的持續開發和測試后,比原鏈主網將于北京時間4月24日14:00正式上線。在此,ViaBTC礦池宣布即將支持比原鏈挖礦。[2018/4/23]
真正的DKG是需要去掉VSS里的那個中心,在分布式協作下生成秘密,避免單點泄漏風險,其原理也很簡單,相當于n個節點同時各自選擇秘密值并運行自己的VSS,每個節點收集來自其他節點的秘密份額完成組裝,組裝后的結果便是真正私鑰的份額,而各個合法節點各自分發的秘密值聚合起來便是最終的構造私鑰,最后在進行承諾驗證。這似乎很像一個Multi-valuedValidatedByzantineAgreement(MVBA)protocol。
不過我們盡量避免這種復雜的實現,一般通過選舉出Leader節點,統一協調處理這些VSS的完成情況和最終共識,定義序列,當大多數節點完成各自的VSS階段并被其他所有誠實節點所確認后,Leader將這些已完成的VSS信息進行收集并重組提案,再經過兩輪全網廣播后,每個節點便會確定下各自最終的秘密份額,因此保障liveness對于我們的系統是十分關鍵的。如果DKG協議里任何一方出現惡意行為,協議都會立即停止,即DKG需要確保所有參與方的誠實行為。至此,一把公共的門限公鑰和分屬不同參與方的門限私鑰份額便構造完畢。
簽名階段簡單來講是基于上面得到的密鑰份額各自完成簽署自己的簽名份額,最后再完成統一組裝,得到最終門限簽名。Thresh-Sig階段的具體實現與所基于的數字簽名算法有很大關系,例如Schnorr算法在計算簽名s值時所依賴的秘密值k在常數項,s=k-z(H(K||M)),所以可以簡單的將秘密值份額相組。而ECDSA中秘密值k是非線性的,即s=(H(M)+zr)/k,存在兩個秘密值的乘運算,所以各個節點不能僅通過擁有k秘密值份額來完成最終簽名值的組裝,需要對公式進行變形,重新定義組合秘密值kz,并分布式完成kz的秘密份額計算以及分發,甚至需要借助安全多方計算、同態加密機制以及零知識證明,因此多方的ECDSA門限簽名在實現和效率上會比較復雜,現階段以可實用的2-2方案研究居多。
不論是采用ECDSA還是Schnorr算法,最核心的問題依然是基于DKG和多方計算的原理去生成和分發簽名算法中需要的秘密值,每個參與方基于各自的密鑰份額和秘密值份額完成自己的簽名過程,最后通過整體的交互組裝獲得最終的合法簽名。同樣的,如果無法達到足夠門限閾值數量的合法簽名方,簽名協議也會立即停止。根據不同的應用場景需求,我們需要認真研究用于實現門限簽名機制的底層簽名算法,比如ECDSA、EdDSA、Schnorr、BLS等,不同的簽名算法對應的門限機制實現復雜度和效率是不同的。
此外,一個完整的門限系統可能會有成員變更的需求,原有的密鑰份額隨之需要新一輪變更,最直觀的做法是引入周期的概念,通過同步網絡和共識協議發起新一輪密鑰生成,產生新的主公鑰和私鑰份額,用超時機制防止阻塞。成員變更和DKG是一種比較精細的系統,任何一個成員fail或者fault都會引發狀況外。在實現上我們用狀態機復制原理構建門限節點,基于消息輸入更換自身狀態。
門限密碼學隨著結合應用場景的需求研究增多,不斷完善自身成熟度,尤其是隨著高度可靠的代碼實現增多,隨著復雜網絡環境里的系統架構成熟,有希望在價值網絡里扮演“門神”的重大作用,同時會促進對零知識證明、同態加密技術的進一步場景化應用,是當下區塊鏈新技術領域為數不多值得深入研究和實戰的研究方向。現代密碼學與價值網絡相輔相成,前者給予后者“上帝保障”,后者給予前者“偉大戰場”。
比原鏈研究院劉秋杉
9月初,Cointelegraph曾報道稱,以色列網絡安全初創公司GK8已經籌集了400萬美元,以為其離線加密貨幣交易解決方案提供資金.
1900/1/1 0:00:00一份Gartner的報告稱,2025年區塊鏈的商業增值服務將超過1760億美元,然后將在2030年超過3100億。毫無疑問,越來越多企業采用區塊鏈技術來為提高線上業務的安全性、及時性和可拓展性.
1900/1/1 0:00:00我們一步一步的講,先以最簡單的發電子郵件為例。現在A向B發出一封email,這封郵件是加密的,根據之前的公鑰加密原理也就是非對稱加密原理,B是收email的,那么,A就拿著B的公鑰加密這個ema.
1900/1/1 0:00:00作者:Chainalysis 編譯:互鏈脈搏 “在中國,幾乎100%的比特幣交易使用USDT。”密碼貨幣在中國流行已不是什么秘密.
1900/1/1 0:00:00導讀 本文于2017年發布于https://voxeu.org/article/benefits-central-bank-digital-currency,在這一知識高速發展的時代.
1900/1/1 0:00:00作者:趙雪嬌 來源:鋅鏈接 Libra與DCEP的較量已經展開。一邊,Libra團隊在全力加快開發進度,另一邊,中國央行數字貨幣也在進行閉環測試,并開始招兵買馬.
1900/1/1 0:00:00