在前一篇文章里讨论了基于 Ethereum 和 Hyperledger 开发区块链项目的优缺点。我的结论是明显的,两者志向远大,假以时日或许会一飞冲天,但现阶段的成熟度都还不够。如果你有心现在投入区块链的开发,那么我的建议是,基于 Bitcoin 自建链,同时关注甚至参与 Ethereum 或 Hyperledger 核心项目,帮它们夯实地基。

Bitcoin 无疑是最成熟、质量最佳、讨论最深入的区块链项目,如果按照关注度来算市场份额的话,在区块链领域,Bitcoin 可能三分天下有其二。它目前的正式发行版本是 0.13,但马上就将发布 0.14。不过因为还有若干重大技术挑战有待解决,因此预期代码还会有不小的变动,1.0 版本何时能问世尚在未知。尽管如此,Bitcoin 核心代码的质量已经非常高,相关文档非常完善,区块链的主要思想蕴藏其中,是一座向任何人无私开放的巨大的技术宝库。目前主流的区块链创业项目,仍然是从 Bitcoin 的 Github 代码库 fork 代码,并且加以修改,实现自己的改进。我们不妨称此类区块链为 Bitcoin 派生链。有些派生链是真的有改进,比如 Zerocoin, Emercoin,Counterparty, Omin Layer, Zcash, BitStream 等等,都是 Bitcoin 的核心贡献者和资深密码学家在扎实的学术研究基础上所做的改进项目,能够在某一个或几个方面显著拓展 Bitcoin 的能力。但大部分这个币那个币的项目,其实就是把 Bitcoin 源代码拿来改几个参数,改头换面就拿到市场上炒作了。当然,不是说这种炒作币并无价值,有些炒作币有其特定应用场景,因为某些参数调整之后,确实有利于某些特定市场特定行业的需求。但大多数炒作币从出生的那一天开始就只有一个目的:骗钱。各种骗钱币在市场上此起彼伏,这也是事实。当今区块链的第一大应用,其实就是货币炒作和投机。所以搞区块链的人,实际上要有一定的道德底线支撑,否则很容易走向邪路。

因此我认为今天切入区块链开发的正途,是从 Bitcoin 派生出一个区块链,然后面向具体应用需求,修改代码,突出特色,并且随时准备与其他的相关链联盟,比如形成互为侧链的关系。于此同时,参与整个区块链社群的技术创新和研究,对 Bitcoin、Ethereum 等核心项目进行力所能及的支持和贡献。

说到派生链,这里特别提一下 Litecoin,也就是莱特币,因为它是一个很典型的 Bitcoin 派生币,了解了 Litecoin 的故事,我们就能大致知道 Bitcoin 派生币的路数。

莱特币诞生于 2011 年 10月,当时几乎是 99% 的代码与 Bitcoin 是完全一样的,其唯一重要改进,就是用 Scrypt 取代SHA-256 作为挖矿难题(mining puzzle)。SHA-256 算法非常适合于硬件实现,因此 Bitcoin 火起来之后,挖矿算力迅速集中,到 2011 年下半年,GPU 矿机已经被 FPGA 矿机打垮,而更强悍的 ASIC 矿机也即将问世。这完全违背了中本聪“让每个人可以用笔记本电脑挖矿” 的初衷,也被视为是 Bitcoin 生态系统中的一个始料未及的严重问题。Litecoin 正是为了解决这个问题而诞生的。 Litecoin选择的 Scrypt 算法原本是密码学里的一个 Key Derivation Function,也就是通过一个密钥生成一个或若干的密钥的算法。与 SHA-256 不同的是,Scrypt 的计算速度主要不取决于 CPU 有多快,而取决于内存有多大。对于企图集中算力的矿主来说,他们很容易可以设计专业硬件,在计算速度上碾压普通电脑数十亿倍,但是要堆积其超过普通电脑数十亿倍的内存,那还是很需要花点银子的。因此在 Litecoin 刚推出来的时候,它主打的点就是拒绝挖矿大鳄,让普通玩家可以用笔记本电脑挖矿。就是这一招鲜,让 Litecoin 在 2013 年升值 1,300 倍。但我们需要认识到,Litecoin 没有在区块链研究和应用上面对于 Bitcoin 做出任何改进,更没有跟任何具体行业应用相结合,相对于 Bitcoin,它提供的额外价值很少,因此它的突然成功,更多是炒作的结果,没有实际的基础。人算不如天算,后来专用的 Scrypt ASIC 硬件的还是推出来了,普通人用 CPU 挖矿已经成为梦呓,Litecoin 唯一赖以为支撑的点也非常虚弱了。所以自 2014 年以来,特别是 2015 年初之后,Litecoin 价格暴跌,开发团队活力尽丧,十个月不发布新版本,明显已经心不在焉了。

Litecoin 最火的时候,出现了一大批 Litecoin 的派生币,比如狗狗币 Dogecoin,其派生链数量之多,甚至超过 Bitcoin。那么问题来了,如果我们今天要派生一个自己的区块链项目,是应该从 Litecoin 派生呢,还是从 Bitcoin 派生呢?

要回答这个问题,去追踪一下 Litecoin 自身的代码演进就知道了。Litecoin 最早派生自中本聪时代的 Bitcoin 源代码,Litecoin的原始开发者 Charles Lee 最初可能只是出于研究 Bitcoin 的目的才开启这个项目的。在很长时间里,Litecoin 甚至都没有修改Bitcoin 代码的生成目标,也就是说,你编译 Litecoin 源代码,生成的是叫 bitcoind 的可执行文件。后来 Litecoin 获得了足够的关注,开始独立发展,就这么走了好几年。但到了 2014 年 年初,Litecoin 的开发者发现 Bitcoin 的技术水平和代码质量已经远远超过了自己当时的水平,因此重新从 Bitcoin 中导入全部代码,然后再加以修改。由此可见,Bitcoin 不但是所有区块链项目之母,而且至今也仍然是开发力量最强、代码质量最高的一个。至于为什么那么多项目选择从 Litecoin 派生出来,无非是为了图简单而已,不足为训。

