原创 基於Win10和VS2013/VS2019的 比特幣(v0.01)源碼編譯

by 紅亞太學鏈:ls、bjgpdn 前言 一、準備工作 1.1 源碼下載 1.2 項目結構 1.3 源碼結構 二、項目搭建 2.1 新建項目 2.2 源碼添加 三、第三方依賴編譯 3.1 wxWidgets     3.1.1 文件下載

原创 紅亞太學鏈之區塊鏈技術深度剖析第9章

比特幣是一種P2P形式的數字貨幣,最初由中本聰在2008年提出,比特幣客戶端軟件是根據中本聰的思路設計的開源軟件,並建構了其上的P2P網絡。 比特幣核心(Bitcoin-Core)是由舊版的中本聰客戶端 bitcoin-qt (versi

原创 比特幣索引數據庫*.ldb、peers.dat解讀

 比特幣最新版本的索引數據庫存儲在區塊文件同級目錄下的index目錄,採用leveldb數據庫存儲k/v數據,k的值爲b+hash(區塊),v的值代碼如下: template <typename Stream, typename Ope

原创 創世區塊中的CoinBase解析

  點贊 收藏 分享 文章舉報 bjgpdn 發佈了54 篇原創文章 · 獲贊 22 · 訪問量 2萬+ 私信 關注

原创 中本聰比特幣源碼第一個版本(V0.0.1)環境搭建和數據解讀

比特幣第一版源碼(V0.0.1),是對照比特幣白皮書研究區塊鏈的最佳選擇,通過Win7x64+Code::Blocks17.12/VS2013搭建運行調試環境,有利於學習區塊鏈,同時,對於運行生成的數據文件(addr.dat、wallet

原创 紅亞太學鏈之區塊鏈技術深度剖析第4章

  創世區塊生成後,構造CoinBase交易及普通交易、打包進入區塊、挖礦寫入區塊鏈中,代碼演示:   點贊 收藏 分享 文章舉報 bjgpdn 發佈了54

原创 比特幣區塊頭中的Merkle Root生成

比特幣區塊鏈中,每個區塊都有一個Merkle Tree,區塊頭中的Merkle Root(也稱爲Merkle樹的根哈希值)是由區塊體中所有交易的哈希值生成的: (1)如果一個區塊僅有一個CoinBase交易(例如創世區塊),這個Coin

原创 比特幣生成創世區塊-構造交易-挖礦-寫入區塊鏈代碼演示

基於比特幣源碼,摘取生成創世區塊、構造CoinBase交易和普通交易、打包至區塊、挖礦、寫入區塊鏈等模塊代碼,重新整理、編譯,生成一個完整的演示系統。   開發環境: Win7x64+CodeBlocks17.12   構造交易:  

原创 區塊數據存儲文件說明

Bitcoin Core安裝成功後,數據存儲文件夾位置(例如:E:\Bitcoin)如下: Bitcoin/blocks/文件夾下形如blkxxxxx.dat的文件爲區塊數據存儲的文件,每個文件128M左右,此文件夾下存儲了所有的區塊數

原创 紅亞太學鏈之區塊鏈技術深度剖析第5章

“日中爲市,致天下之民,聚天下之貨,交易而退,各得其所”   --《易經·繫辭下》   “其實並沒有什麼比特幣,只有 UTXO” ......   創世區塊生成後,構造CoinBase交易及普通交易、打包進入區塊、挖礦寫入區塊鏈中

原创 圖說比特幣交易與挖礦

交易過程: 挖礦過程:   點贊 收藏 分享 文章舉報 bjgpdn 發佈了54 篇原創文章 · 獲贊 22 · 訪問量 2萬+ 私信

原创 紅亞太學鏈之區塊鏈技術深度剖析第6章

區塊鏈(Blockchain)是比特幣的底層技術,去掉衆多的概念,首先看到的是:區塊鏈是作爲一種數據庫出現的,或者說是一個數據庫賬本,記載着區塊鏈網絡上所有的交易記錄。   點贊 收藏 分享

原创 比特幣交易的數據長度計算規則

比特幣交易數據中,交易數量、輸入數量、輸出數量等長度爲1-9字節的變長,實際上分爲:1、3、5、9四種長度等級,具體規則如下:   (1)交易數據長度第1個字節<0xFD(< 253),則使用這第1個字節表示交易長度,即該字節直接表示接下

原创 比特幣區塊數據(blk*****.dat)解讀工具完成

區塊鏈是由包含交易信息的從後向前有序接起來數據結構。它可以被存儲爲 flat file(一種包含沒有相對關係記錄的文件),或是存儲在簡單數據庫中。比特幣數據文件存儲格式爲blk*****.dat,結合數據結構思維導圖中的數據結構完成了區塊

原创 比特幣區塊鏈仿真平臺設計初稿

區塊鏈實驗系統完成後,下一步工作將開始設計實現一個區塊鏈仿真平臺,可以在實驗室環境中運行比特幣,多個用戶之前可以模擬比特幣的運行機制、掌握區塊鏈原理,甚至學會區塊鏈開發。系統包括B/S架構(配置、監控、管理、學習)和C/S架構(可以採用b