比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

解密動態成員多方簽名如何確認共識_LST

Author:

Time:1900/1/1 0:00:00

注:本文檔已于2015年3月進行了大量修改。舊版本可以在

?https://download.wpsoftware.net/bitcoin/old-pos.pdf找到。

引言

2009年,中本聰創造了比特幣。比特幣是一種互聯網貨幣系統,可以實現點對點的數字代幣轉賬。為確保所有人就代幣所有權達成共識,中本聰采用了一種可由所有網絡參與者復制并驗證的公共賬本。為了避免單點故障,該賬本采用一種動態成員多方簽名機制來證實,即,在每次“心跳”時對整個賬本歷史執行一次高成本計算。

不同于傳統的數字簽名,DMMS中沒有“可偽造性”的概念。每個DMMS的創建成本都很高,并且,這種行為可以得到賬本上增發的新貨幣作為獎勵。由于這些新代幣必須得到其他人的認可才有用,參與者會受到激勵來共同擴展“真正的賬本”,而非自行創建賬本?1。

由于比特幣的DMMS在計算和熱力學方面成本非常高,人們已經提出了其它更為經濟環保的方案。最常被提議的方案是PoS,它是一種低成本的分布式共識機制。正如AndrewPoelstra在2014年所言,PoS是不可行的,但還是涌現出各種形式的PoS方案。與此同時,各種論壇上經常有人聲稱Poelstra的論點是“虛假”或“錯誤”的,盡管他們從來沒有提出任何有說服力的反例或錯誤。此外,也有人給出了中肯的意見,認為Poelstra的這篇論文寫得晦澀枯燥。由此可見,這篇論文還有許多不足之處。雖然Poelstra沒有發現他的前作有任何不準確之處,但是他準備借此機會進一步地正式闡述他的論點。

相比Poelstra撰寫論文時,人們對比特幣共識的科學認識已經有了巨大進步。

本文旨在更新Poelstra的論文,闡明比特幣所解決的問題,PoS背后的設計原理,以及PoS之類的機制無法在比特幣的信任模型中產生分布式共識的原因。

注1:為了確保所有參與者都可以看到“真正的賬本”,我們需要一個同步網絡:所有數據都能在一定的時間長度λ內到達所有參與者,而且網絡心跳時間比λ長得多。如果沒有同步網絡,分布式共識的難度會大得多。

維基解密在線商店已接受比特幣等作為付款方式:維基解密(WikiLeaks)官方在線商店現已接受比特幣和其他主流加密貨幣作為支付方式。

據悉,該商店主要出售官方T恤等物品,所有收益將用于資助維基解密的運營。截至周二,該商店還通過閃電網絡接受比特幣支付,這使其成為最早接受比特幣支付的供應商之一。(Coindesk)[2020/7/10]

分布式共識

在討論比特幣對于分布式共識問題的解決方案之前,我們首先要理解這個問題的本質。分布式共識是一種彼此之間缺乏信任的參與方之間達成的共識。這些參與方都是匿名的,而且在系統建立時并不一定存在。正如Poelstra在其論文中所解釋的那樣:

就密碼學貨幣而言,僅在交易的時間順序上達成分布式共識就足夠了,即,就“第一個轉移特定資金的交易達成共識”。這樣可以確保整個網絡都認可新的資金所有者。

之所以需要達成這種共識,是為了防止?重復花費?問題。在所有去中心化數字貨幣機制中,都有可能出現付款方將同一筆資金發送給兩個不同的人的情況,而且這兩筆交易看起來都是有效的。因此,收款方需要能夠確保沒有發生沖突,或者在有沖突的情況下,網絡會認可其交易為正確版本。就交易順序達成分布式共識可以實現這一目的:在發生沖突的情況下,每個人都認可第一筆交易是有效的,其余交易是無效的。

重點是,我們應該意識到,盡管分布式共識是個難題,但是普通共識更加容易,經過了更深入的研究,而且使用受信任且可識別的簽名方可以將效率提高數萬億倍。因此,引入了受信任方的密碼學貨幣都應該考慮的一點是,其新型信任模型是不是能幫助降低達成共識的難度。對更高效的、具備受信任方的共識機制感興趣的讀者可以研究一下。

動態成員多方簽名

比特幣的賬本是公開可用的,比特幣網絡中的所有參與者都可以驗證賬本上每筆交易的有效性。然而,由于賬本在根本上屬于歷史記錄,密碼學無法辨別真偽,必須要有人來證明賬本,而且其他人必須相信這個人不會簽署錯誤的歷史。

