POS--权益证明机制
生活随笔
收集整理的這篇文章主要介紹了
POS--权益证明机制
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
英文原文下載:http://download.csdn.net/download/vinsuan1993/9963770
PPCoin: Peer-to-Peer Crypto-Currency with Proof-of-Stake
PPC: 一種點對點的權(quán)益證明電子密碼貨幣
(sunnyking9999@gmail.com,?scott.nadal@gmail.com)
August 19th, 2012
摘要:
PPC是從中本聰所創(chuàng)造的BTC衍生出來的一種P2P的電子密碼貨幣,以權(quán)益證明(Proof of Stake,以下簡稱POS)取代工作量證明(Proof of Work,以下簡稱POW)來維護網(wǎng)絡(luò)安全。在這種混合設(shè)計中,POW主要在最初的采礦階段起作用。長遠來看,PPC網(wǎng)絡(luò)的安全并不依賴能源的消耗。因此PPC是一種節(jié)能而有成本優(yōu)勢的P2P電子密碼貨幣。POS是基于幣齡(coin age)并由通過與 BTC類似的由每個節(jié)點散列運算產(chǎn)生的,只是其搜索空間被限制了。區(qū)塊鏈的歷史及交易結(jié)算是通過一個中心化廣播檢查機制得到進一步保護。
背景
自從中本聰在2008年創(chuàng)造出比特幣以來,工作量證明(POW)的設(shè)計理念已成為P2P電子貨幣的主流思想。在中本聰?shù)脑O(shè)計中,POW是保證采礦及BTC安全的支柱。在2011年10月,我們意識到幣齡(coin age)可以是中本聰POW設(shè)計以外的另一種設(shè)計,即權(quán)益證明(POS)。自從那時起,我們就開始構(gòu)思利用POS來構(gòu)建P2P現(xiàn)金的安全模式及一部分造幣流程,而POW主要在最初的造幣階段起作用,而重要性逐漸減少。此設(shè)計試圖展示將來可在不依賴消耗能源的情況下,P2P電子貨幣仍然是可行的。我們將此項目命名為PPC.
幣齡(Coin age)
至少早在 2010年,中本聰就在BTC設(shè)計中提出并使用了幣齡這一概念,用于給交易排出優(yōu)先次序,但這個概念在其安全模式中沒有起來很重要的作用。幣齡只是簡單地定義為貨幣的持有時間段。簡單舉例說明一下:如果李明從韓梅那里收到了10個幣,并且持有90天,那么李明就收集到了900幣天的幣齡。
此外,如果李明使用了從韓梅收到的這10個幣,我們就認為李明從這10個幣上積累的幣齡被消耗(銷毀)了。
為簡化幣齡的計算,我們?yōu)槊總€交易引入了時間戳的概念。區(qū)塊時間戳及交易時間戳相關(guān)聯(lián)的協(xié)議得以強化,以便確定對幣齡的運算。
POS權(quán)益證明
POW是中本聰在技術(shù)上的主要突破,但POW的本質(zhì)意味著BTC需要消耗能源來維護運行,維護這樣一個網(wǎng)絡(luò)的運轉(zhuǎn)需要消耗大量的成本。這是用戶通過通貨膨脹及交易費的組合來支撐的。隨著BTC網(wǎng)絡(luò)采礦產(chǎn)出下降,最終其可能提高交易費用來維持整個網(wǎng)絡(luò)的安全性。很自然地我們就會問:是否一個去中心化的電子貨幣,都必須消耗大量能源(來維持運行)呢?因此PPC在理論上和技術(shù)上都是一個非常重要的突破,即P2P的電子貨幣系統(tǒng)并非一定要依賴能源消耗才能維持其安全。早在2011年BTC圈子中就有了對POS權(quán)益證明這個概念的討論。大概說來,POS指的是一種對貨幣所有權(quán)的證明。一筆交易所消耗的幣齡可被視為POS的一種形式。我們在2011年10月獨立發(fā)現(xiàn)了POS及幣齡的概念,當時我們意識到通過對BTC造幣及安全模式精心地進行重新設(shè)計,POS實際上可以取代POW的大部分功能。這主要是因為,和工作量證明POW一樣,POS權(quán)益證明也不可能被輕易偽造。當然,這也是貨幣系統(tǒng)中的一個關(guān)鍵特性-防止偽造。從哲學角度而言,貨幣在過去就是一種“工作量證明”,因此其本身可以代替工作量的證明。
POS設(shè)計下的區(qū)塊生成
在我們的混合設(shè)計中,區(qū)塊被分成兩種形式,POW區(qū)塊及POS區(qū)塊。圖:POS交易(利息幣)的結(jié)構(gòu)
在這種新型區(qū)塊里POS是一種特殊的交易稱利息幣(coinstake)(依據(jù)BTC當中的特殊交易:幣基(coinbase)而命名)。在利息幣(coinstake) 交易中,區(qū)塊持有人可以消耗他的幣齡獲得利息,?
同時獲得為網(wǎng)絡(luò)產(chǎn)生一個區(qū)塊和用POS造幣的優(yōu)先權(quán)。利息幣的第一個輸入被稱為 核心(Kernel),并需要符合某一Hash目標協(xié)議。由此POS區(qū)塊的產(chǎn)生具有隨機性,這一過程與POW相似。但有一個重要的區(qū)別在于,(POS)隨機散列運算是在一個有限制的空間里完成的(具體來說為1 hash/未消費錢包的輸出*秒),而不是象POW那樣在無限制的空間里尋找,因此無需大量的能源消耗。
權(quán)益核心(kernel)所要符合的隨機散列目標是以在核心中消耗的幣齡的目標值(幣*天coin-day)(這與BTC的POW是不同的,BTC的每個節(jié)點都是相同的目標值)。因此核心消耗的幣齡越多,就越容易符合目標協(xié)議。例如,如果李明的錢包里放了100個PPC,而且1年都沒有動,那么他可望在2天內(nèi)產(chǎn)生一個權(quán)益核心(個人理解為POS的區(qū)塊);同理,如果韓梅有200個PPC,也放了1年沒有使用,那么她可能在1天內(nèi)就能產(chǎn)生一個權(quán)益核心。
在我們的POS及POW設(shè)計中,隨機散列的目標值都是持續(xù)調(diào)整的。這與BTC約每兩周一次調(diào)整不同。主要目的是為避免采礦產(chǎn)出的突然波動。
基于POS的造幣(minting)
除了BTC的POW區(qū)塊之外,在PPC中還有一種新型的POS造幣過程。POS區(qū)塊將根據(jù)在幣利交易中所消耗的幣齡產(chǎn)生利息幣。設(shè)計時設(shè)定了每幣一年將產(chǎn)生1分(利息),以避免將來的通脹。雖然我們在造幣時保留了POW,使最初的造幣更加方便,但是可以預料到的是在一個純粹的POS系統(tǒng)里,最初的造幣可以種植在創(chuàng)世區(qū)塊里,形式類似于現(xiàn)實證券市場中的IPO。
主鏈協(xié)議
判斷主鏈的標準已經(jīng)轉(zhuǎn)化為對消耗幣齡的判斷。每個區(qū)塊的交易都會將其消耗的幣齡提交給該區(qū)塊,以增加該區(qū)塊的得分。獲得最高消耗幣齡的區(qū)塊將被選中為主鏈。這與BTC主鏈協(xié)議中以POW工作量最高的為主鏈的協(xié)議是不同的。
此設(shè)計減輕了部分對于51%攻擊的憂慮,因為在 BTC網(wǎng)絡(luò)中,誠實的節(jié)點至少需要占據(jù)51%的算力才能維護網(wǎng)絡(luò)的安全。(而在POS區(qū)塊中,要進行51%攻擊)首先要控制數(shù)量眾多的PPC,成本可能要高于獲得51%的算力,這樣就提高了攻擊的成本(攻擊者需要控制51%以上的PPC)。其次,攻擊者在攻擊網(wǎng)絡(luò)時,其幣齡也會消耗,
這將使得攻擊者阻止交易進入主鏈的行為變得更加困難。(類似算力增加不單是增加分子,也增加在分母上。)
校驗機制:保護歷史數(shù)據(jù)
使用消耗幣齡總數(shù)來決定主鏈的不足之處在于其降低了攻擊整個區(qū)塊鏈歷史的成本。即使BTC在保護歷史數(shù)據(jù)方面有較強的機制,但中本聰仍在2010年提出了校驗機制來保護區(qū)塊鏈歷史,防止任何可能在校驗點之前對區(qū)塊鏈的修改。另外一個憂慮是雙重支付的成本也可能降低了,由于攻擊者可以累積一定量的幣齡來迫使區(qū)塊鏈重組。為使此系統(tǒng)在商業(yè)上具操作性,我們引入了一個中心校驗機制,每一天大概會向全網(wǎng)廣播若干次,以凍結(jié)區(qū)塊鏈及結(jié)算交易。這種新型的校驗機制與BTC的警報系統(tǒng)類似。
Laurie(2011) 提出BTC并沒有完全解決大家的擔憂,即校驗機制沒有發(fā)布給大家。我們嘗試設(shè)計一種可行的去中心化的校驗機制,但發(fā)現(xiàn)在對抗網(wǎng)絡(luò)分叉(fork)時很困難。雖然向全網(wǎng)廣播的校驗機制是一種中心化的形式,但在沒有去中心化的解決方案之前,我們認為這是可以接受的。
另外一個使用中心化的廣播校驗機制的原因是:為了抵御一類DOS攻擊,在每個節(jié)點都接納一個POS區(qū)塊到本地數(shù)據(jù)庫(區(qū)塊樹)之前,權(quán)益核心必須得到驗證。由于BTC的節(jié)點數(shù)據(jù)模式(交易索引),需要為數(shù)據(jù)校驗設(shè)定一個最后期限,以確保在采納POS區(qū)塊進入?yún)^(qū)塊權(quán)之前,所有節(jié)點都有能力校驗與每個權(quán)益核心的聯(lián)接。從實用角度考慮,我們決定不修改節(jié)點的數(shù)據(jù)模式而是使用中央校驗機制。我們的解決方案是修改幣齡的計算,設(shè)置一個最低幣齡,比如說一個月,低于這個數(shù)字將計算為零。然后中央檢驗機制被用于確保所有節(jié)點都認可過去所有大于1個月的交易,由于核心要求不低于零的幣齡,這樣就讓允許權(quán)益核心得以驗證,這樣就必須使用大于一個月的輸出。
區(qū)塊簽名及雙重權(quán)益協(xié)議
每個區(qū)塊都必須由其擁有者簽名,以避免同一POS受到復制并被攻擊者使用。為了抵御攻擊者使用單個POS來產(chǎn)生多個區(qū)塊進行DOS攻擊,我們在設(shè)計上采用了雙重權(quán)益協(xié)議。每個節(jié)點都會收集其接觸到的(核心,時間戳)配對的所有利息幣交易信息。假如
一個已接收到的區(qū)塊包含與其它之前收到的區(qū)塊中的配對信息(核心,時間戳)是重復的,我們會忽略此區(qū)塊直到后者被孤立(orphaned)出去。
節(jié)能
當POW采礦產(chǎn)出趨近于零時,其對礦工的激勵作用就會越來越弱。長遠來看,由于礦工失去使用POW方式采礦的興趣,網(wǎng)絡(luò)消耗的能量就會降到非常低的水平。除非交易量/交易費用升到相當高的水平,否則 BTC網(wǎng)絡(luò)將難以維持這樣能源消耗。在我們的設(shè)計中,即使PPC網(wǎng)絡(luò)中消耗的能源接近于零,其仍被POS保護著。假如一種電子密碼貨幣允許POW趨于零的話,我們將這種幣稱為長期節(jié)能貨幣。
其它考慮
我們把POW的采礦產(chǎn)出率修改為隨難度變化,而不是隨著區(qū)塊高度(時間)而調(diào)整。當采礦難度升高,POW采礦產(chǎn)出率下降。與BTC的分步減半產(chǎn)出相比,PPC的產(chǎn)出曲線相對平滑,以避免人為地動搖市場。更具體地說,每當難度升高16倍,采礦產(chǎn)出就會減半。在摩爾定律下,長期而言,POW的產(chǎn)出率不會與BTC的通化膨脹行為有大的區(qū)別。根據(jù)傳統(tǒng)看法,我們認為更明智的做法是市場更青睞低通脹貨幣,而非高通脹貨幣,盡管出于理想主義的原因,某些主流經(jīng)濟學家對BTC進行了嚴厲批判。
Babaioff et al.(2011)在研究了交易費用的效果后,認為交易費用將鼓勵礦工們互相不合作。在我們的設(shè)計里,這種攻擊加重了。所以我們不再給發(fā)現(xiàn)區(qū)塊的礦工獎勵交易費。我們決定銷毀交易費用。這樣就去除了礦工們互相不承認對方區(qū)塊的動機。這也成為平衡POS造幣所產(chǎn)生通脹的通縮措施。
我們也在協(xié)議層面執(zhí)行交易費,以防止區(qū)塊膨脹攻擊。
在我們的研究中,除了POW及POS外,我們還發(fā)現(xiàn)了第三種證明系統(tǒng),POE(Proof of Excellence,試譯為優(yōu)秀證明)。在這種系統(tǒng)里,可以定期舉辦某種采礦比賽,根據(jù)參與者的表現(xiàn)來派發(fā)采礦收入,模擬在現(xiàn)實生活中的比賽的不同獎勵。雖然這種系統(tǒng)在人工智能在參與的比賽中占優(yōu)時,也傾向于耗費能源,但我們?nèi)匀挥X得這種概念非常有趣,因為這種機制提供了某種更靈巧的消耗能源的方式。
結(jié)論
在市場上驗證我們的設(shè)計時,我們希望POS成為一種比POW更加有競爭力的電子密碼貨幣,由于其消除了對能源消耗的依賴,從而在可比較的網(wǎng)絡(luò)安全水平下,達到了低通脹/低交易費用的結(jié)果。
參考文獻
Babaioff M. et al.(2011):On Bitcoin and red balloons.Laurie B.(2011):Decentralised currencies are probably impossible (but let’s at least make them efficient). (http://www.links.org/files/decentralised-currencies.pdf)
Nakamoto S.(2008):Bitcoin:A peer-to-peer electronic cash system. (http://www.bitcoin.org/bitcoin.pdf)
總結(jié)
以上是生活随笔為你收集整理的POS--权益证明机制的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: echarts-锥型柱状图
- 下一篇: 2016全国房价趋势