區塊鏈裡面的那些基本概念

現如今,區塊鏈已經成為全民關注的領域,不少企業也早已深入其中研究該技術的落地情況。但目前仍有很大一部分人對區塊鏈技術的相關概念並不熟悉。

鏈動學院特為大家整理推出【區塊鏈小知識】的系列課程,通過通俗易懂的語言為大家講解區塊鏈的小知識,希望能幫您更快速更簡單的認識區塊鏈。

區塊鏈裡面的那些基本概念

今天我們一起聊聊區塊鏈裡面的一些常見概念:區塊,創世區塊還有哈希。

區塊

區塊鏈由一個個區塊(block)組成。數據通過載體形成文件,永久記錄在數字貨幣網絡上。我們把這個載體稱之為區塊(block),每一個區塊就是一個數據庫,無數的區塊鏈接起來,就形成區塊鏈。新的區塊被添加到鏈的末端,數據一旦書寫,就很難修改或刪除。

區塊很像數據庫的記錄,每次寫入數據,就是創建一個區塊。

區塊鏈裡面的那些基本概念

每個區塊包含兩個部分。

區塊頭(Head):記錄當前區塊的特徵值

區塊體(Body):實際數據

區塊頭包含了當前區塊的多項特徵值:生成時間、實際數據(即區塊體)的哈希、上一個區塊的哈希...

創世區塊

區塊鏈的第一個區塊,即為創世區塊。它是區塊鏈裡所有區塊的共同祖先。你從任一區塊,循鏈向後回溯,最終都將達到創世區塊。

哈希(hash)

所謂"哈希"就是計算機可以對任意內容,計算出一個長度相同的特徵值。區塊鏈的 哈希長度是256位,這就是說,不管原始內容是什麼,最後都會計算出一個256位的二進制數字。而且可以保證,只要原始內容不同,對應的哈希一定是不同的。

舉例來說,字符串123的哈希是 : a8fdc205a9f19cc1c7507a60c4f01b13d11d7fd0(十六進制),轉成二進制就是256位,而且只有123能得到這個哈希。(理論上,其他字符串也有可能得到這個哈希,但是概率極低,可以近似認為不可能發生。)

區塊鏈裡面的那些基本概念

因此,就產生兩個重要的推論。

推論1:每個區塊的哈希都是不一樣的,可以通過哈希標識區塊。

推論2:如果區塊的內容變了,它的哈希一定會改變。

Hash 是不可修改。

區塊與哈希是一一對應的,每個區塊的哈希都是針對"區塊頭"(Head)計算的。也就是說,把區塊頭的各項特徵值,按照順序連接在一起,組成一個很長的字符串,再對這個字符串計算哈希。

哈希由區塊頭唯一決定,區塊頭包含很多內容,其中有當前區塊體的哈希,還有上一個區塊的哈希。這意味著,如果當前區塊體的內容變了,或者上一個區塊的哈希變了,一定會引起當前區塊的哈希改變。

這一點對區塊鏈有重大意義。如果有人修改了一個區塊,該區塊的哈希就變了。為了讓後面的區塊還能連到它(因為下一個區塊包含上一個區塊的哈希),該人必須依次修改後面所有的區塊,否則被改掉的區塊就脫離區塊鏈了。由於後面要提到的原因,哈希的計算很耗時,短時間內修改多個區塊幾乎不可能發生,除非有人掌握了全網51%以上的計算能力。

正是通過這種聯動機制,區塊鏈保證了自身的可靠性,數據一旦寫入,就無法被篡改。這就像歷史一樣,發生了就是發生了,從此再無法改變。

每個區塊都連著上一個區塊,這也是"區塊鏈"這個名字的由來。

更多區塊鏈小知識,持續更新中......


分享到:


相關文章: