




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
單元三區(qū)塊與鏈的定義PART1區(qū)塊的概念區(qū)塊的概念1.交易數(shù)據(jù)被整合在一起而形成。具有不斷生成并且生成時(shí)間間隔固定的特點(diǎn)。2.區(qū)塊由區(qū)塊頭和區(qū)塊體兩個(gè)部分構(gòu)成。3.區(qū)塊頭記錄區(qū)塊的元數(shù)據(jù)(metadata)也叫特征值。區(qū)塊體指的是在一定時(shí)間內(nèi)所生成的詳細(xì)數(shù)據(jù)區(qū)塊頭詳細(xì)示例數(shù)據(jù)項(xiàng)說(shuō)明大小父塊哈希值(previousblockhash)引用該區(qū)塊的前一個(gè)區(qū)塊的哈希值32B版本號(hào)(version)表示本區(qū)塊遵守的驗(yàn)證規(guī)則4B時(shí)間戳(timestamp)該區(qū)塊產(chǎn)生的時(shí)間4B隨機(jī)數(shù)(nonce)32位數(shù)字(以0開(kāi)頭)32B目標(biāo)值(Target)當(dāng)前區(qū)塊的工作量證明目標(biāo)難度4B默克爾根(Merkle-root)基于當(dāng)前區(qū)塊中所有交易的哈希值4B區(qū)塊頭組成的第一部分?jǐn)?shù)據(jù)是父塊哈希值,在區(qū)塊頭中占據(jù)32字節(jié)區(qū)塊頭組成的第二部分?jǐn)?shù)據(jù)是默克爾根,在區(qū)塊頭中占據(jù)4字節(jié)區(qū)塊頭組成的第三部分?jǐn)?shù)據(jù)指的是版本號(hào)、時(shí)間戳、隨機(jī)數(shù)和難度,這些數(shù)據(jù)占據(jù)了區(qū)塊頭剩下的44字節(jié)。鏈?zhǔn)酱鎯?chǔ)1.本質(zhì)上是實(shí)現(xiàn)區(qū)塊間的兩兩連接。實(shí)現(xiàn)方式為將前一個(gè)區(qū)塊的摘要數(shù)據(jù)(區(qū)塊頭中的父塊哈希值)存儲(chǔ)在后一個(gè)區(qū)塊的區(qū)塊頭中。2.在每個(gè)區(qū)塊中都能找到前一個(gè)區(qū)塊的信息,從每個(gè)區(qū)塊開(kāi)始都可以倒推到該區(qū)塊鏈的創(chuàng)世區(qū)塊存儲(chǔ)方式的比較中心化數(shù)據(jù)存儲(chǔ)方式是將數(shù)據(jù)集中存儲(chǔ),區(qū)塊鏈存儲(chǔ)方式是將數(shù)據(jù)按區(qū)塊的方式分塊進(jìn)行存儲(chǔ)。區(qū)塊間的聯(lián)系1.每當(dāng)一個(gè)新的區(qū)塊生成,在新區(qū)塊的區(qū)塊頭中需要包含父塊哈希值。以此方式,將新生成的區(qū)塊與已經(jīng)形成的區(qū)塊“鏈接”在一起。2.當(dāng)某一區(qū)塊的數(shù)據(jù)發(fā)生異動(dòng),那么其相對(duì)應(yīng)的子區(qū)塊中的數(shù)據(jù)都將發(fā)生“偏移”。3.通過(guò)哈希加密算法確保了鏈中存儲(chǔ)的數(shù)據(jù)不可篡改特性。PART2區(qū)塊的代碼實(shí)現(xiàn)代碼實(shí)現(xiàn)邏輯原理理解結(jié)構(gòu)設(shè)計(jì)代碼實(shí)施1.首先理解包括區(qū)塊、賬本的基本概念以及核心要素2.其次,使用程序設(shè)計(jì)對(duì)代碼進(jìn)行設(shè)計(jì),主要采用面向?qū)ο蟮姆绞蕉x基本概念3.最后,代碼實(shí)施,將設(shè)計(jì)的概念以實(shí)際代碼的形式輸出區(qū)塊代碼開(kāi)發(fā)classBlock://初始化def__init__(...): ...//定義轉(zhuǎn)JSON格式函數(shù)
defto_json(): ...代碼實(shí)施感謝觀看單元三區(qū)塊鏈中的賬本PART1賬本的基本概念參照傳統(tǒng)賬本概念類(lèi)比傳統(tǒng)紙質(zhì)賬本區(qū)塊鏈賬本帳頁(yè)區(qū)塊賬目區(qū)塊體(交易數(shù)據(jù))賬目相關(guān)的關(guān)鍵信息區(qū)塊頭區(qū)塊鏈中的“區(qū)塊”就是賬本中的“賬頁(yè)”,“區(qū)塊體”中存儲(chǔ)的大量交易數(shù)據(jù)就是賬本中的“賬目”,“區(qū)塊頭”就是賬頁(yè)上與交易相關(guān)的關(guān)鍵信息。賬本根據(jù)時(shí)間順序維護(hù)每一頁(yè)賬頁(yè),同樣地,區(qū)塊鏈也是根據(jù)一定的順序?qū)⒏鱾€(gè)“區(qū)塊”鏈接在一起。賬本的存儲(chǔ)方式1.賬本中包含許多區(qū)塊,區(qū)塊間以鏈?zhǔn)降姆绞絻蓛上噙B2.區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點(diǎn)以去中心化的方式保存“賬本”,每個(gè)節(jié)點(diǎn)都將保存“賬本”的完整信息。PART2賬本的實(shí)現(xiàn)方式賬本代碼開(kāi)發(fā)classBlockchain://初始化def__init__(...): ...//添加區(qū)塊defadd_block(): ...
//創(chuàng)建創(chuàng)世區(qū)塊defcreate_genesis_block(): ...//定義轉(zhuǎn)JSON格式函數(shù)
defto_json(): ...代碼實(shí)施PART3持久化功能實(shí)現(xiàn)開(kāi)發(fā)功能PythonWeb(Flask)區(qū)塊添加功能區(qū)塊查詢(xún)功能1.使用PythonFlask框架,開(kāi)發(fā)持久化運(yùn)行的Web服務(wù)端。2.定義區(qū)塊(Block)、區(qū)塊鏈(Blockchain)對(duì)象。3.在定義的對(duì)象中加入?yún)^(qū)塊添加以及區(qū)塊查詢(xún)功能,并使用Flask實(shí)現(xiàn)API接口查詢(xún)代碼開(kāi)發(fā)邏輯API接口+FlaskWeb框架PART4項(xiàng)目開(kāi)發(fā)基礎(chǔ)程序代碼結(jié)構(gòu)程序代碼開(kāi)發(fā)步驟使用IDE打開(kāi)項(xiàng)目使用安裝項(xiàng)目對(duì)應(yīng)依賴(lài)新建相關(guān)Python模塊代碼開(kāi)發(fā)調(diào)試與驗(yàn)證感謝觀看單元三區(qū)塊鏈賬本的具體實(shí)現(xiàn)Block&Ledger賬本的存儲(chǔ)方式1.賬本中包含許多區(qū)塊,區(qū)塊間以鏈?zhǔn)降姆绞絻蓛上噙B2.區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點(diǎn)以去中心化的方式保存“賬本”,每個(gè)節(jié)點(diǎn)都將保存“賬本”的完整信息。程序代碼結(jié)構(gòu)賬本代碼開(kāi)發(fā)實(shí)施模式classBlockchain://初始化def__init__(...): ...//添加區(qū)塊defadd_block(): ...
//創(chuàng)建創(chuàng)世區(qū)塊defcreate_genesis_block(): ...//定義轉(zhuǎn)JSON格式函數(shù)
defto_json(): ...代碼實(shí)施感謝觀看實(shí)戰(zhàn)練習(xí):構(gòu)建簡(jiǎn)單的區(qū)塊鏈賬本系統(tǒng)PART1實(shí)戰(zhàn)任務(wù)介紹任務(wù)介紹1.練習(xí)目標(biāo)以Web服務(wù)的形式持久化運(yùn)行區(qū)塊鏈,并通過(guò)HTTP接口的形式實(shí)現(xiàn)對(duì)區(qū)塊鏈的操作。2.練習(xí)內(nèi)容構(gòu)建區(qū)塊鏈的區(qū)塊對(duì)象和區(qū)塊鏈對(duì)象。使用Flask等Web服務(wù)框架運(yùn)行持久化的進(jìn)程,實(shí)現(xiàn)基于HTTP
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個(gè)人住房按揭貸款擔(dān)保協(xié)議合同版
- 2025年度公司銷(xiāo)售業(yè)務(wù)員協(xié)議書(shū):智能穿戴設(shè)備銷(xiāo)售代理協(xié)議
- 2025年度就業(yè)協(xié)議違約金賠償與就業(yè)心理調(diào)適協(xié)議
- 2025年度綠色環(huán)保材料研發(fā)股東合作協(xié)議書(shū)
- 2025年度停車(chē)場(chǎng)停車(chē)費(fèi)電子支付服務(wù)合同
- 2025年度建設(shè)銀行個(gè)人住房貸款合同電子版
- 2025年度不銹鋼欄桿項(xiàng)目風(fēng)險(xiǎn)評(píng)估與管理合同
- 農(nóng)資裝卸搬運(yùn)服務(wù)協(xié)議
- 2025年度農(nóng)村土地經(jīng)營(yíng)權(quán)轉(zhuǎn)讓與農(nóng)業(yè)扶貧項(xiàng)目合作合同
- 二零二五年度土地承包種植與鄉(xiāng)村旅游結(jié)合合同
- 廉潔應(yīng)征承諾書(shū)
- 加盟招商方案PPT模板
- 中石油HSE培訓(xùn)試題集(共33頁(yè))
- 2022年云南省中考數(shù)學(xué)試題及答案解析
- 噴(烤)漆房VOCs治理設(shè)施日常運(yùn)行臺(tái)賬
- TS16949五大工具:SPC
- 五年級(jí)下冊(cè)-綜合實(shí)踐教案
- 貴州出版社小學(xué)五年級(jí)下冊(cè)綜合實(shí)踐活動(dòng)教案全冊(cè)
- [方案]隱框玻璃幕墻施工方案
- 設(shè)備安裝檢驗(yàn)批表格
- 6核島系統(tǒng)培訓(xùn)
評(píng)論
0/150
提交評(píng)論