1. 程式人生 > >比特幣如何做到去中心化

比特幣如何做到去中心化

1. 去中心化問題可以拆解為:

  • 誰在維護交易賬本? 交易賬本是公開的,每個節點都有備份。

  • 誰有權力批准那個交易是正當有效的? 節點們通過共識將區塊上鍊,在等待6個確認後,該交易有效。

  • 誰在製造新的比特幣? 比特幣的供應上限為2100萬個,區塊獎勵每四年減半一次。通過挖礦可以獲得區塊獎勵。 在這裡插入圖片描述

  • 誰在制定系統變化規則? 每產生2016個區塊之後,所有的節點都會重新計算目標區域對於整個輸出範圍的比例大小,使得後續的區塊產生的時間間隔約為10分鐘。所以大約每兩個星期,目標區域的大小會被重新計算一次。

  • 比特幣是如何取得交易價值的? 通過交易所兌換成通用貨幣。

2. 存在兩種容易混淆的雜湊指標:

  • 在區塊內用來表示接在之前哪個區塊後面的雜湊指標
  • 在交易裡的一個或多個用來指向之前交易裡說明比特幣來源的雜湊指標

3. 零驗證交易 如果在接收到別人轉給自己幣的聲明後沒有確認它上鍊就認為支付成功,這被稱為零驗證交易,容易造成雙重支付的問題。在比特幣生態系統中,最常見的方法是等待6個確認,防止雙重支付的發生。

4. 獎勵機制

  • 區塊獎勵

建立區塊的節點可以在這個區塊中加入一筆特別的交易。這筆交易就是一個造幣的交易,類似於財奴幣裡面的造幣,節點可以指定這筆交易的接收地址。當然節點通常會選擇一個屬於自己的地址,你可以把這視為對節點在共識鏈上進行建立區塊服務的報酬。

  • 交易費

任何交易的製造者都可以選擇讓交易輸出值比輸入值小。第一個建立區塊把交易放進區塊鏈的人可以取得這個差額,作為交易費。

5. 工作量證明

工作量證明的核心理念是,我們把隨機選取節點改為根據節點佔有某種資源的比例來選取節點,我們希望這種資源是沒有人可以壟斷的。如果這個資源是計算能力,則稱之為工作量證明;如果這個資源是某種幣的擁有量,則稱之為權益證明

  • 工作量證明不等式 H( nonce || prev_hash || tx || tx || ··· || tx )< target 理解:將前區塊的雜湊值和要填進新區塊的交易比喻成大炮,隨機值比喻成瞄準鏡,你要做的就是不斷調整瞄準鏡,擊中目標。實際上,這個目標十分小,你根本不知道在哪裡,唯一的方法就是狂轟濫炸。

  • 雜湊謎題的三個重要特性 (1)要有一定的難度 在2014年底產生一個區塊平均要做10^20次雜湊運算,這已經超過了商業化膝上型電腦可能的計算範疇。 (2)成本是可以通過引數來變化的 每產生2016個區塊之後,所有的節點都會重新計算目標區域對於整個輸出範圍的比例大小,使得後續的區塊產生的時間間隔約為10分鐘。所以大約每兩個星期,目標區域的大小會被重新計算一次。 (3)證實一個節點正確地計算了工作量證明很容易 這樣我們不需要一箇中央權威機構來證明礦工正確地完成了工作,任何節點或礦工都可以迅速地證實其他礦工找到的區塊符合工作量證明地規定。