以太坊交易所 以太坊交易所
Ctrl+D 以太坊交易所
ads

科普 | 什么是共識?(生活篇)_數字貨幣:AMM

Author:

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

分布式一致性問題本質上可以從兩個維度來認識:一是如何就某一個值達成一致的決策;二是如何就一系列連續的值達成一致的順序決策。很顯然,如果我們能夠找到問題一的解決方案,那么問題二也就迎刃而解了。下面我們就從一個生活中的小問題來入手,看看如何去設計一個合理的算法來解決問題一。

有這樣一個家庭,由6個成員組成,分別是爸爸媽媽、爺爺奶奶、姐姐和一個3歲的弟弟。這一天,大家要線上決定一下明天出游時,弟弟戴什么顏色的帽子。由于此時5位家長分處在不同的地方,因此只能通過微信來交流。我們嘗試通過這樣一個案例來剖析一個最簡單的共識問題。

單點故障

既然目的是要做出一個一致的決策,最簡單的方式就是找出一個公信度最高的人,由他負責給出一個決策,大家都同意即可。比如,我們始終選擇媽媽的決策,因為平時都是媽媽負責弟弟的著裝。可是如果每次決策都需要等待媽媽的提案的話,難免有時候媽媽的手機會不在線,比如在坐飛機的時候手機開了飛行模式。因此,始終選擇一個人來做決定是不行的。這種因為一個參與方就導致整個集群出現阻塞的情況就是典型的單點故障問題。

少數服從多數

既然由一個人來做決策不可靠,最容易想到的一個解決方案就是:少數服從多數。即每次決策都至少得到半數以上人的同意才可以通過。當然,這里我們不考慮有人亂投票,即向不同人發送不一樣的投票。以當前的場景為例,5個人當中需要至少3個人接受同一個提案才能表明該提案值被選定。并且我們需要保證一旦某個提案值被選定了,就不可能在后續出現另外一個提案值也被選定。

穩定幣crvUSD科普創新清算機制LLAMMA,可在抵押品價格下跌時逐步替換為穩定幣:1月17日消息,Curve官方科普其穩定幣crvUSD創新的清算機制LLAMMA,解釋了LLAMMA通過AMM的特性進行針對債務人更友善的清算方式,讓抵押品在價格下跌時逐漸轉移成穩定幣,讓原本要清償的債務有一定程度的穩定幣可以償還,同時在價格回穩時再逐漸把穩定幣換回抵押品,而不是直接的觸發清算導致債務人的虧損。

此前報道,2022年11月23日,去中心化交易平臺CurveFinance開發者發布Curve即將推出的去中心化Stablecoin“crvUSD”的官方代碼和白皮書。[2023/1/17 11:17:13]

注:這里的選定是全局視角的,而接受是單個人的視角的,即同一個人可能會接受多次提案,但是整個群體最終只能選定一個提案值。

▲場景1

首先依舊給出一個最簡單的方案,為了能夠完成最終的決策,我們規定每個人必須接受他收到的第一個提案,這樣也可以調動起大家的積極心,如果想要自己的提案通過就必須快速想出一種顏色并發出提案。

但是,這種方案可能導致一種無法完成決策的困境。如上圖所示,爸爸提出了紅色帽子,覺得比較正能量!并及時將提案私戳給了媽媽,媽媽也欣然接受。幾乎同一時間,爺爺提出了藍色帽子,覺得比較復古!并及時將提案私戳給了奶奶,奶奶也欣然接受。而姐姐認為綠色比較時髦,然而等她將消息發送出去后,發現大家都已經有了自己的選擇。最終形成了2-2-1的局面,沒有哪個提案能夠達到半數以上。因此,我們發現,如果想要最終完成決策,有些人可能要接受多個不同的提案。

歐科云鏈集團正式啟動區塊鏈科普行動“星途計劃”:歐科云鏈集團于4月26日,正式宣布啟動了區塊鏈科普行動——“星途計劃”,行動包括將在全國范圍展開系列沙龍,加大力度推進區塊鏈科普進機關、進國企、進校園等,聯合政府部門、行業協會等共同構建起更加完善和有效的區塊鏈科普教育生態,與此同時,直擊區塊鏈科普現存痛點,推出簡單易懂的“秒懂區塊鏈”公益短視頻課。

