毫无疑问,要开发一个完整可用的区块链应用程序,不是那么容易的,大家看看比特币的源码、以太坊的源码等就知道了。比 特币作为第一代区块链技术的代表,其功能设计比较简单,即便如此,相信不少初次阅读源码的读者仍然会觉得有些迷茫。微链的目的就是以比特币为原型,假设我 们自己要开发一个比特币程序(或称为微币),会怎么去做,通过一个极简的结构设计说明,以俯瞰的方式来了解一个区块链应用程序的基本构造。通过微链的设 计,我们至少可以回答以下问题:
·一个区块链应用程序需要包含哪些基本模块?
·一代技术(如比特币)与二代技术(如以太坊)主要有哪些区别?
·钱包、挖矿、区块链账本等到底是怎样的组合关系?
·所谓的可编程数字货币到底是什么意思?
·区块链应用程序可以作为单机程序运行吗?
微链会采用半源码半伪码的方式来进行说明,功能模块参照比特币。有读者说,为什么不直接模拟设计一个二代技术产品 (如以太坊)来讲解呢?以太坊支持的功能更加强大,不但支持数字货币还支持各种智能合约的编写,目前应用也很广泛,这个算是现在的主流技术了。我们从一个 简单的开始,了解清楚主要的程序结构组成,再去理解更复杂的以太坊等其他各种区块链应用,也就心中有数了。
时常有人问起,到底什么是区块链?网络上有很多资料,各种看不明白的名词,一会儿说去中心化,一会儿又说其实不能 叫去中心化而应该叫分布式,一会儿又是各种应用代币、去中心交易所、区块链操作系统,看得眼花缭乱,让人感觉很神秘,好像任何东西只要兑上点区块链这款药 水,立马就能腐朽变神奇,立马就变成了能解救人类难题的法宝。其实我们知道,区块链技术并不是什么基因突变出来的未来技术,事实上组成区块链技术的各个部 分,在计算机发展领域中早就有了,比如哈希计算、公开密钥加密技术、点对点网络通信,这些都是早已在运用的常规软件开发技术了。区块链应用真正值得称道的 是将这些传统而成熟的技术巧妙组合在一起,实现了一个非常有意思的功能。看过本章微链的介绍后,大家也就知道区块链技术真正的伟大之处了,不是在技术上, 而是在思想上。
来源:我是码农,转载请保留出处和链接!
本文链接:http://www.54manong.com/?id=72