开始制作我们自己的一个数字货币开发了,首先我们要从git上下载某套区块链体系的源码,比如选择BTC的主干代码,先下载好相关源码,同时准备好对应的编译环境(C++的建议在Linux)和安装好对应开发环境和工具(每个体系网上都有详细的安装教程文档)。
不过系统和开发环境的搭建、程序编译等过程都比较繁琐和有比较多坑(很多跟环境、依赖库和版本有关,请留意),不建议普通用户自己制作。对于开发人员,第一次可能要预计2-3天的安装配置时间。
拿BTC开发来说,他是Qt的开发环境,下载好源码并配置好环境后,在Qt Creator内打开该BTC核心的源码,配置相关文件和编译器,开始尝试编译BTC核心的客户端。这一步走通后,才可以放胆去改造成自己的数字货币。打开各个源文件,找到对应的地方调整参数即可,如调整每个区块出币数,总产量,调整难度等等,然后就到最关键的点,就是改名为自己的币名了,这时候通过全文搜索bitcoin或其他BTC的字样,改成你自己货币的名称,比如ElwinNB之类,想怎么取名就怎么取名,别忘记在资源文件夹里替换掉相关图标。如果一切顺利,经过重新编译,你的新币就顺利发明了。
前期很多山寨币,就是这个套路,基于BTC进行这里修改文字那里调整一些参数,很多并不理解整个体系和原理甚至没有阅读主要代码,后来大家都成为老司机后,新的币种会考虑一些微创新,在共识算法和加密算法作一些调整和优化,创新为自己的新算法。
Elwin觉得,数字货币也开发是一种互联网产品,且属于一个比较复杂的技术体系,即使你是基于别人的成熟代码进行修改,需要不断的迭代更新和维护的,纵使只是简单的版本跟随,你总要投入技术力量去跟进,因此我之前提的只是入门的尝试,真正要维护你的数字货币,你还得好好去阅读代码,了解架构和原理,根据你的业务和新币特性去不断优化和调整。
当然,现在这些简单套路都走不通了,现在要发行新的数字货币开发,要么你算法真有独有优势和特点,要么基于数字货币下的垂直业务和游戏规则有很好的模式(比如电竞币或文化币),否则大家很难去关注和拥护你的新币。