最早的數字現金系統都由單個非匿名者簽署所有交易。然而,這樣不僅為系統引入了單點故障風險,而且可以讓簽署方審查交易或發起重復花費。雖然我們可以采用盲簽名來防止審查制度,但是無法防范單點故障和重復花費問題。多方簽名或許有可以解決后面兩個問題,但是所有簽名方難以同時遭到脅迫與所有簽名方必須得到所有參與者的信任這兩個要求是相互沖突的。非匿名性也意味著,特定攻擊者總能持續攻擊系統。

阿桑奇父親:維基解密的性質與以太坊類似:維基解密創始人朱利安·阿桑奇(Julian Assange)的父親John Shipton在巴黎EthCC論壇上發表演講稱:“維基解密的性質與以太坊類似,維基百科是一個通過用戶間的合作來建立唯一真理來源的網站,而以太坊則是朝著同樣的目的努力,盡管是在交易層面。”此外,Shipton還證實了一個傳聞,即阿桑奇為知名加密貨幣游戲Cryptokitties的粉絲和用戶。(Decrypt)[2020/3/5]

比特幣的解決方案是完全去掉固定且可識別的簽名者。比特幣的賬本由一組被稱為礦工的簽名者驗證,他們不向其它參與者公開自己的身份,或許還可以零成本進入或退出系統。礦工通過叫做“挖礦”?的過程來生成簽名。在挖礦過程中,他們會共同為連續的、由交易數據組成的區塊生成?工作量證明?。

在本節中,我們將解釋挖礦是如何運作以及如何提供驗證的。

匿名世界里的鑒別

密碼學數字簽名機制的運作原理如下。簽名方生成“簽名”和“驗證”密鑰對,并將v連同其姓名一起發布在某個公共渠道上。該簽名方可以根據給定消息m生成簽名σ,任何人都可以驗證σ的有效性。也就是說,將v,m和σ輸入驗證算法,如果簽名是有效的,總是會輸出1。

為了安全起見,傳統數字簽名必須具備抗偽造性,即,任何計算能力有限的攻擊者偽造簽名的概率都微乎其微。具體而言,“偽造”指的是能在下列游戲中勝出:

簽名者將驗證密鑰v交給攻擊者。

攻擊者將消息m_i發送給簽名者,并收到這些消息的有效簽名σ_i。攻擊者可以多次重復該操作。

攻擊者生成一個新的消息m連同一個基于m的有效簽名σ。

這種安全性被稱為?選擇明文攻擊下的不可偽造性,是密碼學文獻中的常見標準。

在多方簽名機制中,每個簽名者都有一個驗證密鑰。只有簽名者的“可采信子集”生成的簽名才有效。在定義安全性時,上述游戲經過了修改,允許攻擊者請求簽名密鑰,只要該攻擊者獲得的密鑰無法組成“可采信子集”即可。

動態 | 大多數勒索軟件解決方案提供商通過向黑客支付加密贖金獲得解密工具:據coindesk報道,ProPublica的一項新研究發現,大多數勒索軟件解決方案提供商實際上只是向黑客支付加密貨幣費用。據公司電子郵件和前客戶的說法,Proven Data承諾通過“最新技術”解鎖數據來幫助勒索軟件的受害者。然而,根據Storfer和ProPublica獲得的FBI宣誓書,該公司是通過支付贖金從網絡攻擊者那里獲得了解密工具。MonsterCloud也表示使用的是自己的數據恢復方法,但實際卻是支付贖金,有時并沒有通知受害者,比如當地執法機構等。[2019/5/16]

可以看出,驗證算法使用驗證密鑰v來驗證簽名,并通過這種方式來驗證簽名者的“身份”。由于任何人都可以創建密鑰對,若想簽名具有價值,必須通過公共記錄將驗證密鑰與簽名者的真實身份聯系起來。如果出現失信行為,失信方會被問責。

這樣來看,身份鑒別并不適用于簽名者匿名且不固定的系統。事實上,我們還不清楚“身份鑒別”在這類系統中能發揮什么作用!如果任何人都能以匿名方式生成簽名,就無法區分誠實的簽名和不誠實的簽名、真實的歷史和虛假的歷史。那么上述安全性定義就喪失了意義,因為攻擊者可以自由加入簽名者集,并“偽造簽名”2。

