以比特幣為例,大約每隔十分鐘就會舉行壹次“權力競賽”,爭奪記賬權。就好像說妳的計算能力很牛逼,可以多計算,就好像妳的肌肉更強壯了,可以更好的戰鬥。大家都會照顧妳,讓妳寫這個賬號,也就是把壹個區塊(註意不是區塊裏的內容)的寫權進了區塊鏈。但需要註意的是,計算能力只能決定比賽獲勝的概率。比如某* * *有多張彩票,計算能力強的可以多買幾張,提高中獎概率。但是,買票多的,最後不壹定能中彩票。
區塊鏈是由這種計算能力保證的數據區塊鏈。從第壹個塊開始,每個塊按照壹定的規則收集數據,然後給這些數據附加壹個值,使形成的數據塊用相似的單向函數計算的結果落在壹定的範圍內。通過估算全網的計算能力和控制結果的範圍,保證在足夠長的時間內找到符合要求的數據塊。這個計算結果將包含在下壹個塊中,這樣形成的鏈式數據結構稱為區塊鏈。
每個小賬本稱為壹個塊,每個不同的區塊鏈協議(生成不同的加密貨幣)都會指定每個塊的大小(最初的比特幣是1M)。賬簿形成壹個塊,塊形成壹個鏈表。塊頭包含前壹個塊的哈希值,也就是區塊鏈。這樣,任何人都不能隨意修改內容或調換順序。如果妳這樣做,意味著妳需要重新計算所有的特殊數字。
規定世界上每個人都是允許搭積木的。每個建造新積木的人(找到這個特殊數字-SHA256有30個零)都可以獲得獎勵。對於建造新區塊的這些人(礦工):
1.沒有寄件人信息,不需要簽名。
2.每壹個新的區塊都會給整個貨幣增加壹個新的虛擬(加密)貨幣。
3.建造新區塊的過程也被稱為“采礦”:它需要大量的工作,並可以為整個經濟註入新的資金。
4.挖礦的工作是:接收交易信息,搭積木,廣播積木,然後獲得新的金錢作為獎勵。
對於每個礦工來說,每個區塊就像壹張小彩票,每個人都在拼命快速地猜數字,直到有壹個幸運兒發現了壹個特殊的數字,使得整個區塊的哈希值在開頭有很多個0,然後他就可以獲得獎勵。記得有壹次阿智虎答主,打了個形象的比喻。區塊鏈就像壹個國王有壹個美麗的女兒(塊),許多年輕人都期待著它。國王的方法是讓所有年輕人都算(學會改變生活)。誰計算的快(或者可能在計算哈希值的過程中運氣好),誰就贏了美女。
對於想用這個系統收款的用戶來說,不需要監聽所有的交易,只需要監聽礦工廣播的區塊,然後更新到自己的區塊鏈就可以了。
“塊”也可以想象成壹個盒子。街區裏有壹些數字貨幣和壹張小紙幣。這十幾分鐘產生的唯壹交易信息記錄在小紙條上。比如“小A轉給小B100元”;當然,這條信息肯定是經過加密的,為了保證只有小A和小B(通過他們的密鑰)才能讀到真實的內容。
這塊神奇的積木被創造出來後,很快就被埋在了地下。至於哪裏?沒有人不知道在所有計算機節點都參與挖地三尺之後還有可能找到(找到有效的工作量證明)。顯然,這是壹個工作量巨大、結果隨機的事件。但對於電腦節點來說,壹旦這塊塊被挖出地面,他將獲得塊內有價值的數字貨幣以及在“小啊轉給肖B100元”過程中支付的小費。同時,對於這個節點來說,只有他有權真實記錄筆記內容,這是壹種榮耀,其他節點只能使用它的副本,壹個沒有數字貨幣加持的副本。當然,這個神奇的街區還有其他特別的地方。
計算機節點從地下挖塊的過程可以稱為“挖礦”。就像我剛才說的,這是壹個巨大的工作量,富有運氣,但也富有利益。中國浦東新區張衡路的壹個節點突然跳出來興奮地說:“我挖到壹塊了!裏面的小紙條都是有效的!獎勵歸我!”。雖然這時節點張已經拿到了數字貨幣,但是對於其他電腦節點來說,因為有其他利益牽扯在內,他們不會默認選擇相信節點張所說的話;基於陌生節點之間互不信任的原理,他們取了張節點的所謂挖塊(副本),開始檢查塊內的小紙條信息是否真實有效。在區塊鏈世界中,節點通過檢查小紙條信息的準確性來判斷成功挖出區塊的節點是否在說謊。(如何界定小紙條信息的真實性和有效性,後面會解釋,這裏暫時不贅述)。在驗證過程中,每個節點會通過以下兩種行為直接表達對張衡路節點的身份和態度:停止已經進行了壹半甚至八成的挖掘過程;將張衡路節點成功挖掘的區塊(副本)附加到其自身區塊鏈的末尾。妳可以有壹點困惑:如果妳停止挖掘,妳可能已經進行了80%的挖掘活動,那麽之前80%的工作就白費了。!那麽,區塊鏈的末日到底是什麽?對於第壹個困惑。我想說妳說的完全正確,但是沒有辦法。現實就是這麽殘酷。即使做了80%的工作,也要放棄。這80%的努力幾乎可以視為無用,絕對是要付出代價的。第二個困惑,區塊鏈和區塊鏈的結局是什麽?因為事先並不清楚,所以妳可以簡單的想象壹下,塊是周期性的產生和挖出來的,壹個計算機節點可能已經提前執行了n次“從別人那裏拿塊”。>驗證小紙條有效性的過程必須在自己的節點上已經存儲了n個塊,並且這些塊會按照時間順序排列成壹個鏈。是的,這條鏈子就是妳壹直認為的區塊鏈。如果還是看不懂,沒關系,文章後面會有很多深入學習的機會。
走進街區裏更微觀的世界,了解小紙條是怎麽回事,它的出現,它的終身使命:發起交易時,發起人會收到壹張小紙條,他需要寫下交易記錄,比如“小偷給張三轉賬40元”。神奇的是,在寫的壹瞬間,小紙條的背面會自動格式化交易記錄,以包括至少兩個重要字段:“輸入值”和“輸出值”;“輸入值”用來記錄數字貨幣的有效來源,“輸出值”記錄數字貨幣發送的對象。剛剛創建的小紙條馬上被標記為“未確認”。成功地從地下挖出並最終連接到區塊鏈的小紙片首先會被標記為“有效”。如果這個有效票據被用作其他交易的輸入值,那麽這個有效票據很快就會被標記為“無效”。由於各種原因,該塊從鏈中斷開並丟棄,該塊中曾經被標記為“有效”的小紙條將被重新標記為“未確認”。區塊鏈沒有賬戶余額的概念,妳真正擁有的數字資產其實是壹條交易信息;通過簡單的加減運算,了解自己數字錢包裏的余額。以上1,2,3只是結論開始時強行灌輸給妳的知識點。有些描述可能會有點混亂,讓妳覺得只有了解了區塊鏈的整體,才能充分理解其中的奧妙。
塊容量,比特幣創建的時候,或者源碼中規定的,塊容量是1M。壹方面,最初設計為1M,防止DOS攻擊。另壹方面,中本聰在創建區塊鏈的時候,容量是32M,但是他通過壹個不起眼的Commit,把區塊鏈的容量改成了1M,為了防止區塊鏈增長過快,給區塊鏈容量的問題增加了壹些神秘感。1M的容量意味著比特幣處理的最大交易筆數約為2400筆(486882塊1034.39的大小非常接近)。
說白了,區塊鏈就是壹個分布式記賬的小本子,記賬的工具,基於密碼學的技術,數據交易壹旦被記錄在區塊鏈,數據就無法被篡改和否認。互聯網是價值的傳遞,區塊鏈是信任的傳遞。在區塊鏈技術作為信用背書的前提下,區塊鏈中的各個節點由單壹中心變為多方參與的統壹多中心,無需第三方機構參與即可實現交易傳遞,提高了效率。