位元幣的秘密(五)算力投票和競爭博弈

2021-10-07 22:16:36 字數 2770 閱讀 3808

挖礦收益,由區塊的構造者,通過在區塊中的第一筆交易,也稱為鑄幣交易(coinbase transaction)的輸出收入囊中。

回顧一下交易的構成,鑄幣交易的輸入部分可以為任意的字元,而其輸出金額可以包括區塊補貼/區塊中的總手續費。

在區塊經過了100個區塊的成熟之後,其中的鑄幣交易的輸出才可以轉出,我們認為此時節點運營商才真正獲得到了挖礦的收益。

因此,我們可以把位元幣挖礦的競賽,看作是節點運營商爭取在自己的區塊後獲得超過100個區塊投票支援的行為。

區塊鏈,是每個區塊中均包含有上乙個區塊頭的雜湊所構成的雜湊鏈。當節點運營商根據所接收到的經過驗證的交易構造了區塊模板之後,會將區塊模板傳送給算力運營商,並和算力運營商合作在區塊模板上,對這個區塊模板所指向的上乙個區塊頭的雜湊,使用算力進行投票。此時的算力投票,表明了節點運營商接受了上乙個區塊,願意付出沉沒成本來延長包括了上乙個區塊的這條區塊鏈。

為什麼每個節點運營商不拒絕其他人提交的區塊鏈,只延長自己的區塊鏈呢?當節點運營商通過自己的(各種方法)判斷,算力佔系統多數的節點運營商們所接受的那個區塊,更有可能成為下乙個區塊所在的區塊鏈(最長鏈)的一部分。因此,如果自己不接受這個區塊,非要在自己打包的區塊(假設是這個區塊的上乙個區塊)上挖礦,則在數學期望上,能夠成為最長鏈一部分的概率是低於不能成為最長鏈的一部分的。因此,當有乙個預期被多數算力接受的合法區塊被發現,理性的做法應該是接受這個區塊,在這個合法的區塊上繼續投票延長,而不是拒絕這個區塊投票給上乙個區塊。

這裡的最主要的預期,是多數算力的選擇。

在一切皆不可信的網路訊息中,如何知道多數算力的選擇在**?乙個最直覺的手段,是盲目的跟隨最新發現的區塊。但最新發現的區塊一定可以更快被其他算力接受麼?我們在挖礦過程中,也發現一些先被發現的區塊,並沒有成為最長區塊鏈中的一部分。因為節點的挖礦原則,應該是在發現區塊並完成驗證後,才開始在新區塊上用算力進行投票。因此,我們需要同時考慮這個區塊的驗證時間。先發現的區塊並不一定是最有可能的區塊鏈賬本候選,最先被其他算力驗證完成的區塊,則更有可能是區塊鏈賬本最長鏈的一部分。

當網路上出現了不同版本的區塊競爭時,我們需要判斷出,不同版本背後的算力數量,這將依靠對不同節點運營商的出塊數量來進行估計。這個數量將不應該被篡改和隱藏,將能夠充分體現出「多數算力」的選擇。節點運營商將可以通過 minerid 的技術,在區塊的鑄幣交易中新增一些可以表明自己身份的,不可以偽造的資訊。這裡就可以列出關於節點運營商的訪問方式等資訊,以後也可以通過公私鑰的非對稱加密技術,來向其他節點運營商傳遞只有節點運營商可以看到的資訊。

這樣,我們就可以1. 通過區塊資訊獲得節點運營商大致的算力比例,2. 通過查詢不同節點運營商資訊來獲得其投票的區塊資訊。綜合以上,我們就可以計算出,在同乙個高度上競爭的不同版本的區塊成為最長鏈一部分的概率。此時對於特定的節點運營商來說,在同一高度上的任何合法區塊上投票都是可行的,競爭的任何一方只要有新的區塊被發現,都會影響勝利的天平。但考慮到區塊的傳播和驗證的過程依然需要時間,所以節點運營商需要考慮在不同版本上投票的其他節點運營商,切換到另乙個區塊分支版本上所需要額外付出的處理代價,即使少數算力的分支成功的延長,也需要更大的代價才可以獲得多數算力的支援,在這個傳輸驗證過程中,也可能會被多數算力所在的分支所超越。最終乙個被大多數算力投票的分支版本勝出的概率將會略大。

