上面兩處被圈起來的地方都提到了乙個數字2256,特別是第一句話更是讓人費解,如果私鑰只能在1到2256間產生那豈不是太容易重複了。關於這點,我認為是在翻譯或者排版是出現了錯誤,2256應該是想表達2的256次方的意思。後續翻看其它資料是也證實了我的想法。
我是在docker下進行的原始碼安裝,使用官方的ubuntu16.04映象,許多標準系統裡的工具映象中是沒有的。對於源我還是比較習慣使用阿里雲,這裡把設定貼出來:
1、備份sources.list
cp /etc/apt/sources.list /etc/apt/sources.list_backup
2、更改源,vim /etc/apt/sources.list,內容如下:
deb-src xenial main restricted #added by software-properties
deb xenial main restricted
deb-src xenial main restricted multiverse universe #added by software-properties
deb xenial-updates main restricted
deb-src xenial-updates main restricted multiverse universe #added by software-properties
deb xenial universe
deb xenial-updates universe
deb xenial multiverse
deb xenial-updates multiverse
deb xenial-backports main restricted universe multiverse
deb-src xenial-backports main restricted universe multiverse #added by software-properties
deb xenial partner
deb-src xenial partner
deb xenial-security main restricted
deb-src xenial-security main restricted multiverse universe #added by software-properties
deb xenial-security universe
deb xenial-security multiverse
3、記得更新源,不更新資料來源是不能用的
apt-get update
編譯原始碼需依賴於libdb4.8-dev,文件要求使用「add-apt-repository ppa:bitcoin/bitcoin」來新增repository,之後在能夠安裝libdb4.8-dev,系統中沒有add-apt-repository,安裝方法如下:
apt-get install python-software-properties
apt-get install software-properties-common
這個工具應該是系統自帶的,但不知到為什麼我用的官方映象中沒有,安裝方法如下:
apt-get install bsdmainutils
apt-get install pkg-config
安裝完上面這些後使用./configure --without-gui就可以生辰makefile檔案了。--without-gui是使用使用者介面,因為我用的是docker 所以就把這個選項加上了。
解決方法如下:
找報錯檔案rpcrawtransaction.cpp的299行:
將const cscriptid& hash = boost::get(address);
修改為:
const cscriptid& hash = boost::get(address);
即可。
區塊鏈研習社原始碼研讀班 櫟楓
位元幣原始碼研讀二(交易指令碼)
今天接著寫五個全域性靜態常量,用於定義交易執行序列的規則.1 static const uint32 t sequence final oxffffffff 如果交易中的所有輸入都將nsequence賦值為該全域性變數值,nlocktime將無效 無需考慮交易的鎖定時間,最近的交易達到區塊後,交易立...
位元幣原始碼研讀之一
菜菜子 forest 關注 圖中紅色矩形框選中的src資料夾為位元幣原始碼所在目錄,因此我的位元幣原始碼之旅將從這個資料夾開始。二 找到入口函式 眾所周知,任何事物都有其起始位置,就像我們走進一棟房子應該先找到大門一樣。軟體程式也不例外,每個軟體程式都有其入口函式,那麼要研讀位元幣原始碼,首先需要從...
位元幣原始碼學習筆記(二)
2 14198 本章繼上一章交易建立之後介紹位元幣客戶端序列化資料的過程。位元幣客戶端所有的序列化函式均在seriliaze.h中實現。其中,cdatastream類是資料序列化的核心結構。cdatastream擁有乙個字元類容器用來存放序列化之後的資料。它結合乙個容器型別和乙個流 stream 介...