時(shí)間:2022-04-20|瀏覽:551
定義和原理定義
區(qū)塊鏈技術(shù)本身還在快速發(fā)展,相關(guān)規(guī)范和標(biāo)準(zhǔn)還有待進(jìn)一步成熟。
最早公認(rèn)的關(guān)于區(qū)塊鏈的描述性文獻(xiàn)是中本聰撰寫的《比特幣:一種點(diǎn)對(duì)點(diǎn)電子現(xiàn)金系統(tǒng)》,但該文獻(xiàn)側(cè)重于討論比特幣系統(tǒng),并未明確提出區(qū)塊鏈一詞。其中,區(qū)塊和鏈被描述為用于記錄比特幣交易賬本歷史的數(shù)據(jù)結(jié)構(gòu)。
此外,在上面給出的定義中,區(qū)塊鏈類似于分布式數(shù)據(jù)庫(kù)技術(shù)。通過(guò)維護(hù)數(shù)據(jù)塊的鏈?zhǔn)浇Y(jié)構(gòu),可以維護(hù)不斷增長(zhǎng)和防篡改的數(shù)據(jù)記錄。
筆者認(rèn)為,對(duì)區(qū)塊鏈的討論可以從狹義和廣義的角度來(lái)看待。
狹義的區(qū)塊鏈?zhǔn)且詤^(qū)塊為基本單元的鏈?zhǔn)綌?shù)據(jù)結(jié)構(gòu)。區(qū)塊中使用數(shù)字摘要來(lái)驗(yàn)證之前的交易歷史,適用于分布式記賬場(chǎng)景的防篡改和可擴(kuò)展性。需要。
廣義的區(qū)塊鏈也指基于區(qū)塊鏈結(jié)構(gòu)的分布式記賬技術(shù),包括分布式共識(shí)、隱私和安全保護(hù)、點(diǎn)對(duì)點(diǎn)通信技術(shù)、網(wǎng)絡(luò)協(xié)議、智能合約等。
早期申請(qǐng)
1990 年 8 月,Stuart Haber 和 W. Scott(1984 年從 AT&T 分離出來(lái)的研究機(jī)構(gòu))在論文“How to Time-Stamp a Digital”中提出使用鏈?zhǔn)浇Y(jié)構(gòu)來(lái)解決防篡改問(wèn)題,其中新的生成的時(shí)間證明需要包含前一個(gè)證明的哈希值。這可以認(rèn)為是區(qū)塊鏈結(jié)構(gòu)的最早原型。
中本聰比特幣論文_比特幣密碼學(xué)原理論文_關(guān)于比特幣原理的論文
后來(lái)在 2005 年 7 月,在 Git 等開(kāi)源軟件中,也使用了類似于區(qū)塊鏈結(jié)構(gòu)的機(jī)制來(lái)記錄提交歷史。
區(qū)塊鏈結(jié)構(gòu)最早的大規(guī)模應(yīng)用出現(xiàn)在 2009 年初啟動(dòng)的比特幣項(xiàng)目中。在沒(méi)有中心化管理的情況下,比特幣網(wǎng)絡(luò)持續(xù)穩(wěn)定,支持海量交易記錄,從未出現(xiàn)嚴(yán)重漏洞,吸引了眾多關(guān)注。廣泛關(guān)注。這些都與區(qū)塊鏈結(jié)構(gòu)本身的強(qiáng)驗(yàn)證特性密切相關(guān)。
基本的
區(qū)塊鏈的基本原理理解起來(lái)并不復(fù)雜。我們先來(lái)看三個(gè)基本概念:
如果將區(qū)塊鏈系統(tǒng)作為狀態(tài)機(jī),每筆交易都意味著一次狀態(tài)的改變;生成的塊是參與者對(duì)交易引起的狀態(tài)變化結(jié)果的共識(shí)。
區(qū)塊鏈的目標(biāo)是實(shí)現(xiàn)數(shù)據(jù)記錄的分布式賬本,只允許添加,不允許刪除。賬本底層的基本結(jié)構(gòu)是線性鏈表。鏈表由一系列“塊”組成(如下圖),前一個(gè)塊的哈希值記錄在后一個(gè)塊中。通過(guò)計(jì)算哈希值可以快速檢查一個(gè)區(qū)塊(以及區(qū)塊中的交易)是否合法。網(wǎng)絡(luò)中的節(jié)點(diǎn)可以提議添加一個(gè)新區(qū)塊,但該區(qū)塊必須經(jīng)過(guò)共識(shí)機(jī)制的確認(rèn)。
以比特幣為例,了解區(qū)塊鏈的工作流程
具體來(lái)說(shuō),以比特幣網(wǎng)絡(luò)為例,看看區(qū)塊鏈技術(shù)是如何使用的。
首先,用戶通過(guò)比特幣客戶端發(fā)起交易,消息被廣播到比特幣網(wǎng)絡(luò)進(jìn)行確認(rèn)。網(wǎng)絡(luò)中的節(jié)點(diǎn)將收到的等待確認(rèn)的交易請(qǐng)求打包在一起,并加上前一個(gè)區(qū)塊頭的哈希值等信息,形成區(qū)塊結(jié)構(gòu)。然后,嘗試找一個(gè)nonce字符串(隨機(jī)字符串)放入?yún)^(qū)塊中,使區(qū)塊結(jié)構(gòu)的hash結(jié)果滿足一定的條件(比如小于某個(gè)值)。這個(gè)計(jì)算隨機(jī)數(shù)字符串的過(guò)程通常稱為“挖掘”。找到 nonce 字符串需要一定的計(jì)算能力。
一旦節(jié)點(diǎn)找到滿足條件的隨機(jī)數(shù)字符串關(guān)于比特幣原理的論文,該塊在格式上是“合法的”并成為候選塊。節(jié)點(diǎn)在網(wǎng)絡(luò)中廣播它。其他節(jié)點(diǎn)收到候選區(qū)塊并驗(yàn)證后,發(fā)現(xiàn)確實(shí)合法后,就會(huì)將該區(qū)塊識(shí)別為新的合法區(qū)塊,并將其添加到自己維護(hù)的本地區(qū)塊鏈結(jié)構(gòu)中。當(dāng)大多數(shù)節(jié)點(diǎn)都接受了該區(qū)塊時(shí),就意味著該區(qū)塊被網(wǎng)絡(luò)接受,并且該區(qū)塊中包含的交易得到確認(rèn)。
這里有兩個(gè)關(guān)鍵步驟,一是完成一批交易的共識(shí)(創(chuàng)建合法的區(qū)塊結(jié)構(gòu));另一種是在鏈結(jié)構(gòu)中增加一個(gè)新的區(qū)塊,并被網(wǎng)絡(luò)識(shí)別,以確保它以后不能被篡改。當(dāng)然,在實(shí)現(xiàn)中還會(huì)有很多額外的細(xì)節(jié)。
中本聰比特幣論文_比特幣密碼學(xué)原理論文_關(guān)于比特幣原理的論文
比特幣基于計(jì)算能力(尋找隨機(jī)數(shù)字符串)的共識(shí)機(jī)制稱為工作量證明(PoW)。這是因?yàn)槟壳斑€沒(méi)有已知的快速啟發(fā)式算法可以使哈希結(jié)果滿足一定的條件,只能對(duì)nonce值進(jìn)行一次暴力計(jì)算。嘗試次數(shù)越多(工作量越大),計(jì)算出的概率就越大。
通過(guò)調(diào)整對(duì)哈希結(jié)果的約束,比特幣網(wǎng)絡(luò)平均控制了大約 10 分鐘的時(shí)間來(lái)產(chǎn)生一個(gè)合法的區(qū)塊。計(jì)算區(qū)塊的節(jié)點(diǎn)將獲得區(qū)塊內(nèi)所有交易的管理費(fèi)和協(xié)議規(guī)定的獎(jiǎng)勵(lì)費(fèi)(目前為 12.5 個(gè)比特幣,每四年減半)。
讀者可能會(huì)擔(dān)心任何人都可以加入比特幣網(wǎng)絡(luò)。如果網(wǎng)絡(luò)中存在惡意節(jié)點(diǎn),是否可以進(jìn)行惡意操作篡改區(qū)塊鏈中的記錄,從而破壞整個(gè)比特幣網(wǎng)絡(luò)系統(tǒng)。例如,最簡(jiǎn)單的例子是故意不識(shí)別其他人生成的合法候選塊,或者干脆拒絕其他節(jié)點(diǎn)的交易請(qǐng)求。
事實(shí)上,由于比特幣網(wǎng)絡(luò)中有大量(估計(jì)有數(shù)千個(gè))維護(hù)節(jié)點(diǎn),并且其中大部分都是功能性的,默認(rèn)情況下只允許看到最長(zhǎng)的鏈結(jié)構(gòu)。只要網(wǎng)絡(luò)中超過(guò)一半的節(jié)點(diǎn)不預(yù)先串通采取惡意行為,最長(zhǎng)的鏈就會(huì)大概率成為最終的合法鏈。而且隨著時(shí)間的推移,這個(gè)概率會(huì)越來(lái)越大。比如生成6個(gè)區(qū)塊后,即使有一半的節(jié)點(diǎn)聯(lián)手顛覆確認(rèn)結(jié)果,概率也只有(1/2)^6 ≈ 1.6%關(guān)于比特幣原理的論文,即低至1 /60 幾率。經(jīng)過(guò) 10 個(gè)區(qū)塊后,概率將降至千分之一以下。
當(dāng)然,如果整個(gè)網(wǎng)絡(luò)中的大部分節(jié)點(diǎn)聯(lián)手作惡,就會(huì)導(dǎo)致整個(gè)系統(tǒng)無(wú)法正常工作。這樣做往往意味著付出巨大的代價(jià),往往超過(guò)作惡所獲得的收益。
熱點(diǎn):中本聰 中本聰比特幣 關(guān)于比特幣 區(qū)塊鏈 區(qū)塊鏈技術(shù) 數(shù)據(jù) 智能合約 比特幣