区块链概念 什么是区块链

  • 内容
  • 相关

1.jpg


【区块链概念】什么是区块链?
一 、什么是区块链?

区块链(Blockchain)是由节点参与的分布式数据库系统[1],它的特点是不可更改,不可伪造,也可以将其理解为账簿系统(ledger)。它是比特币的一个重要概念,完整比特币区块链的副本,记录了其代币(token)的每一笔交易。通过这些信息,我们可以找到每一个地址,在历史上任何一点所拥有的价值。

区块链是由一串使用密码学方法产生的数据块组成的,每一个区块都包含了上一个区块的哈希值(hash),从创始区块(genesis block)开始连接到当前区块,形成块链。每一个区块都确保按照时间顺序在上一个区块之后产生,否则前一个区块的哈希值是未知的。这些特征使得比特币的双花(double-spending)非常困难。区块链是比特币的核心创新。

区块链概念的出现,首先是在中本聪的比特币白皮书[2]中提到的,但是以工作量证明链(proof-of-work chain)的形式而存在,以下是中本聪对区块链概念的描述:

时间戳服务器通过对以区块(block)形式存在的一组数据,实施随机散列而加上时间戳,并将该随机散列进行广播,就像在新闻或世界性新闻组网络(Usenet)的发帖一样 。显然,该时间戳能够证实特定数据必然于某特定时间是的确存在的,因为只有在该时刻存在了才能获取相应的随机散列值。每个时间戳应当将前一个时间戳纳入其随机散列值中,每一个随后的时间戳都对之前的一个时间戳进行增强(reinforcing),这样就形成了一条链(Chain)。

节点始终都将最长的链视为正确链,并持续工作和延长它。如果有两个节点同时广播不同版本的新区块,那么其他节点在接收到该区块的时间上,将存在先后差别。当此情形,他们将在率先收到的区块基础上进行工作,但也会保留另外一条链,以防后者变成最长链。该僵局(tie)的打破,要等到下一个工作量证明被发现,而其中的一条链被证实为是较长的一条,那么在另一条分支链上工作的节点将转换阵营,开始在较长的链上工作。

比特币钱包的功能依赖于与区块链的确认,一次有效检验称为一次确认。通常一次交易要获得数个确认才能进行。轻量级(SPV )[3]比特币钱包, 其客户端在本地只需保存与用户可支配交易相关的数据,而不会存储完整的区块链。

区块链技术是众多加密数字货币的核心,包括比特币、以太坊、莱特币、狗狗币等。维护区块链的方式,有工作量证明(proof-of-work)、权益证明(proof-of-stake)等。

二、区块链系统核心优势

区块链体系结构的核心优势包括:

任何节点都可以创建交易,在经过一段时间的确认之后,就可以合理地确认该交易是否为有效,区块链可有效地防止双花问题的发生。

对于试图重写或者修改交易记录而言,它的成本是非常高的。

区块链实现了两种记录:交易(transactions)以及区块(blocks)。交易是被存储在区块链上的实际数据,而区块则是记录确认某些交易是在何时,以及以何种顺序成为区块链数据库的一部分。交易是由参与者在正常过程中使用系统所创建的(在加密数字货币的例子中,一笔交易是由bob将代币发送给alice所创建的),而区块则是由我们称之为矿工(miners)的单位负责创建。

三、区块链工作原理

3.1 什么是区块?

数据通过称之为区块(block)的文件,永久记录在数字货币网络上。它们好比是一个股票交易账本。新的区块会被添加到记录(区块链)的末端,而且一旦书写就很难修改或移除。

1.png


3.2 .区块结构

大小字段描述

4字节区块大小用字节表示的该字段之后的区块大小

80字节区块头组成区块头的几个字段

1-9 (可变整数)交易计数器交易的数量

可变的交易记录在区块里的交易信息

H]~TUX9AI{A2R})G0)VK1_V.png

3.3 区块头

区块头由三组区块元数据组成。首先是一组引用父区块哈希值的数据,这组元数据用于将该区块与区块链中前一区块相连接。第二组元数据,即难度、时间戳和nonce,与挖矿竞争相关 。第三组元数据是merkle树根[4](一种用来有效地总结区块中所有交易的数据结构)。

3.4 区块头结构

大小字段描述

4字节版本版本号,用于跟踪软件/协议的更新

32字节父区块哈希值引用区块链中父区块的哈希值

32字节Merkle根该区块中交易的merkle树根的哈希值

4字节时间戳该区块产生的近似时间(精确到秒的Unix时间戳)

4字节难度目标该区块工作量证明算法的难度目标

4字节Nonce用于工作量证明算法的计数器

3.4 创始区块



本文标签:

版权声明:若无特殊注明,本文皆为《Admin木木》原创,转载请保留文章出处。

本文链接:区块链概念 什么是区块链 - http://www.hkphp.org/Blockchain/70.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

00:00 / 00:00
顺序播放