stake區塊鏈
1. 眾托幫為什麼要引入區塊鏈技術
區塊鏈所具有的重塑信任、降低交易成本的特性
2. 區塊鏈英文
AMA——Ask Me Anything,通常指項目方或交易負責人舉辦的問答活動
AMM——Automated Market Maker,自動做市商模式
AML——Anti-Money Laundering,反洗錢
BTC——Bitcoin,比特幣
3. 區塊鏈1.0時代有哪些實際應用
區塊鏈1.0的發展與數字貨幣密切相關,應用普遍集中在貨幣轉移、兌換和支付等方面。從某種意義上講,這個時期的區塊鏈技術找到了一個解決貨幣和支付去中心化的方案。
貨幣和支付構成了區塊鏈1.0時代最顯著的應用,出現了以比特幣為代表的一系列虛擬貨幣,如萊特幣、狗幣、瑞波幣、未來幣、點點幣等,全世界前後產生過數千種數字貨幣,到現在還在運行的大概有700多種。這些「另類貨幣」充當著互聯網上的「現金」,開啟了金融領域的另一片天地在虛擬貨幣的應用場景下,個人可以用一種去中心化、分布式且全球化的方式,在個人之間分配和交易各種資源。
這個時期的區塊鏈在金融領域掀起了一股巨浪。在轉賬、匯款和數字化支付相關領域,區塊鏈技術備受關注。在這些領域,傳統方式要通過銀行等中心機構進行開戶行、對手行、清算組織、境外銀行(代理行或境外分支機構)等煩瑣的處理過程,時間長,成本髙。應用區塊鏈技術後,支付可以實現端對端的交易,去掉了繁冗的中間機構處理環節,不僅快捷,而且交易成本非常低廉。尤其在跨境支付方面,基於區塊鏈的支付 系統可為用戶提供全球范圍的跨境、任意幣種的實時支付清算服務,跨境支付將以低成本方式瞬間完成。
鏈喬教育在線旗下學碩創新區塊鏈技術工作站是中國教育部學校規劃建設發展中心開展的「智慧學習工場2020-學碩創新工作站 」唯一獲準的「區塊鏈技術專業」試點工作站。專業站立足為學生提供多樣化成長路徑,推進專業學位研究生產學研結合培養模式改革,構建應用型、復合型人才培養體系。
4. 如何用最簡單的方式解讀區塊鏈
大家最近天天都能聽到區塊鏈這個詞,那什麼是區塊鏈呢?「分布式、難以篡改、一致存儲」等解釋太技術化且較為干澀。我這里來通俗的科普下:區塊鏈主要為了解決互不信任的個體之間的信任問題。
舉個通俗的例子:話說老李和老王一個村,老李最近手頭有點緊,想向老王借點錢。老王呢,擔心借了老李後他賴賬怎麼辦,於是找來「德高望重」的村長,不過想想,村長也不可信,以前村長還偷過別人家的地瓜啊!怎麼辦?
區塊鏈的方法是:老王借了1000塊錢給老李後,然後用大喇叭在村裡大喊「我老王今天借了老李1000元錢,大家都趕緊記錄下」,於是村裡的所有人都記錄在了自己家裡的賬本上,謹慎的保管了起來。這下可好,老李再也賴不過了,村裡即便有不守信的人,那還是好人多呀,老李也不可能找村裡全部的人偷偷抹掉自己的借錢記錄的。就這樣,區塊鏈解決了互不信任的老王和老李之間的借錢的信任問題。
在沒有出現區塊鏈之前,我們是如何解決互不信任個體間的信任問題呢?簡單啊,找兩者都信任的「德高望重」的「見證人」就好了,例如故事裡的村長,例如買賣雙方之間的支付寶,例如公證處等等。不過可能這類「見證人」也不一定一直誠信下去,所以區塊鏈乾脆就讓大家都作為見證人。
老王放心了,但老李頭疼啊!老李要等村裡人都記錄好了才能拿到借給他的錢,誰家還沒個大爺大媽手腳慢一些的。所以目前區塊鏈距離應用還有一定的距離,效率問題需要得到大幅提升才可以。
回想一下,你平時是怎麼和別人交易的:一件漂亮的衣服,你可以在實體店挑好,確認好了對方衣服質量不錯,對方確認你的錢是真錢,那麼我們面對面一手交錢一手拿貨。
要是我們隔著十萬八千里,彼此既不認識也不信任還是想交易呢?那就要有我們都信任的第三方了,也就是達成所謂的共識機制。比如:你可以在淘寶通過第三方見證擔保完成交易,錢先給支付寶——支付寶收款讓賣家發貨——賣家發貨——你確認收貨——支付寶再把錢給賣家。
但是,倘若這個中心化的機構作惡了,馬爸爸撕了賬本,不承認你給了錢,或者和賣家聯合起來騙你錢,那可怎麼辦?
又或者政府借了你一100萬,最後用超發貨幣的方式還給你錢,100萬縮水到1萬,由你來承受通貨膨脹的損失,你又怎麼辦?
有沒有不被任何政府、組織機構控制,能公開透明的完成仲裁,記錄了就不被篡改,沒有跑路風險的第三方呢?
別著急,我們的主角區塊鏈技術解決就是這樣的問題——你們之間的交易可以被所有在這個區塊鏈系統的人見證,大家的小賬本里頭都會記錄你們的交易。B如果否認收了A的錢,或者A說自己借了300塊錢,都會被路人甲乙丙丁質疑。具體是如何做到的呢?
1)系統給每個人都發了個小賬本,讓每個人都有記賬的權利,咱們稱之為分布式記賬。
2)為了鼓勵大家幫別人記賬,系統代碼設定將比特幣這樣的代幣獎勵給記賬者,為了防止一堆人記賬堵死,還將代幣設為有限個,甲乙丙丁需要通過系統規定的機制進行計算,算的最快最好的才能獲得記賬的權利,記錄之後通過系統廣播給大家,所有人復制一份相同的賬本,這個通過計算獲得獎勵的過程就叫挖礦,記賬的路人甲乙丙丁就是礦工。
3)有一天,最初記錄這筆交易的甲Game Over了,這個賬本卻還是存在在其他人的賬本里,A和B誰想否認都不行。我們把通過代碼寫好了如何仲裁和分配,無需銀行、政府、企業等中心化組織機構作為第三方見證(去中心化),直接點對點(P2P)交易的方式,稱為去中心化。
4)系統把多個交易打包成區塊,按時間順序鏈接起來成為最後人手一本的賬本,這就是區塊鏈技術
其實把區塊鏈簡單理解為賬本不過是最淺顯的解讀了,把它的每個特點拆分開來,所能應用的領域很多很多。
現在傳統金融行業、券商、投資機構正在跑步入場,物聯網, 游戲 ,儲存,版權,防偽,徵信,支付,預測市場(賭博之類)、社區等眾多領域已經開始了區塊鏈的 探索 應用。
互聯網讓萬物皆可連,區塊鏈能否讓所連皆可信呢?
我用天地自然運化的奇石解讀一下區塊鏈:
所有科學、哲學、道義⋯⋯天地都包涵著。任何一個事物、任何一種文化都與天地道化有關。
區塊鏈自然逃不脫天地運化法:即順然、隨然、無窮、無常。
它就是這塊奇石,其表面整體上的數據運化,一是,整體向著無形無象。二是線點守著一個規律:即無常之道。就是說它們每條線,每個點,追求的都不是一個閉合的目標和一個局限的目的。這樣說大家我好理解了:一個畫家要畫一隻雞,是有目的的,有終結相的,而奇石,大自然造化時,是沒有終結相的。所以相不閉合,線、點數據也不終結。區塊連接之技術,就是這個天運之道。無常運化無形無象,永無終結。(無中心化,就是無形無相,形式不封閉,結構不封閉,思想不封閉⋯⋯如「石」辦事就行)。
山東曲阜孔子靈石館
大家好,我是皮皮,我在這里用幾個生活小例子給大家解讀一下什麼叫區塊鏈?
去中心化,不可篡改級,分布式存貯的,以加密信息做鏈接地址的數據區塊鏈接系統,叫區塊鏈
這玩意本來就是許多高 科技 的復合品,沒法簡單,再簡單也是一大段話,而且未必能說清楚
區塊鏈(Blockchain)嚴格的定義是指通過基於密碼學技術設計的共識機制方式,在對等網路中多個節點共同維護一個持續增長,由時間戳和有序記錄數據塊所構建的鏈式列表賬本的分布式資料庫技術。該技術方案讓參與系統中的任意多個節點,把一段時間系統內全部信息交流的數據,通過密碼學演算法計算和記錄到一個數據塊(block),並且生成該數據塊的指紋用於鏈接(chain)下個數據塊和校驗,系統所有參與節點來共同認定記錄是否為真。
區塊鏈是一種類似於NoSQL(非關系型資料庫)這樣的技術解決方案統稱,並不是某種特定技術,能夠通過很多編程語言和架構來實現區塊鏈技術。並且實現區塊鏈的方式種類也有很多,目前常見的包括POW(Proof of Work,工作量證明),POS(Proof of Stake,權益證明),DPOS(Delegate Proof of Stake,股份授權證明機制)等。
區塊鏈的概念首次在論文《比特幣:一種點對點的電子現金系統(Bitcoin: A Peer-to-Peer Electronic Cash System)》中提出,作者為自稱中本聰(Satoshi Nakamoto)的個人(或團體)。因此可以把比特幣看成區塊鏈的首個在金融支付領域中的應用。
【通俗解釋】
無論多大的系統或者多小的網站,一般在它背後都有資料庫。那麼這個資料庫由誰來維護?在一般情況下,誰負責運營這個網路或者系統,那麼就由誰來進行維護。如果是微信資料庫肯定是騰訊團隊維護,淘寶的資料庫就是阿里的團隊在維護。大家一定認為這種方式是天經地義的,但是區塊鏈技術卻不是這樣。
如果我們把資料庫想像成是一個賬本:比如支付寶就是很典型的賬本,任何數據的改變就是記賬型的。資料庫的維護我們可以認為是很簡單的記賬方式。在區塊鏈的世界也是這樣,區塊鏈系統中的每一個人都有機會參與記賬。系統會在一段時間內,可能選擇十秒鍾內,也可能十分鍾,選出這段時間記賬最快最好的人,由這個人來記賬,他會把這段時間資料庫的變化和賬本的變化記在一個區塊(block)中,我們可以把這個區塊想像成一頁紙上,系統在確認記錄正確後,會把過去賬本的數據指紋鏈接(chain)這張紙上,然後把這張紙發給整個系統裡面其他的所有人。然後周而復始,系統會尋找下一個記賬又快又好的人,而系統中的其他所有人都會獲得整個賬本的副本。這也就意味著這個系統每一個人都有一模一樣的賬本,這種技術,我們就稱之為區塊鏈技術(Blockchain),也稱為分布式賬本技術。
由於每個人(計算機)都有一模一樣的賬本,並且每個人(計算機)都有著完全相等的權利,因此不會由於單個人(計算機)失去聯系或宕機,而導致整個系統崩潰。既然有一模一樣的賬本,就意味著所有的數據都是公開透明的,每一個人可以看到每一個賬戶上到底有什麼數字變化。它非常有趣的特性就是,其中的數據無法篡改。因為系統會自動比較,會認為相同數量最多的賬本是真的賬本,少部分和別人數量不一樣的賬本是虛假的賬本。在這種情況下,任何人篡改自己的賬本是沒有任何意義的,因為除非你能夠篡改整個系統裡面大部分節點。如果整個系統節點只有五個、十個節點也許還容易做到,但是如果有上萬個甚至上十萬個,並且還分布在互聯網上的任何角落,除非某個人能控制世界上大多數的電腦,否則不太可能篡改這樣大型的區塊鏈。
【要素】
結合區塊鏈的定義,我們認為必須具有如下四點要素才能被稱為公開區塊鏈技術,如果只具有前3點要素,我們將認為其為私有區塊鏈技術(私有鏈)。
1、點對點的對等網路(權力對等、物理點對點連接)
2、可驗證的數據結構(可驗證的PKC體系,不可篡改資料庫)
3、分布式的共識機制(解決拜占庭將軍問題,解決雙重支付)
4、納什均衡的博弈設計(合作是演化穩定的策略)
【特性】
結合定義區塊鏈的定義,區塊鏈會現實出四個主要的特性:去中心化(Decentralized)、去信任(Trustless)、集體維護(Collectively maintain)、可靠資料庫(Reliable Database)。並且由四個特性會引申出另外2個特性:開源(Open Source)、隱私保護(Anonymity)。如果一個系統不具備這些特徵,將不能視其為基於區塊鏈技術的應用。
去中心化(Decentralized):整個網路沒有中心化的硬體或者管理機構,任意節點之間的權利和義務都是均等的,且任一節點的損壞或者失去都會不影響整個系統的運作。因此也可以認為區塊鏈系統具有極好的健壯性。
去信任(Trustless):參與整個系統中的每個節點之間進行數據交換是無需互相信任的,整個系統的運作規則是公開透明的,所有的數據內容也是公開的,因此在系統指定的規則范圍和時間范圍內,節點之間是不能也無法欺騙其它節點。
集體維護(Collectively maintain):系統中的數據塊由整個系統中所有具有維護功能的節點來共同維護的,而這些具有維護功能的節點是任何人都可以參與的。
可靠資料庫(Reliable Database):整個系統將通過分資料庫的形式,讓每個參與節點都能獲得一份完整資料庫的拷貝。除非能夠同時控制整個系統中超過51%的節點,否則單個節點上對資料庫的修改是無效的,也無法影響其他節點上的數據內容。因此參與系統中的節點越多和計算能力越強,該系統中的數據安全性越高。
開源(Open Source):由於整個系統的運作規則必須是公開透明的,所以對於程序而言,整個系統必定會是開源的。
隱私保護(Anonymity):由於節點和節點之間是無需互相信任的,因此節點和節點之間無需公開身份,在系統中的每個參與的節點的隱私都是受到保護的。
【區塊鏈意義之一 :解決拜占庭將軍問題】
區塊鏈解決的核心問題不是「數字貨幣」,而是在信息不對稱、不確定的環境下,如何建立滿足經濟活動賴以發生、發展的「信任」生態體系。而這個問題稱之為「拜占庭將軍問題」,也可稱為「拜占庭容錯」或者「兩軍問題」,這是一個分布式系統中進行信息機交互時面臨的難題,即在整個網路中的任意節點都無法信任與之通信的對方時,如何能創建出共識基礎來進行安全的信息交互而無需擔心數據被篡改。區塊鏈使用演算法證明機制來保證整個網路的安全,藉助它,整個系統中的所有節點能夠在去信任的環境下自動安全的交換數據。更多介紹請參見《比特幣與拜占庭將軍問題》。
【區塊鏈意義之二:實現跨國價值轉移】
互聯網誕生最初,最早核心解決的問題是信息製造和傳輸,我們可以通過互聯網將信息快速生成並且復制到全世界每一個有著網路的角落,但是它尚始終不能解決價值轉移和信用轉移。這里所謂的價值轉移是指,在網路中每個人都能夠認可和確認的方式,將某一部分價值精確的從某一個地址轉移到另一個地址,而且必須確保當價值轉移後,原來的地址減少了被轉移的部分,而新的地址增加了所轉移的價值。這里說的價值可以是貨幣資產,也可以是某種實體資產或者虛擬資產(包括有價證券、金融衍生品等)。而這操作的結果必須獲得所有參與方的認可,且其結果不能受到任何某一方的操縱。
在目前的互聯網中也有各種各樣的金融體系,也有許多政府銀行提供或者第三方提供的支付系統,但是它還是依靠中心化的方案來解決。所謂中心化的方案,就是通過某個公司或者政府信用作為背書,將所有的價值轉移計算放在一個中心伺服器(集群)中,盡管所有的計算也是由程序自動完成,但是卻必須信任這個中心化的人或者機構。事實上通過中心化的信用背書來解決,也只能將信用局限在一定的機構、地區或者國家的范圍之內。由此可以看出,必須要解決的這個根本問題,那就是信用。所以價值轉移的核心問題是跨國信用共識。
在如此紛繁復雜的全球體系中,要憑空建立一個全球性的信用共識體系是很難的,由於每個國家的政治、經濟和文化情況不同,對於兩個國家的企業和政府完全互信是幾乎做不到的,這也就意味著無論是以個人抑或企業政府的信用進行背書,對於跨國之間的價值交換即使可以完成,也有著巨大的時間和經濟成本。但是在漫長的人類 歷史 中,無論每個國家的宗教、政治和文化是如何的不同,唯一能取得共識的是數學(基礎科學)。因此,可以毫不誇張的說,數學(演算法)是全球文明的最大公約數,也是全球人類獲得最多共識的基礎。如果我們以數學演算法(程序)作為背書,所有的規則都建立一個公開透明的數學演算法(程序)之上,能夠讓所有不同政治文化背景的人群獲得共識。
【未來的發展】
互聯網將使得全球之間的互動越來越緊密,伴隨而來的就是巨大的信任鴻溝。目前現有的主流資料庫技術架構都是私密且中心化的,在這個架構上是永遠無法解決價值轉移和互信問題。所以區塊鏈技術有可能將成為下一代資料庫架構。通過去中心化技術,將能夠在大數據的基礎上完成數學(演算法)背書、全球互信這個巨大的進步。
區塊鏈技術作為一種特定分布式存取數據技術,它通過網路中多個參與計算的節點開共同參與數據的計算和記錄,並且互相驗證其信息的有效性(防偽)。從這一點來,區塊鏈技術也是一種特定的資料庫技術。互聯網剛剛進入大數據時代,但是從目前來看,大數據還處於非常基礎的階段。但是當進入到區塊鏈資料庫階段,將進入到真正的強信任背書的大數據時代。這裡面的所有數據都獲得堅不可摧的質量,任何人都沒有能力也沒有必要去質疑。
也許我們現在正處在一個重大的轉折點之上——和工業革命所帶來的深刻變革幾乎相同的重大轉折的早期階段。不僅僅是新技術指數級、數字化和組合式的進步與變革,更多的驚喜也許還會在我們前面。在未來的24個月里,這個星球所增長的計算機算力和記錄的數據將會超過所有 歷史 階段的總和。在過去的24個月里,這個增值可能已經超過了1000倍。這些數字化的數據信息還在以比摩爾定律更快的速度增長。區塊鏈技術將不僅僅應用在金融支付領域,而是將會擴展到目前所有應用范圍,諸如去中心化的微博、微信、搜索、租房,甚至是打車軟體都有可能會出現。因為區塊鏈將可以讓人類無地域限制的、去信任的方式來進行大規模協作。
區塊鏈是一種技術,基於這項技術產生很多應用,包括與數據和信息相關的一切行業業務,比特幣就是其中最為人熟知的一種應用。對於區塊鏈的通俗解釋就是,假如在網上買一隻口紅,首先找到心儀的產品和賣家下單,先把錢給中間平台,等到賣家發貨買家確認收貨以後,中間平台再把錢轉給賣家,因為信任問題買賣家之間都依賴於中間平台,而區塊鏈作為去中心化的分布式賬本資料庫,則著力於去掉這個中間平台但同時又解決信任問題。在區塊鏈中每個人擁有自己的記賬本,用來記錄發生的每一件事,假如在交易中出現賣家拿錢不發貨的行為,這一條記錄將永久存在不可修改,不需要互相交換信息,區塊鏈的世界會選擇在同一個時間節點記錄最快質量最好的那個人的記賬本進行復制發送並串聯,最後越疊越厚形成區塊。
大家在談論虛擬貨幣時,往往離不開區塊鏈這個概念,那麼區塊鏈到底是個神馬玩意呢?
區塊鏈是一種底層技術,本質上是一個去中心化的分布式賬本資料庫。聽起來好像十分高端,遙不可及,其實是很容易理解的。
舉個例子,假如要在淘寶上購買商品,那麼一般首先要做的就是打開淘寶,找到想要的商品並下單將錢支付給作為交易中介的淘寶。等收到商品並確認收貨後淘寶便會將貨款打給賣家。這本來只是我和賣家的交易,但卻多了個「中心」,即淘寶。
在交易進行的過程中,這個「中心」擁有無限大的權力,甚至隨意修改賬單。因此,「中心」往往需要強大的後台為其背書。
於是,有一個名叫中本聰的男人想要幹掉這個權力無窮大的中心,他想創造一個去中心化的系統,在這個系統里,每個人都是中心,都有記賬的權力。於是,他創造了比特幣。
在比特幣的系統中,每個人都有一個小賬本用以記錄發生的每一筆交易。一筆交易只有經過大部分人確認後才有效。如果賣家不發貨,那麼每個人的小賬本都會將這件事記錄下來,讓他無處可逃。
這時候大家可能會有疑問,既然只是一個公開的賬本,那麼為什麼又要叫區塊鏈呢?這就涉及到了共識問題,區塊鏈系統是一個由眾多「中心」組成的系統,整個區塊鏈是屬於所有參與記賬的個體的。這時候就產生了新的問題,一個系統必須要有秩序才能長遠的存在。假如記賬者可以不計成本地胡作非為,那就可能出現本來只是購買一台手機,但收到的卻是一台特斯拉的情況。
於是,中本聰發明了一種名為PoW的共識方式。這種方式提高了記賬者記賬的成本,讓其不能輕易作惡。PoW通過密碼學的方式要求記賬者需要通過競爭計算能力來獲取記賬權,第一個計算出結果的記賬者即可獲得一個由若干筆交易打包而來的區塊的記賬權,同時獲得一定的代幣作為獎勵。這就是我們俗稱的「挖礦」。
既然記賬者已經將一個包含了若干筆交易的區塊記錄了下來,那麼系統就需要進行整理排序,不可能讓無數的區塊雜亂無章地分布在系統中。於是就需要把所有區塊按照時間順序首尾相連鏈接鏈接起來,這時,區塊鏈便誕生了。區塊鏈的核心是技術。
5. 號稱「區塊鏈的靈魂」的共識機制是什麼
我們知道區塊鏈是去中心化分布式記賬技術,在區塊鏈系統當中,沒有一個像銀行一樣的中心化記賬機構,如何保證每一筆交易在所有記賬節點上的一致性呢?共識機制解決的就是這個問題,因此也可以說共識機制是區塊鏈的靈魂。
目前比較常見的共識機制有:工作量證明 PoW(Proof of Work)、權益證明(Proof of Stake)以及委託權益證明(Delegated Proof of Stake):
01
PoW(Proof-of-Work)
工作量證明機制
POW的全稱為Proof of Work,翻譯過來即「工作證明」或者「工作量證明」。挖礦獲得多少貨幣獎勵,取決於挖礦貢獻的有效工作,也就是說礦機的性能越好、挖礦的時間越長,所獲得的貨幣獎勵就越多。
BTC就是POW機制下最成功的加密貨幣。POW機制雖然已經成功證明了其長期穩定和相對公平,但在現有框架下,採用POW的「挖礦」形式,將消耗大量的能源。其消耗的能源只是不停的去做SHA256的運算來保證工作量公平,並沒有其他的存在意義。而目前BTC所能達到的交易效率為約5TPS(5筆/秒),以太坊目前受到單區塊GAS總額的上限,所能達到的交易頻率大約是25TPS,與平均千次每秒、峰值能達到萬次每秒處理效率的VISA和MASTERCARD相差甚遠。
02
PoS(Proof-of-Stake)
權益證明機制
POS 即權益證明或者股權證明,全稱為 Proof of Stake。權益證明模式就是根據所持有貨幣的量和時間,來發利息的的一個模式。
POS機制,相比於POW,POS機制節省了能源,引入了「幣齡」這個概念來參與隨機運算。POS機制能夠讓更多的持幣人參與到記賬這個工作中去,而不需要額外購買設備(礦機、顯卡等)。每個單位代幣的運算能力與其持有的時間長成正相關,即持有人持有的代幣數量越多、時間越長,其所能簽署、生產下一個區塊的概率越大。一旦其簽署了下一個區塊,持幣人持有的「幣齡」即清零,重新進入新的循環。
在POS機制下,因為區塊的簽署人由隨機產生,則一些持幣人會長期、大額持有代幣以獲得更大概率地產生區塊,盡可能多的去清零他的「幣天」。因此整個網路中的流通代幣會減少,從而不利於代幣在鏈上的流通,價格也更易受到波動。由於可能會存在少量大戶持有整個網路中大多數代幣的情況,整個網路有可能會隨著運行時間的增長而越來越趨向於中心化。相對於PoW而言,PoS機制下作惡的成本很低,因此對於分叉或是雙重支付的攻擊,需要更多的機制來保證共識。穩定情況下,每秒大約能產生12筆交易,但因為網路延遲及共識問題,需要約60秒才能完整廣播共識區塊。長期來看,生成區塊(即清零「幣齡」)的速度遠低於網路傳播和廣播的速度,因此在PoS機制下需要對生成區塊進行「限速」,來保證主網的穩定運行。
03
DPoS
委託權益證明機制
DPOS即授權股權證明(delegated proof of stake)。
DPoS機制要求在產生下一個區塊之前,必須驗證上一個區塊已經被受信任節點所簽署。相比於PoS的「全民挖礦」,DPoS則是利用類似「代表大會」的制度來直接選取可信任節點,由這些可信任節點(即見證人)來代替其他持幣人行使權力,見證人節點要求長期在線,從而解決了因為PoS簽署區塊人不是經常在線而可能導致的產塊延誤等一系列問題。DPoS機制通常能達到萬次每秒的交易速度,在網路延遲低的情況下可以達到十萬秒級別,非常適合企業級的應用。
04 其他共識機制
區塊鏈系統中還有其它共識機制比如聯盟鏈常用的PBFT,新經幣(NEM)用的POI等。這些共識機制是為了解決現有共識機制的一些缺點而被提出的。但目前使用的系統不如POW,POS和DPOS多。
共識機制是區塊鏈系統的核心,它決定了一個區塊鏈系統的去中心化程度,性能和安全性。因此公鏈的開發中,共識機制的設計是核心和關鍵。
6. 區塊鏈共識演算法——(二)PoS共識(Proof of Stake)
2011 年 7 月, 一 位 名 為 Quantum Mechanic 的 數 字 貨 幣 愛 好 者 在 比 特 幣 論 壇 首次提出了權益證明 PoS 共識演算法. 隨後, Sunny King 在 2012 年 8 月發布的點點幣 (Peercoin, PPC) 中首次實現. PoS 由 系統中具有最高權益而非最高算力的節點獲得記賬 權, 其中權益體現為節點對特定數量貨幣的所有權, 稱為幣齡或幣天數 (Coin days)
PoS是考慮到PoW的最大缺陷:浪費資源而提出的,簡單來說就是 誰的權益大,誰說了算 。
PoS共識機制(Proof of Stake 權益證明)通過權益記賬的方式,解決效率低下、資源浪費、節點一致性等問題。
各個節點需要滿足一定的條件(如抵押一定的代幣)才能成為驗證節點(權益提高),系統通過演算法在其中選擇一部分作為出塊節點(礦工),每隔一段時間重新選擇,演算法會保證完全隨機,不可被操控。只有出塊節點才能進行數據處理,爭奪記賬權。
權益主要由權益因子決定,可以是持幣數量,也可以是幣齡及兩者的結合。
以太坊在之後很有可能會改用PoS進行共識,其更加符合以太坊高效率的特點。
7. 區塊鏈常見的三大共識機制
區塊鏈是建立在P2P網路,由節點參與的分布式賬本系統,最大的特點是「去中心化」。也就是說在區塊鏈系統中,用戶與用戶之間、用戶與機構之間、機構與機構之間,無需建立彼此之間的信任,只需依靠區塊鏈協議系統就能實現交易。
可是,要如何保證賬本的准確性,權威性,以及可靠性?區塊鏈網路上的節點為什麼要參與記賬?節點如果造假怎麼辦?如何防止賬本被篡改?如何保證節點間的數據一致性?……這些都是區塊鏈在建立「去中心化」交易時需要解決的問題,由此產生了共識機制。
所謂「共識機制」,就是通過特殊節點的投票,在很短的時間內完成對交易的驗證和確認;當出現意見不一致時,在沒有中心控制的情況下,若干個節點參與決策達成共識,即在互相沒有信任基礎的個體之間如何建立信任關系。
區塊鏈技術正是運用一套基於共識的數學演算法,在機器之間建立「信任」網路,從而通過技術背書而非中心化信用機構來進行全新的信用創造。
不同的區塊鏈種類需要不同的共識演算法來確保區塊鏈上最後的區塊能夠在任何時候都反應出全網的狀態。
目前為止,區塊鏈共識機制主要有以下幾種:POW工作量證明、POS股權證明、DPOS授權股權證明、Paxos、PBFT(實用拜占庭容錯演算法)、dBFT、DAG(有向無環圖)
接下來我們主要說說常見的POW、POS、DPOS共識機制的原理及應用場景
概念:
工作量證明機制(Proof of work ),最早是一個經濟學名詞,指系統為達到某一目標而設置的度量方法。簡單理解就是一份證明,用來確認你做過一定量的工作,通過對工作的結果進行認證來證明完成了相應的工作量。
工作量證明機制具有完全去中心化的優點,在以工作量證明機制為共識的區塊鏈中,節點可以自由進出,並通過計算隨機哈希散列的數值解爭奪記賬權,求得正確的數值解以生成區塊的能力是節點算力的具體表現。
應用:
POW最著名的應用當屬比特幣。在比特幣網路中,在Block的生成過程中,礦工需要解決復雜的密碼數學難題,尋找到一個符合要求的Block Hash由N個前導零構成,零的個數取決於網路的難度值。這期間需要經過大量嘗試計算(工作量),計算時間取決於機器的哈希運算速度。
而尋找合理hash是一個概率事件,當節點擁有佔全網n%的算力時,該節點即有n/100的概率找到Block Hash。在節點成功找到滿足的Hash值之後,會馬上對全網進行廣播打包區塊,網路的節點收到廣播打包區塊,會立刻對其進行驗證。
如果驗證通過,則表明已經有節點成功解迷,自己就不再競爭當前區塊,而是選擇接受這個區塊,記錄到自己的賬本中,然後進行下一個區塊的競爭猜謎。網路中只有最快解謎的區塊,才會添加的賬本中,其他的節點進行復制,以此保證了整個賬本的唯一性。
假如節點有任何的作弊行為,都會導致網路的節點驗證不通過,直接丟棄其打包的區塊,這個區塊就無法記錄到總賬本中,作弊的節點耗費的成本就白費了,因此在巨大的挖礦成本下,也使得礦工自覺自願的遵守比特幣系統的共識協議,也就確保了整個系統的安全。
優缺點
優點:結果能被快速驗證,系統承擔的節點量大,作惡成本高進而保證礦工的自覺遵守性。
缺點:需要消耗大量的演算法,達成共識的周期較長
概念:
權益證明機制(Proof of Stake),要求證明人提供一定數量加密貨幣的所有權。
權益證明機制的運作方式是,當創造一個新區塊時,礦工需要創建一個「幣權」交易,交易會按照預先設定的比例把一些幣發送給礦工本身。權益證明機制根據每個節點擁有代幣的比例和時間,依據演算法等比例地降低節點的挖礦難度,從而加快了尋找隨機數的速度。
應用:
2012年,化名Sunny King的網友推出了Peercoin(點點幣),是權益證明機制在加密電子貨幣中的首次應用。PPC最大創新是其采礦方式混合了POW及POS兩種方式,採用工作量證明機制發行新幣,採用權益證明機制維護網路安全。
為了實現POS,Sunny King借鑒於中本聰的Coinbase,專門設計了一種特殊類型交易,叫Coinstake。
上圖為Coinstake工作原理,其中幣齡指的是貨幣的持有時間段,假如你擁有10個幣,並且持有10天,那你就收集到了100天的幣齡。如果你使用了這10個幣,幣齡被消耗(銷毀)了。
優缺點:
優點:縮短達成共識所需的時間,比工作量證明更加節約能源。
缺點:本質上仍然需要網路中的節點進行挖礦運算,轉賬真實性較難保證
概念:
授權股權證明機制(Delegated Proof of Stake),與董事會投票類似,該機制擁有一個內置的實時股權人投票系統,就像系統隨時都在召開一個永不散場的股東大會,所有股東都在這里投票決定公司決策。
授權股權證明在嘗試解決傳統的PoW機制和PoS機制問題的同時,還能通過實施科技式的民主抵消中心化所帶來的負面效應。基於DPoS機制建立的區塊鏈的去中心化依賴於一定數量的代表,而非全體用戶。在這樣的區塊鏈中,全體節點投票選舉出一定數量的節點代表,由他們來代理全體節點確認區塊、維持系統有序運行。
同時,區塊鏈中的全體節點具有隨時罷免和任命代表的權力。如果必要,全體節點可以通過投票讓現任節點代表失去代表資格,重新選舉新的代表,實現實時的民主。
應用:
比特股(Bitshare)是一類採用DPOS機制的密碼貨幣。通過引入了見證人這個概念,見證人可以生成區塊,每一個持有比特股的人都可以投票選舉見證人。得到總同意票數中的前N個(N通常定義為101)候選者可以當選為見證人,當選見證人的個數(N)需滿足:至少一半的參與投票者相信N已經充分地去中心化。
見證人的候選名單每個維護周期(1天)更新一次。見證人然後隨機排列,每個見證人按序有2秒的許可權時間生成區塊,若見證人在給定的時間片不能生成區塊,區塊生成許可權交給下一個時間片對應的見證人。DPoS的這種設計使得區塊的生成更為快速,也更加節能。
DPOS充分利用了持股人的投票,以公平民主的方式達成共識,他們投票選出的N個見證人,可以視為N個礦池,而這N個礦池彼此的權利是完全相等的。持股人可以隨時通過投票更換這些見證人(礦池),只要他們提供的算力不穩定,計算機宕機,或者試圖利用手中的權力作惡。
優缺點:
優點:縮小參與驗證和記賬節點的數量,從而達到秒級的共識驗證
缺點:中心程度較弱,安全性相比POW較弱,同時節點代理是人為選出的,公平性相比POS較低,同時整個共識機制還是依賴於代幣的增發來維持代理節點的穩定性。
8. 印度用區塊鏈打造智慧城市
近日,印度啟動了智能城市項目,作為莫迪總理的首要計劃之一,將為其科技市場帶來了巨大的發展潛力,區塊鏈就是其中之一。盡管自2015年6月25日發布至今,其大型項目未能達到,目前為止只有1.8%的資金落實使用,但其區塊鏈作底層技術的城市構建思路依然充滿潛力,EtherFlyer將帶您揭開區塊鏈智慧城市的面紗。
為了創造更宜居城市,智慧城市計劃將在100個城市中開展。該其目標是在這些城市中運用創新的數字技術,並與「數字印度」的願景相結合,實現公民的數字化授權。該項目將把「數字」整合到城市生活的各個方面:從基礎設施,醫療保健,教育,清潔,衛生,廢物管理等各類服務。
5月17日,印度住房和城市扶貧部發布了關於智能城市計劃的最新情況,稱到目前為止已完成或正在實施、招標的超一千個項目。EtherFlyer了解到,這些項目的底層技術是區塊鏈,其作用是保證智能城市的運轉。區塊鏈的出現將改變城市的基礎,甚至是智慧城市的「大腦」,這個機制將適應性、問責制、透明性、准確性和運轉效率等關鍵因素整合到整個城市中。
EtherFlyer先簡要介紹一下,區塊鏈是一種分布式賬本技術,可以在多個系統中存儲信息,實現點對點(P2P)交換,並使用驗證過程創建可信、安全的分布式存儲,這種方式是民主的,基於共識的。這里的安全可信是指:區塊鏈網路不需要任何中間實體進行任何類型的驗證。
最重要的是,區塊鏈(公共)使用工作證明(PoW,Proof of Work)或股權證明(PoS,Proof of Stake)來達成共識,一旦信息記錄在區塊中並上鏈(區塊鏈),該數據就不能被刪除和操縱。這帶來了數據的透明,消除了任何形式的篡改和操縱。
從投票,安全,土地登記,物流,醫療保健,配電,銀行,證書,出生,死亡,教育,住宅等幾乎任何需要登記治理的領域,區塊鏈完全解決了信任問題。雖然印度政府尚未開發智能城市中區塊鏈的所有潛能,但已經在上述領域內建立了一系列基於區塊鏈的概念驗證(PoC,Proof of Concept)。 尤其是在新技術出現的前夕,EtherFlyer認為這概念驗證非常重要,對於區塊鏈技術的大規模應用,印度的這一計劃很有借鑒性,值得關注。所以EtherFlyer將這個項目的框架描繪出來,希望大家能對區塊鏈「智慧城市」認識更具體,也帶來更多啟發。
澳洲格里菲斯大學的研究「使用區塊鏈技術確保智能城市安全」中展示了安全框架,提出了如何將區塊鏈與智能設備集成在一起,為智能城市提供安全的通信平台。使用區塊鏈安全框架的主要優勢在於,這種機制可以抵禦許多威脅。此外,它還提供了許多獨特的功能,例如提高可靠性,更好的容錯能力,更快更有效的操作和可擴展性。
EtherFlyer認為,結合區塊鏈技術的設備將在智能城市中集成為一個通用平台,所有設備都能夠在分布式環境中安全地運行。 「未來應設計一個系統級模型,以調查智能城市中使用的不同平台的互操作性和可擴展性,」該論文也說明了這點。
在印度的現有體制下,一半的數據是硬碟拷貝,一半是跨部門和組織的系統集成,數據在任何中間環節可被輕易改動,控制或刪除,用戶必須依賴於對數據運營商,控制系統和處理器的「信任」。例如,對大量身份數據泄漏曾遭到大量投訴,但印度唯一身份識別機構(UIDAI)沒有一次承認這個問題。現在的問題不僅僅是數據安全,而是關於組織中人員的「信任」。
為了解決這個問題,印度從愛沙尼亞的管理中得到了啟發。愛沙尼亞已完成居民電子數據的構建,而印度的智能城市公民身份數據將運用公共區塊鏈模型,這將一勞永逸地消除組織的「信任」問題。在愛沙尼亞,即使在獲取數據節點後,公民也可獲知誰查看了其個人信息,查看訪問數據的組織列表,訪問時的數據以及數據的用途。
區塊鏈可以實現類似的系統,以確保印度投票系統的透明度和安全性。在以往每次選舉時,關於操縱電子投票機(EVM),記錄和數據的投訴都在增加。區塊鏈將是消除機器「信任危機」的可靠方法,區塊鏈不像機器那樣可被隨意操縱。印度智慧城市項目將應用到世界上最大的投票系統中,這將是區塊鏈大規模應用的實例,不僅可以降低選舉成本,還可以大大提高系統的透明度和效率。
除了銀行業務,政府和私營醫療機構將推進電子健康記錄(EHR),區塊鏈可以改變目前葯物、血液、器官、醫療許可證和醫生記錄等醫療數據的記錄方式。EtherFlyer了解到,約70%的健康計劃和衛生系統IT主管認為,區塊鏈對醫保的操作性有很大幫助。
與其他記錄類似, 教育證書或記錄,出生/死亡證明,土地記錄,能源供給以及通訊的所有其他數據都可以上鏈。EtherFlyer在此說明一下,上鏈不是要把這些龐大的數據在區塊鏈上運行,而是將區塊鏈作為底層邏輯,保證數據不可篡改與記錄透明。
區塊鏈還可用於倉儲、冷藏、運輸等相關農業數據,以提高透明度,降低復雜性和成本。一旦在公共區塊鏈上添加了與任何主題相關的數據,它就可以取代現有的「不可信」系統,任何人都可以隨時獲取數據,具體情況取決於授予的許可權。在農業方面的垂直應用,EtherFlyer在《區塊鏈在農業供應鏈上的應用》中有詳細的介紹。
NITI Aayog一直致力於印度鏈(當地的一個區塊鏈項目)的概念構建,它被描述為「共享的,印度專屬的區塊鏈基礎設施」,但自去年以來沒有提供進一步更新,而智能城市使命也沒有按照計劃的方式實施。執行力的缺乏(印度以行政效率低下而聞名),以及利益集團的阻礙,這兩點都導致了區塊鏈智能城市推進緩慢。但EtherFlyer認為,這個項目的框架還是非常有遠見的,展現了區塊鏈應用的巨大潛力,可以讓智慧城市真正意義上變的「聰明」。EtherFlyer所理解的「聰明」不是科技發達或物質豐富,而是在底層邏輯上的公平、公開、透明、不可篡改,這與以飛的去中心化交易理念是一致的。個人通過區塊鏈形成了真實的社會組群而非權利中心,這是未來的「智慧城市」。
9. 什麼是區塊鏈
【定義】
區塊鏈(Blockchain)是指通過去中心化和去信任的方式集體維護一個可靠資料庫的技術方案。該技術方案讓參與系統中的任意多個節點,把一段時間系統內全部信息交流的數據,通過密碼學演算法計算和記錄到一個數據塊(block),並且生成該數據塊的指紋用於鏈接(chain)下個數據塊和校驗,系統所有參與節點來共同認定記錄是否為真。
區塊鏈是一種類似於NoSQL(非關系型資料庫)這樣的技術解決方案統稱,並不是某種特定技術,能夠通過很多編程語言和架構來實現區塊鏈技術。並且實現區塊鏈的方式種類也有很多,目前常見的包括POW(Proof of Work,工作量證明),POS(Proof of Stake,權益證明),DPOS(Delegate Proof of Stake,股份授權證明機制)等。
區塊鏈的概念首次在論文《比特幣:一種點對點的電子現金系統(Bitcoin:A Peer-to-Peer Electronic Cash System)》中提出,作者為自稱中本聰(Satoshi Nakamoto)的個人(或團體)。因此可以把比特幣看成區塊鏈的首個在金融支付領域中的應用。
【通俗解釋】
無論多大的系統或者多小的網站,一般在它背後都有資料庫。那麼這個資料庫由誰來維護?在一般情況下,誰負責運營這個網路或者系統,那麼就由誰來進行維護。如果是微信資料庫肯定是騰訊團隊維護,淘寶的資料庫就是阿里的團隊在維護。大家一定認為這種方式是天經地義的,但是區塊鏈技術卻不是這樣。
如果我們把資料庫想像成是一個賬本:比如支付寶就是很典型的賬本,任何數據的改變就是記賬型的。資料庫的維護我們可以認為是很簡單的記賬方式。在區塊鏈的世界也是這樣,區塊鏈系統中的每一個人都有機會參與記賬。系統會在一段時間內,可能選擇十秒鍾內,也可能十分鍾,選出這段時間記賬最快最好的人,由這個人來記賬,他會把這段時間資料庫的變化和賬本的變化記在一個區塊(block)中,我們可以把這個區塊想像成一頁紙上,系統在確認記錄正確後,會把過去賬本的數據指紋鏈接(chain)這張紙上,然後把這張紙發給整個系統裡面其他的所有人。然後周而復始,系統會尋找下一個記賬又快又好的人,而系統中的其他所有人都會獲得整個賬本的副本。這也就意味著這個系統每一個人都有一模一樣的賬本,這種技術,我們就稱之為區塊鏈技術(Blockchain),也稱為分布式賬本技術。
由於每個人(計算機)都有一模一樣的賬本,並且每個人(計算機)都有著完全相等的權利,因此不會由於單個人(計算機)失去聯系或宕機,而導致整個系統崩潰。既然有一模一樣的賬本,就意味著所有的數據都是公開透明的,每一個人可以看到每一個賬戶上到底有什麼數字變化。它非常有趣的特性就是,其中的數據無法篡改。因為系統會自動比較,會認為相同數量最多的賬本是真的賬本,少部分和別人數量不一樣的賬本是虛假的賬本。在這種情況下,任何人篡改自己的賬本是沒有任何意義的,因為除非你能夠篡改整個系統裡面大部分節點。如果整個系統節點只有五個、十個節點也許還容易做到,但是如果有上萬個甚至上十萬個,並且還分布在互聯網上的任何角落,除非某個人能控制世界上大多數的電腦,否則不太可能篡改這樣大型的區塊鏈。
【要素】
結合區塊鏈的定義,我們認為必須具有如下四點要素才能被稱為公開區塊鏈技術,如果只具有前3點要素,我們將認為其為私有區塊鏈技術(私有鏈)。
1、點對點的對等網路(權力對等、物理點對點連接)
2、可驗證的數據結構(可驗證的PKC體系,不可篡改資料庫)
3、分布式的共識機制(解決拜占庭將軍問題,解決雙重支付)
4、納什均衡的博弈設計(合作是演化穩定的策略)
【特性】
結合定義區塊鏈的定義,區塊鏈會現實出四個主要的特性:去中心化(Decentralized)、去信任(Trustless)、集體維護(Collectively maintain)、可靠資料庫(Reliable Database)。並且由四個特性會引申出另外2個特性:開源(Open Source)、隱私保護(Anonymity)。如果一個系統不具備這些特徵,將不能視其為基於區塊鏈技術的應用。
去中心化(Decentralized):整個網路沒有中心化的硬體或者管理機構,任意節點之間的權利和義務都是均等的,且任一節點的損壞或者失去都會不影響整個系統的運作。因此也可以認為區塊鏈系統具有極好的健壯性。
去信任(Trustless):參與整個系統中的每個節點之間進行數據交換是無需互相信任的,整個系統的運作規則是公開透明的,所有的數據內容也是公開的,因此在系統指定的規則范圍和時間范圍內,節點之間是不能也無法欺騙其它節點。
集體維護(Collectively maintain):系統中的數據塊由整個系統中所有具有維護功能的節點來共同維護的,而這些具有維護功能的節點是任何人都可以參與的。
可靠資料庫(Reliable Database):整個系統將通過分資料庫的形式,讓每個參與節點都能獲得一份完整資料庫的拷貝。除非能夠同時控制整個系統中超過51%的節點,否則單個節點上對資料庫的修改是無效的,也無法影響其他節點上的數據內容。因此參與系統中的節點越多和計算能力越強,該系統中的數據安全性越高。
開源(Open Source):由於整個系統的運作規則必須是公開透明的,所以對於程序而言,整個系統必定會是開源的。
隱私保護(Anonymity):由於節點和節點之間是無需互相信任的,因此節點和節點之間無需公開身份,在系統中的每個參與的節點的隱私都是受到保護的。
10. POA(Proof of Activity)區塊鏈共識演算法
POA(Proof of Activity)演算法是一個區塊鏈的共識演算法,基本原理是結合POW(Proof of work)和POS(Proof of stake)演算法的特點進行工作,POW演算法和POS演算法的具體內容可以參考:
POW演算法 : https://www.jianshu.com/p/b23cbafbbad2
POS演算法 : https://blog.csdn.net/wgwgnihao/article/details/80635162
POA演算法相比於其他演算法可以改進網路拓撲,維持在線節點比例,需求更少的交易費同時減少共識演算法過程中的能量損耗。
POA演算法需求的網路中同樣包含兩類節點,礦工和普通參與者,其中普通參與者不一定一直保持在線。POA演算法首先由礦工構造區塊頭,由塊頭選出N個幣,這N個幣的所有者參與後續的校驗和生成塊的過程。
從這里可以看到POA演算法不僅與算力有關,後續的N個參與者的選舉則完全由參與者在網路中所擁有的幣的總數量決定。擁有越多幣的參與者越有機會被選為N個後續的參與者。而後續N個參與者參與的必要條件是這N個參與者必須在線,這也是POA命名的由來,POA演算法的維護取決於網路中的活躍節點(Active)。
POA演算法的一個理想的基本流程是,類似於POW協議,礦工構造出一個符合難度要求的塊頭,通過礦工得到的塊頭計算衍生出N個幣的編號,從區塊鏈中追溯可以得到這幾個幣目前所述的參與者。礦工將這個塊頭發送給這N個參與者,其中前N-1個參與者對這個塊進行校驗和簽名,最後第N個參與者校驗並將交易加入到該塊中,將這個區塊發布出去,即完成一個區塊的出塊。
一個理想過程如下圖所示:
在實際運行中,無法保證網路上所有參與者都在線,而不在線的參與者則無法進行校驗和簽名,這個無法被校驗和簽名的塊頭則會被廢棄。
即在實際運行中,應該是一個礦工構造出塊頭後廣播給各個參與者簽名,同時繼續重新構造新的塊頭,以免上一個塊頭衍生的N個參與者存在有某一個沒有在線,而導致塊頭被廢棄。
因此,在這種情況下,一個塊是否被確認不僅與礦工的計算能力有關同時也與網路上的在線比例有關。
與純POW相比,在與比特幣(POW)同樣10分鍾出一個塊的情況下,POA由於會有參與者不在線而產生的損耗,因此,10分鍾內礦工可以構造的塊的數量會更多,即塊頭的難度限制會降低,那麼礦工在挖礦過程中會造成的能量損耗也會降低。
與純POS相比,可以看到POA的出塊流程並不會將構造區塊過程中的相關信息上鏈,可以明顯減少區塊鏈上用於維護協議產生的冗餘信息的量。
本節對上訴協議中一些參數設置進行分析
在礦工構造出塊頭後對塊頭進行校驗和區塊構造的N個參與者的數量選定比較類似於比特幣中每一個塊的出塊時間的選取。比特幣中選擇了10分鍾作為每一個塊的期望出塊時間並通過動態調節難度來適應。
這里N的取值同樣可以選擇選定值或者動態調節。動態調節需要更加復雜的協議內容,同時可能會帶來區塊鏈的數據膨脹,而復雜的協議也增加了攻擊者攻擊的可能性。另外暫時沒有辦法證明動態調節可以帶來什麼好處。靜態調節在後續的分析(4 安全分析)中可以得到N=3的取值是比較合適的。
從上面的描述可以看到,構造新的區塊的除了礦工還有從塊頭中衍生出來的N個幣所有者。在構造出一個新的區塊後,這些參與者同樣應該收到一定的激勵,以維持參與者保持在線狀態。
礦工與參與者之間的非配比例與參與者的在線狀態相關。給予參與者的激勵與參與者保持在線狀態的熱情密切相關,越多參與者保持在線狀態,能更好地維持網路的穩定。因此,可以在網路上在線參與者不夠多的時候,提高參與者得到的激勵分成比例,從而激發更多的參與者上線。
如何確定當前參與者的在線情況呢?可以最後第N個參與者構造區塊時,將構造出來但是被廢棄的塊頭加入到區塊中,如果被丟棄的塊頭數量過多,說明在線人數過低,應當調節分成比例。
同時最後第N個參與者與其他參與者的分成同樣需要考慮,第N個參與者需要將交易加入區塊中,即需要維護UTXO池,同時第N個參與者還需要將被丟棄的塊頭加入新構建的區塊中。
為了激勵其將廢棄區塊頭加入新構建的區塊中,可以按照加入的區塊頭,適當增加一點小的激勵。雖然加入更多的區塊頭,可以在下一輪的時候增加分成的比例,應當足夠激勵參與者往區塊中加入未使用的塊頭了(這里參與者不可能為了增加分成而更多地加入區塊頭,每一個區塊頭都意味著一位礦工的工作量)。
一個參與者如果沒有維護UTXO池則無法構造區塊,但是可以參與前N-1個的簽名,因此為了激勵參與者維護UTXO池,作為最後一個構造區塊的參與者,必須給予更多的激勵,比如是其他參與者的兩倍。
從3.2的描述中可以知道一個用戶必須在線且維護UTXO池才可能盡可能地獲得利益。這種機制勢必會導致一些用戶將自己的賬戶託管給一個中心化的機構。這個機構一直保持在線,並為用戶維護其賬戶,在被選為構造區塊的參與者時參與區塊的構建並獲取利益。最後該機構將收益按照某種形式進行分成。
上面說到參與者必須用自己的密鑰進行簽名,而託管給某個機構後,這個機構在可以用這個密鑰簽名構造區塊的同時,也有可能使用這個密鑰消費用戶的財產。這里可以採用一種有限花銷的密鑰,這個密鑰有兩個功能,一個是將賬戶中的部分財產消費出去,另一個是將所有財產轉移到一個指定賬戶。在託管的時候可以使用這個密鑰,在被通知部分財產被花費後可以立即將所有財產轉移到自己的另一個賬戶下,以保證財產的安全。
從上面的分析可以看到,POA的安全性與攻擊者所擁有的算力和攻擊者所擁有的股權有關。假設攻擊者擁有的在線股權佔比為 ,則攻擊者的算力需要達到其他所有算力的 倍才能達成分叉。假設攻擊者股權總佔比為 ,網路中誠實用戶的在線比例為 ,則攻擊者的算力需要達到其他所有算力的 倍才能達成攻擊。
攻擊的分析表格如下:
從上文的分析可以看到,POA演算法相比於其他演算法可以改進網路拓撲,維持在線節點比例,需求更少的交易費同時減少共識演算法過程中的能量損耗。同時,PoA協議的攻擊成本要高於比特幣的純PoW協議。
參考文獻:Proof of Activity: Extending Bitcoin』s Proof of Work via Proof of Stake