版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
單元三區(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)說明大小父塊哈希值(previousblockhash)引用該區(qū)塊的前一個(gè)區(qū)塊的哈希值32B版本號(version)表示本區(qū)塊遵守的驗(yàn)證規(guī)則4B時(shí)間戳(timestamp)該區(qū)塊產(chǎn)生的時(shí)間4B隨機(jī)數(shù)(nonce)32位數(shù)字(以0開頭)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ù)指的是版本號、時(shí)間戳、隨機(jī)數(shù)和難度,這些數(shù)據(jù)占據(jù)了區(qū)塊頭剩下的44字節(jié)。鏈?zhǔn)酱鎯?.本質(zhì)上是實(shí)現(xiàn)區(qū)塊間的兩兩連接。實(shí)現(xiàn)方式為將前一個(gè)區(qū)塊的摘要數(shù)據(jù)(區(qū)塊頭中的父塊哈希值)存儲在后一個(gè)區(qū)塊的區(qū)塊頭中。2.在每個(gè)區(qū)塊中都能找到前一個(gè)區(qū)塊的信息,從每個(gè)區(qū)塊開始都可以倒推到該區(qū)塊鏈的創(chuàng)世區(qū)塊存儲方式的比較中心化數(shù)據(jù)存儲方式是將數(shù)據(jù)集中存儲,區(qū)塊鏈存儲方式是將數(shù)據(jù)按區(qū)塊的方式分塊進(jìn)行存儲。區(qū)塊間的聯(lián)系1.每當(dāng)一個(gè)新的區(qū)塊生成,在新區(qū)塊的區(qū)塊頭中需要包含父塊哈希值。以此方式,將新生成的區(qū)塊與已經(jīng)形成的區(qū)塊“鏈接”在一起。2.當(dāng)某一區(qū)塊的數(shù)據(jù)發(fā)生異動,那么其相對應(yīng)的子區(qū)塊中的數(shù)據(jù)都將發(fā)生“偏移”。3.通過哈希加密算法確保了鏈中存儲的數(shù)據(jù)不可篡改特性。PART2區(qū)塊的代碼實(shí)現(xiàn)代碼實(shí)現(xiàn)邏輯原理理解結(jié)構(gòu)設(shè)計(jì)代碼實(shí)施1.首先理解包括區(qū)塊、賬本的基本概念以及核心要素2.其次,使用程序設(shè)計(jì)對代碼進(jìn)行設(shè)計(jì),主要采用面向?qū)ο蟮姆绞蕉x基本概念3.最后,代碼實(shí)施,將設(shè)計(jì)的概念以實(shí)際代碼的形式輸出區(qū)塊代碼開發(fā)classBlock://初始化def__init__(...): ...//定義轉(zhuǎn)JSON格式函數(shù)
defto_json(): ...代碼實(shí)施感謝觀看單元三區(qū)塊鏈中的賬本PART1賬本的基本概念參照傳統(tǒng)賬本概念類比傳統(tǒng)紙質(zhì)賬本區(qū)塊鏈賬本帳頁區(qū)塊賬目區(qū)塊體(交易數(shù)據(jù))賬目相關(guān)的關(guān)鍵信息區(qū)塊頭區(qū)塊鏈中的“區(qū)塊”就是賬本中的“賬頁”,“區(qū)塊體”中存儲的大量交易數(shù)據(jù)就是賬本中的“賬目”,“區(qū)塊頭”就是賬頁上與交易相關(guān)的關(guān)鍵信息。賬本根據(jù)時(shí)間順序維護(hù)每一頁賬頁,同樣地,區(qū)塊鏈也是根據(jù)一定的順序?qū)⒏鱾€(gè)“區(qū)塊”鏈接在一起。賬本的存儲方式1.賬本中包含許多區(qū)塊,區(qū)塊間以鏈?zhǔn)降姆绞絻蓛上噙B2.區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點(diǎn)以去中心化的方式保存“賬本”,每個(gè)節(jié)點(diǎn)都將保存“賬本”的完整信息。PART2賬本的實(shí)現(xiàn)方式賬本代碼開發(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)開發(fā)功能PythonWeb(Flask)區(qū)塊添加功能區(qū)塊查詢功能1.使用PythonFlask框架,開發(fā)持久化運(yùn)行的Web服務(wù)端。2.定義區(qū)塊(Block)、區(qū)塊鏈(Blockchain)對象。3.在定義的對象中加入?yún)^(qū)塊添加以及區(qū)塊查詢功能,并使用Flask實(shí)現(xiàn)API接口查詢代碼開發(fā)邏輯API接口+FlaskWeb框架PART4項(xiàng)目開發(fā)基礎(chǔ)程序代碼結(jié)構(gòu)程序代碼開發(fā)步驟使用IDE打開項(xiàng)目使用安裝項(xiàng)目對應(yīng)依賴新建相關(guān)Python模塊代碼開發(fā)調(diào)試與驗(yàn)證感謝觀看單元三區(qū)塊鏈賬本的具體實(shí)現(xiàn)Block&Ledger賬本的存儲方式1.賬本中包含許多區(qū)塊,區(qū)塊間以鏈?zhǔn)降姆绞絻蓛上噙B2.區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點(diǎn)以去中心化的方式保存“賬本”,每個(gè)節(jié)點(diǎn)都將保存“賬本”的完整信息。程序代碼結(jié)構(gòu)賬本代碼開發(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)建簡單的區(qū)塊鏈賬本系統(tǒng)PART1實(shí)戰(zhàn)任務(wù)介紹任務(wù)介紹1.練習(xí)目標(biāo)以Web服務(wù)的形式持久化運(yùn)行區(qū)塊鏈,并通過HTTP接口的形式實(shí)現(xiàn)對區(qū)塊鏈的操作。2.練習(xí)內(nèi)容構(gòu)建區(qū)塊鏈的區(qū)塊對象和區(qū)塊鏈對象。使用Flask等Web服務(wù)框架運(yùn)行持久化的進(jìn)程,實(shí)現(xiàn)基于HTTP
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 深度解析(2026)GBT 19212.11-2020變壓器、電抗器、電源裝置及其組合的安全 第11部分:高絕緣水平分離變壓器和輸出電壓超過1000V的分離變壓器的特殊要求和試驗(yàn)
- 財(cái)務(wù)面試寶典財(cái)務(wù)知識面試題及答案
- 光纖融接設(shè)備項(xiàng)目可行性分析報(bào)告范文
- 實(shí)戰(zhàn)面試題員工自助崗運(yùn)營專員崗位解析與參考答案
- 物流主管面試題庫與參考答案
- 系統(tǒng)集成項(xiàng)目經(jīng)理的職位全解及答案
- 特殊人群毒理數(shù)據(jù)亞組展示策略
- 深度解析(2026)《GBT 18481-2001電能質(zhì)量 暫時(shí)過電壓和瞬態(tài)過電壓》
- 電信行業(yè)網(wǎng)絡(luò)運(yùn)營總監(jiān)面試題網(wǎng)絡(luò)優(yōu)化與安全保障
- 工程項(xiàng)目經(jīng)理職位的招聘面準(zhǔn)備題集
- 2025四川成都經(jīng)濟(jì)技術(shù)開發(fā)區(qū)(龍泉驛區(qū))區(qū)屬國有企業(yè)專業(yè)技術(shù)人員招聘18人筆試考試參考試題及答案解析
- 地鐵車站設(shè)施與服務(wù)優(yōu)化策略
- 文化創(chuàng)業(yè)街區(qū)創(chuàng)意
- 年會合同協(xié)議書模板
- 中西醫(yī)結(jié)合治療類風(fēng)濕關(guān)節(jié)炎疼痛
- 2025國際胰腺病學(xué)會急性胰腺炎修訂指南解讀課件
- 雨課堂學(xué)堂云在線《中國馬克思主義與當(dāng)代(北京化工大學(xué) )》單元測試考核答案
- 貴州省貴陽市2025-2026學(xué)年高三上學(xué)期11月質(zhì)量監(jiān)測化學(xué)試卷(含答案)
- 機(jī)場設(shè)備維修與保養(yǎng)操作手冊
- 動脈穿刺法教案(2025-2026學(xué)年)
- 2025年《肌肉骨骼康復(fù)學(xué)》期末考試復(fù)習(xí)參考題庫(含答案)
評論
0/150
提交評論