該計劃旨在全維度推動社會建立對產業更清晰的認知,與“鯤鵬計劃”一道助力數字經濟及區塊鏈產業本身健康發展夯實“人才”和“產業認知”兩大基礎。[2021/4/26 20:59:37]

▲場景2

既然如此,我們再考慮如下方案,即每個人都接受他收到的所有提案。

這次,我們只考慮有兩個人發起了提案,分別是爸爸的紅色提案和姐姐的綠色提案。如果爸爸的提案已經獲得了3票的同意達到了選定狀態,隨后姐姐才發起提案,根據每個人都接受所有提案的原則,綠色提案最終也能夠達到選定狀態。顯然,這種方案違背了唯一性的原則,如果一直這樣運轉下去可能最終也沒法選定一個提案值。

此時,我們發現一個問題,即爸爸的紅色提案既然事先已經達到了選定狀態,那么我們可以讓姐姐在提案之前確認下所有人的狀態,如果已經有半數節點對某個提案值達成了共識,那么姐姐就可以停止發出提案,或者再發出一個包含相同提案值的提案來保證唯一性。這樣是否就能夠解決問題了呢?

聲音 | CNBC主持人:加密貨幣最大的缺點之一就是難以向外行快速科普:CNBC主持人Ran NeuNer近期發推稱,加密貨幣最大的缺點之一就是很難向外行快速解釋。當人們要求我向他們解釋比特幣時,我知道他們至少需要一個小時才能真正理解。[2019/9/10]

▲場景3

場景2中的問題依然存在,如上圖所示,如果爸爸和姐姐分別事先確認了下所有人的狀態都處在未投票的狀態,并依次發出了各自的提案,由于爸爸是分別私戳的,因此消息有一定的延遲,而姐姐直接拉了一個群聊一次性通知給了爺爺和奶奶,因此姐姐的提案先于爸爸的提案達到選定狀態,稍后等爸爸的提案通知到了媽媽和爺爺的時候,他們又該如何決策呢?

通過上面的問題,我們發現,為了防止整個決策進入到一種無法終止的狀態,我們還需要通過某種方式對提案進行排序,從而拒絕一些舊的、無效的提案,并及時地向提案者反饋自己接受的提案值,避免提案者一直發起相同的提案。也就是說,如果爺爺在收到爸爸的延遲提案時,能夠知道先前已經存在一個更新的提案并拒絕舊提案,同時告知爸爸已經接受了姐姐的綠色提案的話,就可以避免出現多種提案達到選定狀態的困境。

例如,我們可以分別為5個人分配一系列提案號,提案號按如下規則遞增:

動態 | 央行官微舊文重發“再科普”:范一飛詳解數字貨幣:據中國經濟網消息,今日,央行官微公眾號頭條重新發布央行副行長范一飛在2018年1月25日題為《關于央行數字貨幣的幾點考慮》的文章,對央行數字貨幣再次進行科普。同時,微信公眾號第二條發布支付司副司長穆長春8月10日在第三屆中國金融四十人伊春論壇上的演講。近年來,各主要國家和地區央行及貨幣當局均在對發行央行數字貨幣開展研究,新加坡央行和瑞典央行等已經開始進行相關試驗,人民銀行也在組織進行積極探索和研究。[2019/8/21]

同時做如下規定:

一條提案由提案值color和提案號seqNo組成,可表示為(color,seqNo)每個人記錄下自己收到的最大提案號,并拒絕提案號比它更小的提案當提案者收到一個已經被接受的提案時,必須無條件接受該提案,否則有可能陷入無限提案的循環每個提案都需要分為兩階段來完成,分別為事先詢問階段與最終確認階段,其中詢問階段用來確定一個序號值seqNo并及時檢測出是否已經存在被接受的提案值,確認階段用來確定一個提案值color。