為了解決這一問題,比特幣采用了另一種安全模型。在該模型中,所有參與者都平等,但是他們會在經濟激勵下保持誠實。在下一部分,我們將介紹該安全模型。

注2:正如我們在第四部分所見,如果是密碼學貨幣,匿名參與方就有可能鎖定保證金,并通過某種機制在無需確認任何人的身份的情況下,懲罰失信行為者。這實際上就是權益證明。然而,密碼學貨幣離不開共識,因此“如果是密碼學貨幣”這個前提導致我們在這里無法使用權益證明,否則就會陷入循環推理。我們會在下一部分解決這個問題。

為DMMS定義安全性

就DMMS而言,所有參與方都是平等的;無法通過讓“敵手”僅擁有不完全知識來獲得安全性。因此,我們使用以下三部分定義了DMMS。這些部分都不同于傳統簽名的密鑰生成算法:

分析 | 金色盤面:市場反彈性質解密:金色盤面綜合分析:據圖中總市值占比顯示,BTC在8月14日之后持續下降,這就表明資金從BTC里面出逃,流入其他幣種進行套利。而從市場價格對比,可以發現,目前BTC已經回到7月15日的價格水平,但是市場總市值只有2236億美元,比起7月14日的2495美元下降了10%,而剔除BTC的總市值卻下降了22%,從1415億美元下降到1100億美元。目前看反彈的動力大概率來自于當初出逃的這300億美金,而增量資金是否入場,我們還需要進一步觀察。[2018/8/18]

使用代價函數c來追蹤算法的執行并輸出“代價”t∈?,其中?是某個“代價域”。該函數必須是線性的,因為連續運行兩個算法的成本是它們各自成本的總和。

隨機化算法AttemptSign將消息m作為輸入,輸入簽名σ。輸入任何消息m,該算法的代價都應該是1。

確定性算法Verify將消息m、簽名σ和目標代價T作為輸入,輸出0或1。

當且僅當Verify(m,T,AttempSign(m))=1對所有屬于?的T都有1/T的概率成立,則我們說該DMMS是正確的,這個概率是由AtemptSign算法來保證的;當且僅當任意多項式算法?實現Verify(m,T,A(m))=1的概率都不超過1?(1?1/T)t,則我們說這樣的DMMS是安全的。

換言之,安全的DMMS指的是沒有比重復執行AttemptSign更好的簽名算法。

我們簡要論證了我們的安全性定義。為了實現動態成員集合,我們不能讓參與成本過于昂貴,也不能讓已有簽名者通過顯而易見的手段或經濟因素排斥新加入的簽名者。這就意味著,簽名過程應該是“可分割的”,既不需要也不激勵簽名者之間進行任何通信。也就是說,花兩倍長的時間運行一個簽名算法應該與在同樣的兩個硬件上并行運行該簽名算法的成功概率一樣高。在極端情況下,這意味著最好的簽名算法應該由對單一基礎步驟的重復、獨立執行來組成,這是由定義推導出來的。

挖礦機制作為一種DMMS

針對加密貨幣勒索的GandCrab病 360已集成解密工具:近期,GandCrab勒索病在國內流行度頗高,它會加密圖片、文檔、視頻、壓縮包等文件類型,在原文件名之后加上.GDCB后綴,再向受害者勒索價值約1200美元的達世幣贖金。這也是首個使用達世幣作為贖金的勒索病。360安全衛士“解密大師”根據國外流出的解密私鑰,已第一時間集成解密工具,可破解目前主流的GandCrab病,幫助中招者一鍵掃描并解密恢復文件。[2018/3/7]

比特幣挖礦采用的是基于哈希函數的工作量證明算法hashcash。這是一種使用隨機數神諭模型的DMMS。作為一種計算模型,隨機神諭是指,該模型把哈希函數當成一個“隨機數神諭”,或者說真隨機函數?3,其輸出都是純然隨機的,而且只有通過該函數才能計算出來。

雖然隨機數神諭模型的使用引起了很多爭議,但是有力的實證證據證實了它可以用來保障安全性。下文中,H指的是輸入可多達256位的哈希函數,它被當成是一個隨機數神諭。

比特幣的DMMS如下:

代價函數給出執行中調用隨機數神諭的次數。

AttemptSign將消息m作為輸入,并輸出隨機數σ∈{0,1}?256。

Verify將簽名σ、消息m和目標T作為輸入。僅當H(m||σ)<2256/T時,輸出1。

不難看出,在隨機數神諭模型中,沒有比重復運行哈希函數更好的創建有效簽名的方法。

