版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(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版本號(hào)(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ù)指的是版本號(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ū)塊開始都可以倒推到該區(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.通過哈希加密算法確保了鏈中存儲(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ū)塊代碼開發(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ū)塊體”中存儲(chǔ)的大量交易數(shù)據(jù)就是賬本中的“賬目”,“區(qū)塊頭”就是賬頁上與交易相關(guān)的關(guān)鍵信息。賬本根據(jù)時(shí)間順序維護(hù)每一頁賬頁,同樣地,區(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)方式賬本代碼開發(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)對(duì)象。3.在定義的對(duì)象中加入?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)目對(duì)應(yīng)依賴新建相關(guān)Python模塊代碼開發(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)賬本代碼開發(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)對(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. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度綜合金融服務(wù)合同
- 2024年度員工福利費(fèi)用共享協(xié)議
- 關(guān)于2022學(xué)生頂崗實(shí)習(xí)心得范文大全
- 傳統(tǒng)節(jié)日演講稿范文
- 2024年商場美食廣場招商合同
- 2024年度坂田二期公交車消防設(shè)備升級(jí)及安裝合同
- 2024年工程項(xiàng)目合作框架協(xié)議
- 2024年度玻璃購銷協(xié)議
- 語法副詞課件教學(xué)課件
- 2024年度網(wǎng)絡(luò)文化傳播合同
- 光伏發(fā)電項(xiàng)目達(dá)標(biāo)投產(chǎn)實(shí)施細(xì)則之歐陽科創(chuàng)編
- 焊接符號(hào)說明
- 第屆世界旅游小姐大賽中國云南總決賽招商贊助方案
- 愛立信網(wǎng)管BO操作流程
- 大學(xué)生計(jì)算與信息化素養(yǎng)-北京林業(yè)大學(xué)中國大學(xué)mooc課后章節(jié)答案期末考試題庫2023年
- 第四代篦冷機(jī)液壓系統(tǒng)的故障與維護(hù)獲獎(jiǎng)科研報(bào)告
- 人大代表為人民
- 文明之痕:流行病與公共衛(wèi)生知到章節(jié)答案智慧樹2023年四川大學(xué)
- 鋼結(jié)構(gòu)設(shè)計(jì)原理全套PPT完整教學(xué)課件
- 《基于杜邦分析法周大福珠寶企業(yè)盈利能力分析報(bào)告(6400字)》
- 延安整風(fēng)與馬克思主義中國化
評(píng)論
0/150
提交評(píng)論