從上面的分析我們可以看到,隨著區塊的逐漸增大,要處理的交易逐漸增加,節點運營商將會有越來越多的區塊雖然被發現,但因為傳輸驗證上的延遲而在算力競爭中落敗,帶來一定的孤塊率。區塊越小交易越少的時候,因為傳輸驗證成本帶來的延遲將會越少乃至可以忽略不計,就會有較小的孤塊。

但孤塊是有害的嗎?從個體上來看,節點運營商因為孤塊「損失」了一定比例的收入。但如果節點運營商平均來看都有同樣的損失,那麼對每個節點運營商來說都是公平的。而每個節點運營商就有動力通過提公升連通性,提公升驗證速度,平衡手續費收入和區塊大小等方法,來降低自己的孤塊率。低於平均水平的孤塊率,高於平均水平的手續費收入,就意味著更高的收入水平。

對於區塊鏈的使用者來說,我之前強調過交易鏈是核心,區塊鏈只是不同的記錄賬本。孤塊並不會影響到使用者的交易。同時使用者也有必要同時去檢測網路上可能發生的區塊分叉,並查詢到交易被不同區塊打包的狀態。這部分的查詢,可以通過直接查詢打包區塊的節點運營商的訪問接入點來完成。這就是 merchant api 所需要提供的內容。我們的使用者或者支付服務商,將可以通過 minerid 來查詢到不同的區塊頭的歸屬,並通過對應的 merchant api 來查詢關心的每乙個交易的狀態。

「誠實」的這個字眼,在*****現了多次。如果在出現不同區塊版本的時候,不僅僅是交易的順序不同,甚至還包括了交易的版本不同,也就是出現了對同乙個 utxo 的雙花,那會意味著什麼呢?

交易本就有不同版本,不同的節點運營商收到不同的版本。

交易一開始只有乙個版本,但是節點運營商藏起來了雙花版本但在打包的時候雙花。

交易一開始只有乙個版本,節點運營商通過交易可塑性打包了不同版本的交易。

如果使用者或支付服務商正確的使用了位元幣賬本,則他們可以盡可能的聯絡上所能查詢到的節點運營商,來檢視交易的狀態。如果這筆交易只有乙個版本,則該版本將有極大可能被下乙個區塊打包。如果交易出現多個版本,則顯然是傳送者進行了雙花的嘗試。

對於情況 2 和 3 來說,在交易傳送給所有節點運營商時,是檢測不到有雙花的。但在節點運營商最後打包的結果來看,卻出現了雙花版本。因為這些節點運營商遵循的應該是對交易先到先得的策略,因此在一開始報告交易不存在雙花,和後續的打包結果出現矛盾。這種矛盾,就是節點不誠實的表現。

不誠實的節點,損害了位元幣網路整體的安全性和穩定性,且因為節點對外作出的數字簽名的承諾,會被檢測出來,被誠實的節點所抵制。

因此,在 100 個區塊的成熟度要求下,打包了雙花交易的節點,會因為區塊被誠實節點放棄而丟失這部分區塊獎勵,誠實節點將可以重新組織成一條誠實的賬本記錄的區塊鏈。

這是位元幣成為全球唯一不可篡改真相之源的重要基礎。

位元幣算力飆漲對我們意味著什麼

大算力礦機投產導致的算力的快速 未必會促進幣價 反而增加了位元幣的拋壓,增加了下行的風險。隨著今年以來,位元幣 的持續走高,在10000美元附近橫盤,挖礦利潤相當可觀的影響下,位元幣算力持續飆漲,今天更是創紀錄的達到了90.78eh s,相比於18年10月份最高點,仍高20 並有望在未來的一段時間內...

雲算力雲挖礦引領位元幣挖礦2 0時代

在位元幣早期的1.0時代,人們獲得位元幣主要是通過礦機挖礦獲得位元幣或是直接從持幣者手中購買位元幣這兩種方式。在位元幣 快速增長的情況下,收益也在不斷的增加。但隨著幣價的低迷到後來市場進入熊市,位元幣的收益在不斷的減緩,而當時 位購買的位元幣也在熊市下不斷縮水。持幣的高風險依舊在不斷的加大,讓很多直...

位元幣背後的資料秘密,幣價漲跌規律暗藏玄機

幣圈歷經7個月的寒冬之後,位元幣 在今年2月首次出現連續 漲幅超過11 一度突破4000美元。近期,據gikee.com鏈上資料監測顯示 今年2月的交易量也是自去年3月以來的最高月度交易量,btc交易量超過2000億美元,eth交易量超過1000億美元。btc由於位元幣在2月中下旬突破4000美元,...