注3:該模型是完全不現實的,因為真正的隨機函數,from,say,512bitsto256bits,平均需要2512·256位來表示,已經超過了目前已知的表達極限。

沒有世界時間

請注意,在上一部分,我們將哈希函數調用的數量作為我們的代價函數,它與計算次數大致成正比,而計算次數又與散熱量大致成正比。最后,散熱量與創建這些簽名的經濟和環境成本大致成正比。

一個顯而易見的問題是,我們是否可以采用“成本更低”的代價函數?尤其是,為什么我們不能直接使用時鐘時間?為什么我們使用DMMS對區塊進行簽名來創建區塊鏈,而非直接按照時間順序對交易進行排序來解決共識沖突?

答案是,分布式系統中缺少明確定義的時鐘時間。網絡延遲限制了信息的傳播速度。根據狹義相對論可知,如果是幾乎同時發生的事件,不同的觀察者無法就其時間順序達成共識。

如果只是這個問題,那么要求每筆交易之間間隔幾秒鐘即可。但是,實際情況會更加糟糕,原因有兩點:

“網絡延遲”在惡意環境中無法得到限制。攻擊者或能使用拒絕服務攻擊來任意降低系統速度,并通過其它方式對網絡進行物理分區。

用相對論來說,這意味著無論將等待時間設為多久,都無法確保參與者不會與網絡中的其他參與者類空分離。

新加入網絡或最近離線的用戶需要訪問歷史數據。但是,沒有辦法可以事后驗證交易發生的順序,因此在出現交易沖突的情況下,用戶無法保證他們收到的交易是先發生的。

來自DMMS的共識

既然我們已經了解了DMMS,并解釋了為什么比特幣的hashcash是一個安全的算法,接著來思考如何通過DMMS實現分布式共識。

我們的主張是,通過DMMS實現分布式共識是有可能的。

我們首先需要通過我們的代價函數來衡量某種無法一次為多個消息創建簽名的稀缺資源,和創建簽名所需的平均時間。

以比特幣為例,我們的代價函數的定義是“哈希函數調用的次數”。我們主張,該函數實際上用來衡量計算簽名所需消耗的能源,并且得到了Landauerlimit的論證。從物理學上來說,所謂的能源,就是任意不可逆的位操作所需消耗的最低熱量。通過計算sha256計算中涉及的不可逆位操作的數量,我們可以為創建一個比特幣DMMS所需消耗的能源量設定下限。

代價函數也可以用來衡量創建簽名所需的時間,因為每單位時間只能消耗一定量的能源,除非你去制造黑洞。當然了,在現實生活中,比特幣礦工不會在接近黑洞極限的情況下操作,而且所需時間取決于挖礦硬件的速度。隨著挖礦硬件的改進,以及同時在線的硬件數量增多,創建DMMS所需的時間減少。在比特幣中,目標代價會根據這一情況進行調整,將創建每個簽名所需的時間保持在10分鐘左右?4。

注4:鑒于3.4中提到的無世界時間,讀者可能會想知道如何準確調整時間。實際上,時間戳是由礦工插入區塊的,而且確實沒有任何方法可以防止礦工弄虛作假。比特幣可以抵御不實時間戳導致的較小目標偏離,并且也禁止了目標過快地發生變化。因此,想要制造大幅的目標偏離是非常昂貴的,而且有可能遭到不配合的礦工的阻撓。關于更多討論,請參閱。

那么,有了一個可以通過代價函數來衡量稀缺資源的安全DMMS,我們該如何獲得共識歷史?首先,我們假設網絡是同步的,因此參與者可以在一定時間λ內獲得所有有效數據。我們將交易歷史分割成一系列區塊,其中每個區塊都包含一系列交易,以及前一個區塊的密碼學承諾?5。每個有效區塊必須擁有一個已經設定好目標的DMMS,且目標使得創建區塊所需的時間比λ長的多。需要明確的是,每個DMMS的目標代價是由系統規則定義的,不由礦工決定。

注5:承諾是一種密碼學對象,由某個秘密數據計算得出,但是不會泄漏該數據,因此該數據在事后無法修改。抗碰撞哈希函數就是一例:給定數據x,你可以先發布H(x),之后再公開x。驗證者可以使用公開的值計算H(x),來確認這個值是否與原始值相同。

網絡參與者的運作方式是:首先考慮以同一個創世塊開頭的所有有效區塊分支。然后計算每個區塊上的DMMS的目標成本總和得出每條區塊分支的重量。最重的區塊分支會被視為“真實的”歷史。