所以结论很清楚,我们今天搞自己的区块链,一定要站在真正的巨人身上,这个巨人毫无疑问就是 Bitcoin。


区块链开发技术路线的思考(二)相关推荐

  1. 区块链开发技术路线选择的思考(之一)

    现在整个技术社区的注意力主要还是在 Web 和移动开发上面,相关人才供销两旺.不过个别有心人已经开始转向大数据分析.深度学习.VR/AR 这些前景看好的技术.最近几个月区块链非常火,所以也有极少数开发 ...

  2. 《区块链开发技术综述》乱弹

    朋友圈看到一篇名为<区块链开发技术综述>的文章被广泛转载,我有一些技术与理念上的不同意见,写在这里. 第一是按照节点准入规则,划分为公有链.私有链和联盟链.公有链的代表自然是比特币和以太坊 ...

  3. 靠谱的区块链应用到底是啥?通证啊!——第二次中关村-CSDN区块链开发技术沙龙【含PPT下载】

    针对"通证"话题的多篇分析文章预热,本期沙龙在开始前就被区块链网友广泛关注.此次沙龙的参会者经过层层的严格筛选,才得以与众位大咖面对面沟通. 12月15日下午,中关村区块链产业联盟 ...

  4. 区块链技术入门 | 区块链开发技术栈

    如果你想要从事区块链行业,那么当前区块链技术开发划分必然值得一看. 大概我所了解的在区块链开发的分为区块链底层开发.区块链Dapp开发.区块链生态开发这三类. 如果想要从事与区块链底层开发,需要做以下 ...

  5. 分析区块链开发技术的优缺点

    区块链技术在经过10年的发展,引起了世界各地的关注,并且各个领域的企业组织也在寻找区块链服务的落地应用,区块链技术已经悄然走入了我们的生活.区块链技术的发展趋势在当前看来是十分可观的,但还需要一定的时 ...

  6. 注册区块链开发技术公司流程

    1.首先决定好是想注册国内的公司还是海外公司? 国外的公司,你想注册哪里?每个国家费用不一样. 2.核名 注册公司首先要有名称,而根据工商注册局所披露的企业核名来看,目前和区块链相关的名字注册率是在上 ...

  7. 区块链开发公司所要了解的技术框架

    对于区块链开发公司应该怎么站稳脚跟,现在四面八方有不同的声音,不同的区块链开发公司有不同的想法,有些公司会通过提升技术来加强产品设计,有些公司会寻找更多的应用场景来促进区块链开发技术的发展,还有些人只 ...

  8. 区块链开发公司 区块链开发三大重点你要明白

    区块链技术应用落地在政策的支持下,逐渐加快!其共识算法等区块链的核心技术存在很大的应用开发潜力.早在2017年4月,先达区块链开发公司就已经将区块链开发应用在了溯源防伪.物流信息.法务存证.公益.供应 ...

  9. 区块链开发公司 区块链应用落地为何能成为焦点?

    自区块链开发技术步入3.0时代以来,区块链开发公司的落地应用进程逐渐加快!在国家鼓励下,提供实体区块链项目的减税.场地.资源等支持政策!区块链开发公司的技术可以应用于商业民生的各种领域!深具潜力的市场 ...

最新文章

  1. 取代C语言标准输入输出:cin 和 cout【C++标准输入输出】
  2. 查看hdfs目录的方法
  3. java 链接为分布式 hbase,hbase学习记录(一):hbase伪分布式安装
  4. MyEclipse生成Javadoc帮助文档
  5. 任何傅里叶级数展开和卷积可以参考一下页面
  6. cache 计算机系统实验报告,西安交通大学计算机系统结构实验报告CACHE.doc
  7. CodeEditPro2.1基础使用——打开文件,查看波形图及语谱图
  8. CV学习笔记-Alexnet
  9. 微计算机最常用的输入法,输入无极限 最常用五款拼音输入法横评
  10. kettle下载安装和连接
  11. 第五届山东ACM大赛汇总
  12. 微缩脚步趋缓 摩尔定律由于EUV微影技术延迟失去动力
  13. 张远龙高性能服务器,荆楚匠人:张远龙巧手妙思 葫芦上绘出精彩人生
  14. python计算多边形的面积并保留两位小数_计算任意多边形面积的Python实现
  15. DSP中定点与浮点运算
  16. 面向单片机编程(三)- 数码管显示
  17. spring boot使用jasypt加密原理解析
  18. 【计算机网络】吞吐量与瓶颈链路
  19. Exchange ActiveSync 配置
  20. python中怎么随机从字典中取值_python怎样从字典中随机取数据

热门文章

  1. 吴恩达机器学习(二十二)—— 大规模机器学习
  2. 【WordPress主题】Ripro主题Ripro8.6破解无授权版wp主题源码【亲试可用】
  3. ubuntu20.04配置Defects4j
  4. OpenGL渲染管线介绍
  5. Django报错 __init__() missing 1 required positional argument 'on_delete'
  6. 在PPT表格中,如何在左上角的网格中画一条斜线,并在斜线两边标注第一行第一列的属性名?
  7. 数据库之oracle学习(一)
  8. mysql的左联、右联、内联查询
  9. 交换机3种工作模式及stp原理
  10. 纯HTML、CSS写一个简单的水滴特效,水滴里面可加图标