比特币程序员:如何追到戴安娜(DianaCoin)? 情人节攻略
题记:女人的衣柜里总差一件衣服,男人的钱包里总差一些美元。那么比特币程序员的荷包里,穷的只剩技术。
当年我的女朋友名字叫戴安娜(Diana)。幸好,她还不是英国的王妃戴安娜,咱可没有查尔斯王子有钱。
情人节(劫)(2015年)马上到了,该送她什么了?送就送她一个亿吧(DianaCoin)。
造币记
声明:我们将使用比特币的0.10源代码(现在是0.16版本),新的数字币命名为“newcoin”,我的mac 上装的是Debian Jessie(Debian 8)系统。
(一)获取源代码
打开命令行shell。在主目录下创建一个名为“src”的新目录。输入:
cdmkdir srccd src下载源码:。它的名字可能是bebi (1)。将它复制到新目录并解压:
cp ~/Downloads/bi\(1\). .tar xvf bi\(1\).cp -r bi newcoin
(二)建立依赖环境
suecho 'deb-src sid main contrib non-free' >> /etc/a updateapt-get build-dep bitcoinapt-get –install-recommends install libbitcoin-devexit(三)makefile(自动生成系统)
cd biaclocalautomake --add-missing./configure --with-incompatible-bdbmake(四)检查测试,确保生成的可执行文件实际存在。
ls src/bitcoindls src/bitcoin-clils src/qt/bitcoin-qt
(五)为你的数字币命名
cd ~/src/newcoinfind . -type f -print0 | xargs -0 sed -i 's/bitcoin/newcoin/g'find . -type f -print0 | xargs -0 sed -i 's/Bitcoin/Newcoin/g'find . -type f -print0 | xargs -0 sed -i 's/BitCoin/Newcoin/g'find . -type f -print0 | xargs -0 sed -i 's/BITCOIN/NEWCOIN/g'find . -type f -print0 | xargs -0 sed -i 's/BTC/NCN/g'find . -type f -print0 | xargs -0 sed -i 's/btc/NCN/g'find . -type f -print0 | xargs -0 sed -i 's/Btc/NCN/g'find . -exec rename 's/bitcoin/newcoin/' {} ";"find . -exec rename 's/btc/NCN/' {} ";"find . -exec rename 's/bitcoin/newcoin/' {} ";"find . -exec rename 's/btc/NCN/' {} ";"find . -exec rename 's/bitcoin/newcoin/' {} ";"find . -exec rename 's/btc/NCN/' {} ";"将每个包含“bitcoin”或“btc”字符串的文件重命名,包括所有下级目录。
(六)拼写错误纠正,和修正版权声明。
grep -ir bitcsed -i 's/bitcon/newcoin/' src/qt/locale -i 's/bitcion/newcoin/' src/qt/locale -i 's/Bitconi/Newcoin/' src/qt/locale . -type f -print0 | xargs -0 sed -i '/opyright/ s/Newcoin/Bitcoin/' {} ";"sed -i 's/newcoin/bitcoin/g' doc/release-notes/*sed -i 's/Newcoin/Bitcoin/g' doc/release-notes/*find . -type f -print0 | xargs -0 sed -i '/opyright/ s/Newcoin/Bitcoin/' {} ";"sed -i 's/newcoin/bitcoin/g' doc/release-notes/*sed -i 's/Newcoin/Bitcoin/g' doc/release-notes/*(七)更改端口
比特币在其主要网络上使用端口8332和18332,测试网络上使用8333和18333。newcoin使用不同的端口,可以同时运行客户端。
find . -type f -print0 | xargs -0 sed -i 's/8332/9443/' {} ";"find . -type f -print0 | xargs -0 sed -i 's/8333/9444/' {} ";"(八)再次输入:
aclocal;automake --add-missing;./configure --with-incompatible-bdb;make再等几分钟。
(九)批量编辑。
现在开始做一些非常具体的编辑。
(1)修改newcoin / src/目录下的c。
编辑后,应该如下所示:
static Checkpoints::MapCheckpoints mapCheckpoints =boost::assign::map_list_of( 0, uint256("0x001"));(2)更改协议的“魔法”字节
在dataregtest设置另一个变量名为CMainParams。你有很多事情要改变。前四行代码设定值在数组calledpchmessagestart。这些是网络的“神奇字节”;它们是一系列四字节,将消息标识为属于特定的协议。0xf9,0xbe,0xb4,和0xd9的比特币使用。你想用别的东西,所以没有人能欺骗你的newcoin客户端连接到比特币网络,反之亦然。不要紧,这些都只是他们不匹配使用其他协议的人(尤其是其他cryptocurrency块链)。它们的值必须在0到255之间。我建议回到shell终端使用。
echo $RANDOMopenssl ecparam -genkey -name secp256k1 -out aler ec -in aler -text > aler ecparam -genkey -name secp256k1 -out ec -in -text > ecparam -genkey -name secp256k1 -out gene ec -in -text > gene(3)创建私钥。
openssl ecparam -genkey -name secp256k1 -out aler ec -in aler -text > aler ecparam -genkey -name secp256k1 -out ec -in -text > ecparam -genkey -name secp256k1 -out gene ec -in -text > gene将创建私钥和放入文件命名aler,,和gene。
(4)编辑时间戳字符串
const char* pszTimestamp = "The Times 03/Jan/2009 Chancellor on brink of second bailout for banks";(5)设置创世块的Coinbase key
cat genetxNew.vout[0].scriptPubKey = CScript() << ParseHex("...") << OP_CHECKSIG;(6)删除对比特币种子节点的引用
vFixedSeeds.clear();vSeeds.clear();(7)添加代码到创世块
gene = 414098458;之后和
hashGenesisBlock = gene();assert(hashGenesisBlock == uint256("....."));asser == uint256("....."));之前粘贴如下代码:
hashGenesisBlock = uint256("0x01")if (true && gene() != hashGenesisBlock) { Logprintf("recalculating params for mainnet.\n"); Logprintf("old mainnet genesis nonce: %s\n", gene.ToString().c_str()); Logprintf("old mainnet genesis hash: %s\n", ().c_str()); // deliberately empty for loop finds nonce value. for(gene == 0; gene() > bnProofOfWorkLimit; gene++){ } Logprintf("new mainnet genesis merkle root: %s\n", gene().c_str()); Logprintf("new mainnet genesis nonce: %s\n", gene.ToString().c_str()); Logprintf("new mainnet genesis hash: %s\n", gene().ToString().c_str()); }(8)现在再次输入:
make
(9)现在运行newcoin QT,挖掘你的创世纪块。
故事的结局呢?呵呵,还是留下点悬念好了。
我是创客哈雷,一个比特币程序员,祝天下Coder都能抱得美人归!
1.《索尼f8332如何root、索尼f8332参数!》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《索尼f8332如何root、索尼f8332参数!》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/keji/3276883.html