編者注:關于“trusted”一詞,常見的翻譯是“可信”,例如“trustedthirdparty”翻成“可信第三方”,“trustedsetup”翻譯成“可信初始化”。然而我以為,翻譯成“可信”恰恰錯失了這個詞原本的意思,因為“trusted”一詞表達的并不是一種價值判斷,而是一種事實判斷,即協議的運行需要信任;作為一種修辭,它的作用是標記信任的錨點。舉例而言,帶有trustedthirdparty的協議,意味著協議的安全性依賴于一些第三方,他們的作為會影響協議的安全性,用戶在使用協議時也實質上信任了這些第三方不會違反協議。正因為如此,在翻譯尼克·薩博的《TrustedThirdPartiesareSecurityHoles》一文時,我就把“trusted”翻譯成“受信任的”。同樣地,在這篇文章中,我們同樣使用被動語態來翻譯“trusted”。
如果你沒有做好準備,那就是準備失敗。——《圣經世界》,1919
當你想要了解一個去中心化系統時,必須搞清楚的問題之一是:這個系統有要被信任的初始化階段么?
一個問題隨之而來:比特幣和以太坊有要被信任的初始化階段么?
許多分布式計算和密碼學協議都設計了一個初始化階段。對于一個多階段協議而言,被信任的初始化設置有其特殊性。我們稱第一個階段為初始化階段,第二個階段為主階段?。通常有兩個性質將初始化階段與主階段區分開來。
主階段通常會執行許多重復的任務。而初始化階段只需執行一次,就能開啟重復運行許多實例的主階段。
初始化階段通常都是?輸入無關的,也就是說,它根本不會使用來自各參與方的私有輸入。此外,有時候初始化階段甚至是?函數無關的,跟主階段各參與方想要計算什么函數根本無關;這一階段每個參與方都只知道自己想要計算某些函數。因此,我們通常將初始化階段和主階段分別稱為離線階段和在線階段
動態 | 印度版“誰想成為百萬富翁”節目提及Libra 主持人向觀眾解釋什么是加密貨幣:印度最受歡迎的真人秀節目Kaun Banega Crorepati(KBC)根據節目“誰想成為百萬富翁(Who Wants to Be a Millionaire)”改編而成。節目中一名參賽者被問到一個關于Facebook的Libra加密貨幣的問題,節目主持人Amitabh Bachchan繼續向數百萬觀眾解釋什么是加密貨幣。 Wazirx交易所首席執行官Nischal Shetty在節目發布后發推稱,“由于這個原因,數百萬印度人現在知道加密貨幣。”(Bitcoin.com)[2019/9/10]
你可以將初始化階段看作一個由完全可信的實體?T?運行的理想函數,理想到我們覺得無可挑剔。例如,假設公鑰基礎設施的安全性就意味著:我們假設存在一個完全可信的實體,每個參與方都向該實體提交自己的公開加密密鑰,然后該實體會把這些公鑰廣播給所有的參與方。在本文中,我們將通過研究各種初始化假設所用的理想函數,來回顧一下信任初始化的常見類型。
可以這樣來建模被信任的實體:存在一組初始的參與方?P1,...,Pn?和被信任的實體?T?交互。這些參與方可以發送輸入?x1,...,xn?給?T,而?T?反過來運行一些函數?F,產生輸出?y1,...,yn?,并將?yi?發送給?Pi。這一過程可能是“交互性”的,也就是說它可能重復許多次。由于這是在描述一個理想中的世界,因為我們總是假設各參與方與受信任的實體之間的通信信道是安全的。
在下文中,我們認為絕大多數函數都屬于以下五種類型之一:
沒有設置:這是最簡單的一種情況,我們實際上并不需要信任某些實體或某些初始化設置。最小通信假設是參與方可以訪問某種類型的通信媒介。不過,沒有設置很多時候也指代參與方的身份是全局知曉的這種設定。
聲音 | 趙長鵬:不明白為什么有人不接受加密貨幣支付:幣安創始人趙長鵬剛剛發推表示:對于任何基于互聯網(非物理)的業務,我不明白為什么有人不接受加密貨幣支付。與傳統的支付網關相比,(加密貨幣)集成更容易、更快和更便宜,同時減少文書工作,覆蓋更多樣化的人口和地理。[2019/2/3]
成對設置:在這種設置下,我們假設存在一些初始的參與方?P1,...,Pn,并且每兩個參與方之間都有可靠的通信信道。特別是,在最簡單的成對設置假設中,當參與方?Pi?在通道中收到一條消息時,它可以確認這條消息來自參與方?Pj?。
廣播設置:在這類設置中,我們假設不需要用到秘密。PKI設置就是一個典型的例子,它只需要用廣播來傳遞公鑰。
部分公開設置:經常被稱為公共參考串模型。許多密碼學協議都利用這一設置來提升效率。其中一個特殊的例子就是隨機信標。
完全私有設置:在安全多方計算協議的語境中通常被稱為?離線階段。這一類型中的初始化階段需要計算一個相當復雜的依賴各參與方的輸出。在SPDZ-2中創建OT和乘法三元組?的階段就是一個例子。
我們來詳細介紹一下這五種設置的變體,舉出一些案例并討論其優缺點。最后,我們也會討論一些初始化階段的潛在替代方案。我們使用n來表示系統中的參與方數量,使用f來表示故障的參與方數量。
1.沒有設置
當一個協議沒有需要被信任的初始化設置時,也就沒什么需要擔心的了。這類協議比較容易取得我們的信任。但另一方面,它們也存在固有的局限性。
沒有設置的環境有兩種形式:1)假設參與方之間彼此一無所知,有時也被稱為匿名通道模型,2)假設所有參與方的身份信息都是全局知曉的,這個假設在許多現實世界的應用中是完全可以接受的。但是,這兩種方式都缺乏經過認證的信息通道,敵人可以隨意地發起中間人攻擊。
聲音 | 趙長鵬在推特發文:引發下一波牛市的到底是什么:趙長鵬發布推文問到:到底什么才是引發下一波牛市的關鍵事件呢?他同時表示自己并不知道答案,只是會經常在推特上跟大家討論。孫宇晨則轉發推文表示,下一波引爆牛市浪潮的將會是 DApp的爆發。[2018/12/8]
在傳統的密碼學中,這類模型的開創性研究是由Dolev、Dwork和Naor提出的,用于不可延展的加密算法和零知識等特定任務,后來被Barak等人?推廣到了任意計算。
匿名模型的另一個研究方向基于對敵手能力的更精確假設,也就是說,該假設限制了敵人和誠實參與方的計算能力比例。已有研究證明,在這樣的模型中,從頭開始構建一個有限的PKI模型是有可能的。案例可以參見Aspnes,Jackson和Krishnamurthy,以及少數直接受到比特幣類型謎題啟發的方法。
2.成對設置
在成對設置中,我們假設每一對參與方之間的通信信道是經過認證的。這是分布式密碼學和分布式計算中的經典假設。Fisher、Lynch和Merritt在1985年研究了在這種設置下,參與者數量相對于敵手數量的下界:當n<=3f時,即便使用了這種設置,即便敵手的資源假設是傳統的多項式有界假設,也不可能達成哪怕是弱形式的拜占庭共識。
而另一方面,當n>3f時,成對設置可以完美實現任何函數。這是Ben-Or、Goldwasser和Widgerson在1988年發表的著名研究成果,詳細的證明請看Asharov和Lindell。
3.廣播設置
廣播意味著即便可信實體是“透明的”,也就是說,該實體所接收/發送的所有輸入/輸出以及它的隨機字符串都是公開的,系統的安全性也不會受到損害。典型的例子就是那些使用一個被信任的實體來廣播所有參與方公鑰的協議。
動態 | 央行研究論文:區塊鏈能做什么不能做什么?:中國人民銀行發布工作論文稱:目前真正落地并產生社會效益的區塊鏈項目很少,除了區塊鏈物理性能不高以外,區塊鏈經濟功能的短板也是重要原因。應在持續研究和試驗的基礎上,理性客觀評估區塊鏈能做什么、不能做什么。不要夸大或迷信區塊鏈的功能。區塊鏈應用要立足實際情況。目前區塊鏈投融資領域泡沫明顯。[2018/11/6]
使用PKI既可以提高異步拜占庭協議的復雜性,也可以將同步拜占庭協議的容錯能力提升至n=2f1。
請注意,此處存在循環論證的風險:有了PKI設置,就可以分別在n=2f1時實現同步模型中的拜占庭共識,還能在n=f1時實現拜占庭廣播。但如果沒有PKI設置,那么初始化PKI的廣播環境需滿足n>3f。
優點:完全公開設置的一個重要優點就是它相對簡單,并且可以減少受攻擊面。
風險:這類設置的失敗通常會導致模棱兩可。給不同的參與方提供不同的密鑰可能會導致未來的協議失敗。
4.部分公開設置
部分公開意味著來自受信任實體?T?的輸出對所有參與方都公開,然而可能要求參與方的輸入?x1,...,xn?和?T?的隨機字符串?r?應當保密。例如,設想一個持續接受用戶消息、并需要在未來那么某個時間?t?將所有消息一次性全部顯示出來的系統。這樣一個系統可以使用如下初始化設置:函數?F?不接收任何來自參與方的輸入,并執行如下操作:生成用于加密機制的密鑰對,然后生成一個Rivest、Shamir和Wagner?時間鎖謎題?p,用于在到達時間?t?之前隱藏?sk;最后,向各參與方輸出謎題?p?和加密密鑰?pk,從而結束初始化階段。在主階段,用戶可以使用?pk?加密他們的消息并廣播。此外,他們開始解決謎題以在時間?t?內獲得解密密鑰?sk,從而解密所有消息。請注意函數?F?的所有輸出都是對參與方公開的,但這個被信任的實體的內部狀態的隨機字符串)必須保密。
和菜頭:在一個新場子什么韭菜都沒有,那你就是那根韭菜:昨晚和菜頭公眾號發文稱,春節前后,朋友圈平均每天都能看到2~3條關于比特幣或者區塊鏈的內容。現在,這個數量還在持續增長,而且開始向群里蔓延。關于“韭菜”和菜頭文中提及:我去買了本阿爾文德的《區塊鏈:技術驅動金融》來自學。看了三分之一之后,我非常確定一件事情:在這一輪由比特幣而起的區塊鏈熱潮里,我就是根“韭菜”。在一個新興的場子里,如何確定自己的地位?去找周圍有什么韭菜沒有。如果一根韭菜都找不到,那么,你自己就是那根韭菜。[2018/3/1]
信任一個帶有秘密值的預計算流程通常效益顯著。此類設置的風險是,系統的屬性現在依賴于初始化階段的隱私性。而在初始化過程中想要檢測信息泄漏事件是非常困難的。
要求初始化過程公開一個公共值的好處是更容易確保這一屬性。這一模型通常被稱為公共參考串模型。這里我們舉兩個例子:
針對高效可驗證秘密共享的設置——?Kate、Zaverucha和Goldberg?提出了一種機制,該機制要求一個信任初始化階段來生成一個隨機的公開生成器?g?和一個私鑰α。然后,初始化階段以?g(ai)?的形式廣播冪。使用這一設置,可以獲得最高效的異步可驗證秘密共享機制。
針對高效零知識證明的設置——少數高效的零知識協議要求CRS設置。要讓這種初始化過程值得被信任,通常需要一些難度較大的MPC協議。比如,參見Bowe、Gabizon和Miers。實際上,僅僅運行一個MPC協議是遠遠不夠的,通常來說,必須進行一個完整的初始化儀式才能建立公開的可驗證性。
5.完全私有設置
這是最通用的一種初始化形式,即便是函數發送給各參與方的輸出也是彼此保密的。顯然,該設置最大的優點就是允許在它們之上運行強大的協議。此類初始化的實例化相當復雜,并且面臨更大的受攻擊面。
我們在這里集中討論兩種實例:分布式密鑰生成和安全多方計算的離線階段。
分布式密鑰生成和門限簽名設置
門限簽名機制通常在降低詞語復雜度和減少總計算開銷上表現突出。而門限簽名的問題在于該機制要求有個初始化過程,通常被稱為分布式密鑰生成初始化。
DKG函數只從每個參與方那里接收隨機的比特,生成一個密鑰對,然后輸出?pk?給所有人并單獨分享?sk?給每個參與方,使得參與方?Pi?收到?ski,sk?在每個參與方之間必須保密。
風險:在這一初始化過程中,有兩個地方可能會失敗。一是當共謀者數量達到門限值時秘密將會泄漏,二是某些參與方可能會收到錯誤的?sk。參與方有多種方式來驗證其收到的?sk?的有效性,因此主要的風險發生在參與方掉線時。
安全計算的可信設置
安全多方計算協議允許一組數量為?n?的參與方?P1,...,Pn?基于他們私有輸入?x1,...,xn?去計算一個電路?C,然后只顯示輸出?y?=?C。例如,電路?C?可以計算所有輸入之和。
最新的MPC協議都被設計成離線-在線兩階段運作,其中離線是用于初始化階段的,通常是完全保密的。一個常見的例子就是向各參與方共享乘法三元組的信任初始化階段。具體來說,該初始化過程隨機將?ai?、bi?和?ci?發給參與方?Pi,且(a1?…?an?)·(b1?…?bn)=(c1?…?cn?)。然后,在協議的主階段,參與方分享他們的輸入,也就是說,參與方?Pi?通過向?Pj?發送?x'j?使得?x'1?...?x'n?=?x'?來分享他的輸入?x'。現在,各個參與方都可根據被共享的數值進行任何算術運算,也就是說,給定一個共享的秘密值?x?和?y,如果參與方?Pi?持有?xi?和?yi?使得?x1?...?xn?=?x?且?y1?...?yn?=?y,那么各參與方可以執行以下流程:
開始——給定一組共享的x1,...,xn?,使得每個參與方都可以獲得?x?=?x1?...?xn。
加法/減法——各參與方?Pi?通過在本地計算?zi?=?xi??yi?,可以計算出一個共享的?z=xy。因為這遵循?z1?...?zn?=。
縮放——給定一個所有參與方都知曉的值?c,他們就可以通過每個參與方在本地計算?zi?=?cxi?來計算一個共享的?z=cx。同樣的,它也遵循?z1?...?zn?==?c=?cx。
乘法——各參與方通過放棄來自初始化階段的單個乘法三元組可以計算出一個共享的?z=xy。簡單起見,我們用來表示。參與方都擁有共享的、和來自初始化階段的三元組、、。各參與方分別計算=-和=-。由于?a?和?b?的值是由初始化設置統一選擇的,因此?s?和?t?的值也是統一的,所以該過程不會泄漏任何關于?x?和?y?的信息。然后,這些參與方計算=stst?。此過程僅包括縮放和加/減法計算,因此可以由每個參與方在本地計算來獲得共享的=。
風險和優勢:如上所述,這樣一個初始化階段的受攻擊面極大。初始化階段的輸出必須保密,也就是說,在上面的乘法過程中,要注意如果一些持有?t?的參與方結盟,獲得了所有參與方共享的?a1,…,an,那么他們就可以通過計算=-算出秘密值?x。請注意,在此類初始化階段中并不是只要做好保密就萬事大吉了,我們還必須確保三元組都是正確的,也就是說,ab?必須等于?c,否則計算的輸出就會出錯。保護三元組不被泄漏以及不受到惡意參與方的影響是一項艱巨的任務,因此會給MPC協議帶來巨大的成本。另一方面,由于初始化階段已經輸出了乘法三元組,因此協議的主階段將變得非常快。
存在對被信任的初始化階段的替代方案么?
在最后,我們提及幾種潛在的替代方案:
一次性將大量的信任從系統中的在線階段轉移到了某個歷史性的離線階段。這引入了新的風險和安全漏洞。一種潛在的替代方案是使用一個永不停歇的初始化階段。在此類機制中,存在一種不斷可更新的CRS。最近的一個案例是SONIC。
另一種方案是使用多次初始化來生成多個公共參考串。在這種方案中,我們只假設一部分設置是忠實完成的。參見GrothandOstrovsky。
最近數字貨幣和黃金都在漲,你是不是在考慮要如何入場?何時入場?點擊了解如何購買BTC/ETH此篇文章介紹了導致黃金和比特幣上漲的因素 黃金“兩千”時代到來: 黃金上漲,說白了就是世界越動蕩.
1900/1/1 0:00:00在區塊鏈的世界里,超級賬本和都產生了創新的浪潮。這兩個流行的開源區塊鏈平臺在行業中不僅發現了大量區塊鏈應用,而且它們還鼓勵世界各地的區塊鏈開發者參與區塊鏈架構和區塊鏈工具的協作開發.
1900/1/1 0:00:00慧子預言:合約知識講堂 重要通知:聞道有先后,術業有專攻,專注于股市,期貨,數字貨幣等投資產品技術指導,擁有短線之王稱號,可根據資金倉位合理規劃布局中長線,每周三,周五.
1900/1/1 0:00:00各位朋友們,你們好,我是阿帆老師(aftb88888)。阿帆本著負責、誠懇、認真的態度用心寫好每一篇分析文章,特點鮮明,不夸張,不含糊,力求能讓大家看懂大的趨勢分析以及小范圍的多空搏殺力度!本內.
1900/1/1 0:00:00順勢對沖策略基礎名詞解釋 一、打開窗口 1.首次啟動時 首次啟動某個貨幣對的自動交易時,可在該貨幣對的右鍵菜單中,點擊選項,在窗口中點擊,進入窗口,進行首次交易參數配置,如上圖所示.
1900/1/1 0:00:00今年6月,有媒體報道稱一場大范圍的“凍卡潮”正在席卷幣圈,引發行業交易者關注和恐慌。彼時,大量未經證實的謠言在社群內流傳,讓公眾對火幣、OKex、幣安等主流交易所的OTC交易產生擔憂.
1900/1/1 0:00:00