場景1的解決方案比較簡單,即在一定時間內無法收到大多數人的同意消息之后,嘗試用新的提案號再發起一次提案,直到某次提案消息能夠成功傳達到大多數人后,即可完成決策。

財政部副部長朱光耀:數字經濟還處在發展的過程中,要以科普、推動的態度來推進數字經濟發展:今日,在中國發展高層論壇2018年會上,財政部副部長朱光耀表示:“數字經濟還處在發展的過程中,要以科普、推動的態度來推進數字經濟發展。也要關注數字經濟的其他影響,包括稅收征管、反洗錢監管措施等要跟上。”[2018/3/25]

下面我們來看一下如何解決場景2與場景3。

注:下圖中,以Pn表示事先詢問消息,詢問其他節點是否接受提案號n;以R(v,n)表示響應消息,告知提案者當前已經接受的最大提案號和提案值;以A(v,n)表示最終確認消息,告訴其他節點嘗試最終確認一個提案值v,其提案號為n。

場景2解決方案

對于已經達成選定狀態的提案,我們可以保證后續的提案不會覆蓋原先的提案值。

此時提案決策流程如下:

爸爸使用提案號1發起詢問爸爸、媽媽、爺爺都同意提案號1,并且反饋當前未接收任何提案值,提案號默認為0由于收到了大多數人的同意,爸爸發出最終確認消息給到了大多數人,提案號為1,提案值為紅色,此時紅色其實已經達到選定狀態姐姐使用提案號5發起詢問由于提案必須經過至少3人同意,而任選3人必然與此前同意爸爸提案的人群有交集,因此處在交集中的人能夠及時反饋之前已經同意的提案,即1號紅色提案,其余人還是反饋空投票姐姐在等到大多數人的反饋結果之后,發現此前已經有提案被其他人同意了,選擇提案號最高的那個提案值,覆蓋自己的提案值姐姐發出最終確認消息,提案號為5,提案值為紅色最終所有人都接受了紅色提案,雖然提案號可能不盡相同場景3解決方案

對于未達成選定狀態的提案,如果有新的提案提出,最終選定的提案值可能有兩種情況。

第一種情況是新提案者能夠發現舊的提案值,最終會選定舊的提案值。

第二種情況是新提案者不能夠發現舊的提案值,最終會選定新的提案值。

場景3-1解決方案

新提案者能夠發現舊的提案值,最終會選定舊的提案值。

此時提案決策流程如下:

爸爸使用提案號1發起詢問爸爸、媽媽、爺爺都同意提案號1,并且反饋當前未接收任何提案值,提案號默認為0由于收到了大多數人的同意,爸爸發出最終確認消息,但是因為消息延遲的原因,最終確認消息只發送到了爸爸、爺爺。媽媽延遲接受了該消息,因此紅色其實并未達到選定狀態姐姐使用提案號5發起詢問由于提案必須經過至少3人同意,而如果此時選中的3人中恰巧有一人接受過爸爸的最終確認消息,他會立即反饋之前已經同意的提案,即1號紅色提案,其余人還是反饋空投票姐姐在等到大多數人的反饋結果之后,發現此前已經有提案被其他人同意了,選擇提案號最高的那個提案,覆蓋自己的提案值姐姐發出最終確認消息,提案號為5,提案值為紅色媽媽延遲接收到了爸爸的最終確認消息,由于沒有收到提案號更大的提案,因此也接受了紅色提案最終所有人都接受了紅色提案,雖然提案號可能不盡相同場景3-2解決方案

新提案者不能夠發現舊的提案值,最終會選定新的提案值。

此時提案決策流程如下:

