區(qū)塊鏈應(yīng)用技術(shù) 課件 2.1區(qū)塊鏈內(nèi)涵及運行原理_第1頁
區(qū)塊鏈應(yīng)用技術(shù) 課件 2.1區(qū)塊鏈內(nèi)涵及運行原理_第2頁
區(qū)塊鏈應(yīng)用技術(shù) 課件 2.1區(qū)塊鏈內(nèi)涵及運行原理_第3頁
區(qū)塊鏈應(yīng)用技術(shù) 課件 2.1區(qū)塊鏈內(nèi)涵及運行原理_第4頁
區(qū)塊鏈應(yīng)用技術(shù) 課件 2.1區(qū)塊鏈內(nèi)涵及運行原理_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

區(qū)塊鏈內(nèi)涵及運行原理區(qū)塊鏈的背景公認(rèn)的最早關(guān)于區(qū)塊鏈的描述性文獻(xiàn)是中本聰所撰寫的文章《Bitcoin:APeer-toPeerElectronicCachSystem》但該文獻(xiàn)重點在于討論比特幣系統(tǒng),實際上并沒有明確提出區(qū)塊鏈的定義和概念,在其中指出,區(qū)塊鏈?zhǔn)怯糜谟涗洷忍貛沤灰踪~目歷史的數(shù)據(jù)結(jié)構(gòu)。另外,Wikipedia上給出的定義中,將區(qū)塊鏈類比為一種分布式數(shù)據(jù)庫技術(shù),通過維護(hù)數(shù)據(jù)塊的鏈?zhǔn)浇Y(jié)構(gòu),可以維持持續(xù)增長的、不可篡改的數(shù)據(jù)記錄。區(qū)塊鏈技術(shù)最早的應(yīng)用出現(xiàn)在比特幣項目中。作為比特幣背后的分布式記賬平臺,在無集中式管理的情況下,比特幣網(wǎng)絡(luò)穩(wěn)定運行了八年時間,支持了海量的交易記錄,并且從未出現(xiàn)嚴(yán)重的漏洞,這些都與巧妙的區(qū)塊鏈結(jié)構(gòu)分不開的。區(qū)塊鏈技術(shù)自身仍然在飛速發(fā)展中,目前相關(guān)規(guī)范和標(biāo)準(zhǔn)還在進(jìn)一步成熟中。區(qū)塊鏈的三大基礎(chǔ)概念區(qū)塊鏈的基本原理理解起來并不復(fù)雜。首先,區(qū)塊鏈包括三個基本概念:(1)交易(transaction):一次對賬本的操作,導(dǎo)致賬本狀態(tài)的一次改變,如添加一條轉(zhuǎn)賬記錄;(2)區(qū)塊(block):記錄一段時間內(nèi)發(fā)生的所有交易和狀態(tài)結(jié)果,是對當(dāng)前賬本狀態(tài)的一次共識;(3)鏈(chain):由區(qū)塊按照發(fā)生順序串聯(lián)而成,是整個賬本狀態(tài)變化的日志記錄。如果把區(qū)塊鏈作為一個狀態(tài)機,則每次交易就是試圖改變一次狀態(tài),而每次共識生成的區(qū)塊,就是參與者對于區(qū)塊中交易導(dǎo)致狀態(tài)改變的結(jié)果進(jìn)行確認(rèn)。在實現(xiàn)上,首先假設(shè)存在一個分布式的數(shù)據(jù)記錄賬本,這個賬本只允許添加、不允許刪除。賬本底層的基本結(jié)構(gòu)是一個線性的鏈表,這也是其名字“區(qū)塊鏈”的來源。鏈表由一個個“區(qū)塊”串聯(lián)組成,如圖2-1所示,后繼區(qū)塊記錄前導(dǎo)區(qū)塊的哈希值(prehash)。新的數(shù)據(jù)要加入,必須放到一個新的區(qū)塊中。而這個塊(以及塊里的交易)是否合法,可以通過計算哈希值的方式快速檢驗出來。任意維護(hù)節(jié)點都可以提議一個新的合法區(qū)塊,然而必須經(jīng)過一定的共識機制來對最終選擇的區(qū)塊達(dá)成一致。區(qū)塊鏈運行原理區(qū)塊鏈經(jīng)典案例-比特幣運行原理首先,比特幣客戶端發(fā)起一項交易,廣播到比特幣網(wǎng)絡(luò)中并等待確認(rèn)。網(wǎng)絡(luò)中的節(jié)點會將一些收到的等待確認(rèn)的交易記錄打包在一起(此外還要包括前一個區(qū)塊頭部的哈希值等信息),組成一個候選區(qū)塊。然后,試圖找到一個nonce串(隨機串)放到區(qū)塊里,使得候選區(qū)塊的哈希結(jié)果滿足一定條件(比如小于某個值)。這個nonce串的查找需要一定的時間去進(jìn)行計算嘗試。一旦節(jié)點算出來滿足條件的nonce串,這個區(qū)塊在格式上就被認(rèn)為是“合法”了,就可以嘗試在網(wǎng)絡(luò)中將它廣播出去。其他節(jié)點收到候選區(qū)塊,進(jìn)行驗證,發(fā)現(xiàn)確實符合約定條件了,就承認(rèn)這個區(qū)塊是一個合法的新區(qū)塊,并添加到自己維護(hù)的區(qū)塊鏈上。當(dāng)大部分節(jié)點都將區(qū)塊添加到自己維護(hù)的區(qū)塊鏈結(jié)構(gòu)上時,該區(qū)塊被網(wǎng)絡(luò)接受,區(qū)塊中所包括的交易也就得到確認(rèn)。當(dāng)然,在實現(xiàn)上還會有很多額外的細(xì)節(jié)。這里面比較關(guān)鍵的步驟有兩個:一個是完成對一批交易的共識(創(chuàng)建區(qū)塊結(jié)構(gòu));一個是新的區(qū)塊添加到區(qū)塊鏈結(jié)構(gòu)上,被大家認(rèn)可,確保未來無法被篡改。區(qū)塊鏈經(jīng)典案例-比特幣運行原理比特幣的這種基于算力尋找nonce串的共識機制稱為工作量證明(ProofofWork,PoW)。目前,要讓哈希結(jié)果滿足一定條件,并無已知的快速啟發(fā)式算法,只能進(jìn)行嘗試性的暴力計算。嘗試的次數(shù)越多(工作量越大),算出來的概率越大。通過調(diào)節(jié)對哈希結(jié)果的限制,比特幣網(wǎng)絡(luò)控制平均約10分鐘產(chǎn)生一個合法區(qū)塊。算出區(qū)塊的節(jié)點將得到區(qū)塊中所有交易的管理費和協(xié)議固定發(fā)放的獎勵費(目前是12.5比特幣,每四年減半),這個計算新區(qū)塊的過程俗稱為挖礦。讀者可能會關(guān)心,比特幣網(wǎng)絡(luò)是任何人都可以加入的,如果網(wǎng)絡(luò)中存在惡意節(jié)點單,能否進(jìn)行惡意操作來對區(qū)塊鏈中的記錄進(jìn)行篡改,從而破壞整個比特幣網(wǎng)絡(luò)系統(tǒng)。比如最簡單的,故意不承認(rèn)收到的別人產(chǎn)生的合法候選區(qū)塊,或者干脆拒絕來自其他節(jié)點的交易等。實際上,比特幣網(wǎng)絡(luò)中存在大量(據(jù)估計數(shù)千個)的維護(hù)節(jié)點,而且大部分節(jié)點都是正常工作的,默認(rèn)都只承認(rèn)所看到的最長的鏈結(jié)構(gòu)。只要網(wǎng)絡(luò)中不存在超過一半的節(jié)點提前勾結(jié)一起采取惡意行動,則最長的鏈將很大概率上成為最終合法的鏈。而且隨著時間增加,這個概率會越來越大。例如,經(jīng)過6個區(qū)塊生成后,即便有一半的節(jié)點聯(lián)合起來想顛覆被確認(rèn)的結(jié)果,其概率也僅為(1/2)6≈1.6%,即低于1/60的可能性。當(dāng)然,如果整個網(wǎng)絡(luò)中大多數(shù)的節(jié)點都聯(lián)合起來作惡,可以導(dǎo)致整個系統(tǒng)無法正常工作。要做到這一點,往往意味著付出很大的代價,跟通過作惡得到的收益相比,得不償失。區(qū)塊鏈運行原理如果把區(qū)塊鏈作為一個狀態(tài)機,則每次交易就是試圖改變一次狀態(tài),而每次共識生成的區(qū)塊,就是參

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論