正文
区块链的特点包括去中心化、公开透明、安全可靠和开放共识。其中,去中心化是指区块链由众多节点共同组成一个端到端的网络,不存在中心化的设备和管理机构。公开透明是指区块链的所有数据信息也是公开的,每一笔交易都会通过广播的方式,让所有节点可见。安全可靠是指单个甚至多个节点对数据库的修改无法影响其他节点的数据库,除非能控制超过51%的节点同时修改。开放共识是指任何人都可以参与到区块链网络,每个节点都能获得一份完整的数据库拷贝。节点间基于一套共识机制,通过竞争计算共同维护整个区块链。
03| 区块链的技术原语
区块链是主要运用了四个基础技术,分别是
哈希运算(SHA256)、数字签名、P2P网络和工作量证明(PoW)。
哈希加密算法
,SHA256,是由美国国家安全局研发,由美国国家标准与技术研究院(NIST)在2001年发布,属于SHA-2分支。将任何一串数据输入到SHA256将得到一个256位的Hash值(散列值)。其特点:相同的数据输入将得到相同的结果。输入数据只要稍有变化(比如一个1变成了0)则将得到一个千差万别的结果,且结果无法事先预知。
数字签名
,是基于椭圆曲线加密技术的公私钥来实现。有这么两个概念很重要,第一,公私钥是非对称加密技术,公钥和私钥不同,但是可以基于私钥生成公钥。第二是相关性,公钥加密的,对应的私钥才能解密。私钥加密的内容,对应的公钥才能解密。数字签名技术就是,我对传输文本进行摘要操作,也就是从“我爱北京天安门”这个字符串,使用哈希算法,抽取出例如“天”这个字作为文章摘要,我把“天”字用私钥加密,作为数字签名附在文本传输给对方。对方收到文件后,也对文本进行同样的哈希操作,得到“天”字,再用公钥对我的签名进行解密,如果也得出“天”字,那么说明,整个传输是可信的,如果不是,则传输过程有可能受到了篡改。
P2P网络
,根据比特币协议,区块链采用一种无结构的P2P网络。P2P网络分为有结构和无结构两种,区别在于路由规则的制定方面。有结构的P2P网络,例如Chord,利用一致性哈希表(DHT)构建每个节点的路由表。无结构的P2P网络代表是努特拉(Gnutella),节点之间的路由靠广播的方式,也就是说,一个节点想查找一个文件,他就问他的邻居有没有这个文件,他的邻居再问各自的邻居有没有,如此迭代。这样容易形成广播风暴,因此,一般设置一个网络TTL,来限制广播传播的范围。
工作量证明机制(PoW)
,简单理解就是一份证明,用来确认你做过一定量的工作。工作量是信任产生的基础。在区块链中,通过解决一个数学难题来证明自己的工作量。这个数据难题就是,对一个数字串进行两次SHA256运算,如果得到的数,小于一个指定的值,就算是成功。否则,要通过不断的尝试试错(学术上叫暴力破解),来求解这个数。一般来说,指定的结果值,前面都是多个零开头,例如图中,对于固定的上下文,随机数选择123456,得到的值小于指定值,算是解决了该数学难题。这是充分利用了SHA256加密算法的伪随机性。
04| 区块链的分类
从区块链的发展来看,区块链经历了3个阶段,首先是记录价值信息,例如记录比特币的历史交易信息,记录山寨币的虚拟资产信息,其次是记录商品服务的交易和位置信息,例如为管理产品交易和服务开发应用程序,为共享经济的物权交易开发应用程序。第三是制定未来的规则,这个是智能合约的阶段。从智能合约以后,称之为区块链2.0时代,以前的称之为区块链1.0时代。
从发展分类来看,一类是证明机制,例如,竖轴将证明机制从工作量证明机制,改为其他证明机制,例如,PoS股权证明机制,PBFT拜占庭容错机制等。一类是我们刚刚说的,记录对象的不同。还有一类是入网许可的变动,以前的区块链是共有链,允许所有人接入。现在发展成联盟链和私有链,只有加入联盟的,才能链入区块链,或者直接在一个公司内部,部署区块链,叫做私有链。最后,还有一种是混合链,即可以公有接入,也能够支持企业私有化。