爸爸使用提案號1發起詢問爸爸、媽媽、爺爺都同意提案號1,并且反饋當前未接收任何提案值,提案號默認為0由于收到了大多數人的同意,爸爸發出最終確認消息,但是因為消息延遲的原因,最終確認消息只發送到了爸爸、媽媽。爺爺延遲接受了該消息,因此紅色其實并未達到選定狀態姐姐使用提案號5發起詢問由于提案必須經過至少3人同意,而如果此時選中的3人中恰巧都沒有人接受過爸爸的最終確認消息,那么姐姐會收到3個人反饋的空投票由于收到了大多數人的同意,姐姐發出最終確認消息給到了大多數人,提案號為5,提案值為綠色,此時綠色其實已經達到選定狀態媽媽延遲接收到了爸爸的最終確認消息,由于之前已經接受了提案號更大的提案,因此拒接爸爸的舊提案值,并將新提案值及時反饋給爸爸爸爸在收到拒接響應消息后,會嘗試從頭開始重新發起提案,最終選擇綠色提案最終所有人都接受了綠色提案,雖然提案號可能不盡相同總結

總結一下,為了能夠讓決策最終能夠收斂,其實我們已經顯式或者隱式地做了一些約束:

1.每個人的手機需要實時在線并且任意一條微信消息都可以在一定時延內收到,當出現網絡斷開的場景時,可能會導致共識無法達成

2.每個人都需要嚴格按照上述規則進行提案/投票,不能有胡亂提案/投票的動作

上面其實就是運用了經典分布式一致性算法Paxos的原理。然而Paxos解決的僅僅是一個最基本的共識的問題,即在非拜占庭的同步網絡環境下,如何就一個決策值達成一致。如果系統進入了異步網絡環境呢?如果出現了拜占庭節點呢?當我們將這一系列的問題考慮進去之后,整個問題就變得復雜的多了。

好在前人已經給我們提供了非常多的理論基礎,為了應對不同的問題,已經出現了非常多優秀的共識算法。大家感興趣的話,后面會有詳細的共識算法分類介紹,為大家全面地展示不同場景下共識算法的選擇與權衡。添加小助手加入技術交流群,歡迎您和我們共享觀點,共論區塊鏈的無限未來~

作者簡介

端豪

趣鏈科技基礎平臺部共識算法研究小組

Tags:區塊鏈穩定幣數字貨幣AMM區塊鏈騙了多少人穩定幣是什么意思簡單dds幣數字貨幣騙局AMMO價格

幣安交易所app下載
以太坊擴容方案 SKALE 推出 SKALE IMA 跨鏈橋,支持在以太坊和 SKALE 之間轉移資產_以太坊:白嫖steamtogetherbnb

巴比特訊,7月21日,以太坊擴容方案SKALE發推宣布推出SKALEIMA跨鏈橋,允許用戶在以太坊和SKALE網絡之間轉移包括ERC20代幣、ERC721代幣、ERC1155代幣等數字資產以及通.

1900/1/1 0:00:00
一文回顧鏈游打金公會YGG的崛起_DAO:PathDAO

Tokenterminal數據顯示,AxieInfinity月收入已超過1.14億美元。要知道,對于傳統游戲行業來講,10億美元的年收入也并不多見.

1900/1/1 0:00:00
投資管理平臺Titan完成5800萬美元B輪融資,A16z領投_TITAN:titan幣行情

據Techcrunch報道,投資管理平臺Titan宣布完成5800萬美元B輪融資,AndreessenHorowitz領投.

1900/1/1 0:00:00
區塊鏈走進政法系統:歐科云鏈集團受邀出席2021·全國政法裝備展開幕式_比特訊:區塊鏈最新應用

巴比特訊,7月27日,“2021·全國政法智能化建設技術裝備及成果展”在北京國家會議中心盛大開幕,歐科云鏈集團受邀出席會展開幕式.

1900/1/1 0:00:00
Dapper Labs中國區負責人Amber:當前收藏群體對NFT加密藝術的認知仍有不足丨2021世界區塊鏈大會_DAPP:TRO

巴比特訊,7月25日,“2021世界區塊鏈大會·杭州”在杭州未來科技城學術交流中心舉行。本次大會由杭州時戳信息科技有限公司主辦.

1900/1/1 0:00:00
MicroStrategy首席執行官:借錢購買比特幣就像在早期投資Facebook_OST:STRAT

據Coindesk7月31日消息,MicroStrategy首席執行官MichaelSaylor周五表示,現在借錢購買更多比特幣就像在早期投資當今占主導地位的科技公司一樣.

1900/1/1 0:00:00
ads