新手入村筆記 | 什麼是區塊鏈?
區塊鏈(Blockchain)熱了好久,2021年更是大爆發,把學習過程中的筆記,整理一份新手可以理解的內容,略過了很多技術層面的細節,如果有高手路過,要鞭請鞭小力一點!
拆解區塊鏈,從區塊與鏈的概念開始:
區塊(BlocK)是什麼?
區塊=交易資料+驗證訊息
在區塊鏈的網路中,當有人送出交易資訊,例如A要付款給B,A就在網路上告訴大家他有交易要執行,而網路上的記帳工作者,俗成「礦工」就會把交易打包成一個「區塊」,為了確認這個「區塊」上的資訊是正確的,這個「區塊」裡面包含了三種資訊:
這個區塊的交易資料、這個區塊的唯一識別碼、前一個區塊的識別碼
區塊怎麼成鏈(Chain)?
前面提到,每一個區塊都包含了唯一的識別碼,也包含了前一個區塊的識別碼,這些識別碼透過數學與密碼學的機制,可以互相驗證,也因為每一個區塊,都包含了前一個區塊的識別碼,所以就能輕易地排出時間序列,確保交易的先後順序,成為一整串的區塊鏈,像是下面這張圖
區塊鏈的特性
1. 分散在各戶人家 (aka. 「去中心化」Decentralization)
以往我們的交易資料,可能存在某公司或者銀行資料中心,如果這個資料中心損害、被駭或出錯,那所有的交易紀錄和結果都消失或出現不如預期的結果,想想戶頭裡的資產瞬間歸零,是不是很可怕
但在區塊鏈的世界中,每一台電腦(或稱節點)都存有紀錄,如果某一台電腦的資料錯誤或消失,還有其他台電腦的資料記錄著交易資訊,等於有很多備份檔的意思
有人會問說,那如果有兩分不一樣的檔案,怎麼知道誰是對的、最新的?
2. 共識機制
區塊鏈運作建立在所有節點都有相同的共識,讓彼此可以配合運作,並確保延續資料的正確性,其中一個是「最長鏈共識」:前面提過,區塊當中包含了前一個區塊的唯一識別碼,當新出的區塊採用A或B當作前一個區塊時,這條鏈變得比另外一條分叉的長的時候,這時候,所有的節點(全網)會依據「最長鏈共識」認可有新交易的這一條是要被保留下來的主鏈,可以用下面這個圖來理解,當C出現在B之後,下面這條成為大家共識的最長鏈,A也就失效了,如果資料還是要在上鏈,就必須從新送出交易訊息:
有沒有可能惡意操作讓自己的資料變成大家認可的最長鏈?
是有可能,這種情況也就是所謂的「51%攻擊」;在比特幣的世界裡,運用高度的運算優勢,讓自己掌握主導快速產生新的區塊,就會被全網認可;但實務上,除了要有很強大的運算能力來掌握出新的區塊之外,也因為所有的紀錄都可以被查核,當大家發現算力被特定人士掌握,整條鏈就會產生信生危機而瓦解
這篇筆記區塊鏈的基本概念,接下來會持續做新手入村系列筆記~