在創建區塊時,礦工根據自己的意愿選擇交易,并加入一個特殊的“獎勵交易”用來將其它交易的費用以及網絡定義的補貼分配給自己,再加上最新區塊的承諾,然后計算DMMS。如果另一名礦工創建并發布了一個區塊,礦工就會相應地更新他們的“真實歷史上的最新區塊”,并在自己所挖的區塊中改變承諾以適配這種變化。計算出一個DMMS之后,他們會把這個完成的區塊公布到網絡中。

我們主張這樣就能形成一個共識的歷史,是說整個網絡會漸進地對到底哪些區塊是真實歷史的一部分達成共識,而且不一致只會發生在最近的歷史中。具體的論述可見Miller和LaViolaJr.,但我們這里附上一個不那么正式的論證。

因為網絡是同步的,區塊傳輸的時間大大短于區塊生產的時間,所以所有參與者都能迅速認識到最重的歷史。

我們還進一步認為,網絡中的大部分參與者都會參與生產能延伸真實歷史的DMMS。一個優雅且正確的理由是由VitalikButerin提出的:因為“獎勵交易”當且僅當其區塊屬于真實歷史才會被大家接受,所以對每一個礦工來說,納什均衡就是服從絕大多數?6。

注6:也是在同一篇文章里,Buterin說:“要是你已經厭煩了PoS的反對者老是跟你引用AndrewPoelstra寫的這篇文章,請盡情鏈上本文,作為還擊。”不太清楚他這么說是什么意思;自始至終,無論在哪兒,他都沒能駁倒本文的主張:除了消耗一種系統外的資源,沒有別的產生共識的辦法。

要想改變“真實歷史”,攻擊者必須產生另一個權重更大的歷史。他具有的資源比正在延伸真實歷史的礦工團體要少,因為那個礦工團體才是多數。所以,他在網絡中能勝出的概率是小于1的,而且,要想讓自己的歷史超過真實歷史,他還必須勝出N次以上。如果勝出一次的概率是P<1,那他勝出N次的概率就是PN,N足夠大這個概率就小到可以忽略不計了。

原文鏈接:

https://download.wpsoftware.net/bitcoin/pos.pdf

作者:?AndrewPoelstra

翻譯&校對:?閔敏&阿劍

科普|分布式共識的工作原理,Part-1:分布式系統的定義及屬性

觀點|剖析工作量證明

Tags:MMS比特幣LSTTRAMMS價格比特幣最新價格行情走勢LSTARData Transaction

歐易交易所
Pickle Finance 向穩定幣協議 Stabilize Protocol 補發 13.29 萬枚 CORN_PIC

鏈聞消息,DeFi收益聚合協議PickleFinance在推特公布兩項有關「攻擊損失補償新代幣CORN」兩項最新進展.

1900/1/1 0:00:00
數字貨幣交易平臺的優勢在哪里?_GAC

數字貨幣為什么需要交易平臺?眾所周知,數字貨幣交易平臺是區塊鏈最典型的應用,而且沒有之一。簡單而言,交易平臺具體的功能大致為資產管理、撮合交易及資產清算等等。說白了,就相當于數字貨幣的銀行.

1900/1/1 0:00:00
比特幣抵達P站 每日1億人看的網站_ORN

很多年之前,我還在北京創業,曾受邀去深圳做一場演講,受眾是券商、銀行、保險等傳統金融從業人員,演講的主題是比特幣.

1900/1/1 0:00:00
Pornhub的高級服務現在默認為加密付款,支持13種數字資產_加密貨幣

在9月的第一周,全球最大的成人門戶網站Pornhub通過添加比特幣和對其他三種加密貨幣的支持,擴展了付款方式.

1900/1/1 0:00:00
覓新 | DeFi終結現金貸?實時金融協議Sablier了解一下_ABL

DeFi通過與其他應用或者是協議的組合,能夠帶來許許多多的創新產品,比如去中心化交易所DEX、抵押借貸等等,你是否曾想過DeFi也可以實現工資的實時結算?與其他貸款類型相比,現金貸無需抵押.

1900/1/1 0:00:00
AngelONE 第七期項目 Oasis 即將開啟搶購_ASI

親愛的用戶: BigONE數字資產天使平臺AngelONE第七期項目Oasis即將開啟搶購,目前Oasis展示頁面已上線.

1900/1/1 0:00:00
ads