从架构师角度看区块链-什么是区块链

进入2018年,区块链和比特币的热度盛霄直上,作为“古典互联网”的一员,虽然并不认可比特币的理念,但作为其底层技术的区块链,还是有非常值得研究的地方。

一、区块链,是构筑比特币的基础技术,区块链实际上是一个去中心化的链式分布式数据库,使用密码学产生,里面的数据无法被篡改。区块生成的奖励,最初4年是50比特币,但每生成210000个区块,奖励金额会减半,目前是25个比特币。当前的速度,平均每10分钟生成1个区块。1个区块只有1M存储空间,只够写入2000笔比特币交易。

区块链有3个特征

1、历史生成的区块是无法改变的

2、只能在最新的区块后面生成新的区块

3、新区块的必须满足一定条件才有效

二、区块链目前主要分为三种:

1、公共区块链:典型应用有比特币和以太坊

2、联盟(行业)区块链:典型应用包括Hyperledger

3、私有区块链

三、区块分为区块头和区块体两部分。

区块头80个字节,包括:

1、上一区块的哈希值,32字节

2、时间戳,4字节(10分钟一个维度)

3、随机数,4字节

区块体包括10分钟内选定的交易记录,如果10分钟内产生了2个合法帐本,则采用少数服从多数的原则,只采用多数的那个,也就是说,区块链最快10分钟产生一个帐本。

第一笔交易是用于奖励矿工的特殊交易,由矿工自己添加进区块。

四、区块链是6层模型,从下到上分别为:

1、数据层:区块定义、加密算法、时间戳

2、网络层:P2P、多播通信

3、共识层:Paxos、Pos、Pow

4、激励层

5、合约层

6、应用层:帐本、直播、短视频、购物、广告

五、区块链的工作流程

1、将新的数据记录向全网进行广播

2、接收节点对收到的数据记录信息进行检索

3、全网所有接收节点对区块执行共识算法

4、区块通过共识算法过程后,被纳入区块链中存储,全网节点均表示接收该区块,而表示接收的方法,就是将该区块的随机散列值视为最新的散列值

六、区块链包含了哪些技术

1、P2P

2、加密算法和签名,非对称加密-区块链使用的是ECDSA,specp256k1,相当于DSA和非对称加密ECC的结合。哈希-区块链使用SHA256,

3、梅克尔树,Merkle,相当于对区块中所有交易记录进行一个快照,区块中交易记录的任意改动都可以通过Merkle根哈希而察觉,主要用于简单支付验证,

4、工作量证明机制-共识算法(Pow),用于确认你是否做过一定量工作的证明。

下一章,我将介绍区块链的几种共识算法和关于挖矿的内容

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180320G0AUYA00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区