1. 程式人生 > >區塊鏈基礎知識(3)-區塊鏈的儲存(怎樣記賬)

區塊鏈基礎知識(3)-區塊鏈的儲存(怎樣記賬)

我們已經知道,比特幣相當於是“全球賬薄”,那這份賬單是如何儲存的?也就是說把賬記在哪裡。

區塊鏈包含N個隨時間排序的塊,每個塊都有一個指向前一區塊的指標,所有塊通過這個指標形成一個鏈,所以稱為區塊鏈。第一個塊稱為創世區塊,如圖:

從上圖可見,區塊鏈由多個區塊組成,每個區塊由區塊頭和區塊體組成,每個區塊頭包含區塊元資訊,同時包含一個指向前一個區塊頭雜湊值的指標,這個指標是防止區塊鏈被篡改的關鍵資訊。

區塊體包含了比特幣的交易資訊,第一個交易是特殊交易,是獎勵給挖礦節點的酬勞,這是唯一一種可以產生比特幣的方式,也是比特幣的發行方式,其餘的交易都是轉賬交易,即比特幣從一個地址支付給另外一個地址,這也是實現比特幣價值轉移的唯一方式。因此,比特幣只有發行和轉賬兩種交易,比特幣產生以後只能從一個人轉賬到另外一個人,而不能憑空消失。

所有交易記錄都存在區塊裡,每一區塊包含了前一區塊所有交易的Hash值,依次按照此方法記賬,則最新的區塊總是間接包含了所有之前的賬單資訊。

所有這些區塊組合起來就形成了區塊鏈,這樣的區塊鏈構成了一個容易驗證(只要驗證最後一個區塊的Hash值就相當於驗證了整個賬本)、不可更改(任何一個交易資訊的更改,會讓所有之後的區塊Hash值發生變化,這樣在驗證時就無法通過)的總賬本。