網(wǎng)上有很多關(guān)于pos機(jī)制為什么失敗,以太坊的共識機(jī)制的知識,也有很多人為大家解答關(guān)于pos機(jī)制為什么失敗的問題,今天pos機(jī)之家(m.afbey.com)為大家整理了關(guān)于這方面的知識,讓我們一起來看下吧!
本文目錄一覽:
pos機(jī)制為什么失敗
在開始之前,我們補(bǔ)充一點(diǎn)基礎(chǔ)知識。
第一個概念是哈希。簡單理解,哈希是一個函數(shù)。它的作用是將任意長度的數(shù)據(jù)作為輸入,轉(zhuǎn)變?yōu)楣潭ㄩL度的一個字符串作為輸出。這個函數(shù)有兩個主要特點(diǎn):
過程不可逆
對輸入做微小改動,輸出就會完全不一樣。
哈希函數(shù)有好多種,但都滿足上面的特點(diǎn)。幾乎任何加密貨幣都會用到哈希算法,以太坊采用的哈希算法是ethash算法。
第二個補(bǔ)充知識是,以太坊的區(qū)塊結(jié)構(gòu)。一個以太坊區(qū)塊包含區(qū)塊頭和區(qū)塊內(nèi)容。
區(qū)塊內(nèi)容就是區(qū)塊所包含的交易列表。而區(qū)塊頭中包含了如下信息:
前一個區(qū)塊的哈希、區(qū)塊序號(n)、隨機(jī)數(shù)(nonce)、目標(biāo)值(target)、時間戳(timestamp)、難度值(difficulty)、礦工地址(address)等內(nèi)容。
好了,介紹完上述基礎(chǔ),我們正式開始本文的內(nèi)容。
以太坊共有四個階段,即Frontier(前沿)、Homestead(家園)、Metropolis(大都會)、Serenity(寧靜)。以太坊前三個階段采用的是POW共識機(jī)。第四個階段將采用自己創(chuàng)建的POS機(jī)制,名為Casper投注共識,這種機(jī)制增加了懲罰機(jī)制,并基于POS的思想在記賬節(jié)點(diǎn)中選取驗(yàn)證
首先介紹以太坊前三階段使用的POW機(jī)制。我們在上節(jié)課中講到,POW機(jī)制的基本原理是下面這個公式:
計(jì)算值<目標(biāo)值
下面我們具體來看。在以太坊中
f(h, n) <M / d
我們先看目標(biāo)值
M / d
其中M是一個常數(shù),數(shù)值非常非常大,取2^256-1
d是當(dāng)前區(qū)塊的難度值,
d=pd + pd//2048*max( 1-(t-pt)//10,-99 ) + int( 2** (n//100000-2) )
其中,pd:前一個區(qū)塊的難度值
t:當(dāng)前區(qū)塊的時間戳
pt:前一個區(qū)塊的時間戳
n:當(dāng)前區(qū)塊的區(qū)塊序號
其中//為整數(shù)除法運(yùn)算符,a//b,即先計(jì)算a/b,然后取不大于a/b的最大整數(shù)。
調(diào)整難度的目的,是為了使挖礦時間保持在10-19s期間內(nèi),如果低于10s增大挖礦難度,如果大于19s將減小難度。另外,計(jì)算出的當(dāng)前區(qū)塊難度不應(yīng)低于以太坊創(chuàng)世區(qū)塊難度,即131072。
難度系數(shù)變大,目標(biāo)值M / d就越小,所以要計(jì)算出滿足要求的計(jì)算值就越難,這就是難度系數(shù)的意思。
再看計(jì)算值f(h, n)。f()這個函數(shù)表示一個概念函數(shù),代表一系列的復(fù)雜運(yùn)算。其中輸入?yún)?shù),h和n分別是,區(qū)塊頭Header的哈希值、以及Header中的隨機(jī)數(shù)Nonce。
計(jì)算機(jī)的整個挖礦過程,大致可以認(rèn)為是計(jì)算機(jī)不斷調(diào)整嘗試Nonce的值,再將計(jì)算出的f(h, n)與目標(biāo)值比較。這就是工作量證明,證明你一直在進(jìn)行計(jì)算工作。因?yàn)槲覀兡J(rèn),只有你在不算嘗試計(jì)算,才能找到那個對的nonce。雖然這其中有一定的運(yùn)氣成分,但我們現(xiàn)實(shí)生活中也有很多地方是看結(jié)果來證明你的工作量,這很好理解啊,你拿到了文憑,我就默認(rèn)你花過時間學(xué)習(xí)了。
這就是以太坊的pow過程,具體的源代碼,詳見文末。
好,我們接下來看以太坊第四階段的共識機(jī)制casper。這就是pos的一種。但它有自己的特點(diǎn):
在有些情況下,礦工的幣不但不會增加,反而會減少。為什么呢,我們來看看
在casper共識機(jī)制中,礦工要拿出保證金對他認(rèn)為的大概率勝出的區(qū)塊進(jìn)行下注。如果賭對了,他們就可以拿回保證金外加區(qū)塊中的交易費(fèi)用,也許還會有一些新發(fā)的貨幣;如果下注沒有迅速達(dá)成一致,他們只能拿回部分保證金,相當(dāng)于損失了一些保證金。因此數(shù)個回合之后礦工的下注分布就會收斂。一旦結(jié)果出來,那些選錯的礦工就會輸?shù)羲麄兊谋WC金。此外如果礦工過于顯著的改變下注,例如先是賭某個塊有很高概率勝出,然后又改賭另外一個塊有高概率勝出,他將被嚴(yán)懲。如此朝三暮四的人在區(qū)塊鏈中也是不受歡迎的啊。這條規(guī)則確保了礦工只有在非常確信其他人也認(rèn)為某個塊有高概率勝出時才下注。我們通過這個機(jī)制來確保不會出現(xiàn)下注先收斂于一個結(jié)果然后又收斂到另外一個結(jié)果的情況。(將該段的情況簡單體現(xiàn)在一個PPT頁面里)。這就是casper的大致工作機(jī)理,由于以太坊目前還沒有發(fā)布第四個版本,更多細(xì)節(jié)以后有機(jī)會再交流。
#比特幣[超話]#\x02#歐易OKEx#\x02#數(shù)字貨幣[超話]#\x02
以上就是關(guān)于pos機(jī)制為什么失敗,以太坊的共識機(jī)制的知識,后面我們會繼續(xù)為大家整理關(guān)于pos機(jī)制為什么失敗的知識,希望能夠幫助到大家!
![](/style/images/zhouzong.jpg)