主页 > imtoken硬件钱包安全吗 > 区块链解读

区块链解读

imtoken硬件钱包安全吗 2023-01-16 22:20:53

1. 区块链和比特币

区块链是一种数据存储结构或协议,可以解决一系列的安全性和稳定性问题; 比特币是一种使用区块链技术实现的数字货币系统。 比特币也是目前唯一成熟的区块链应用,这也是两者容易混淆的原因之一。

区块链起源于比特币。 2008年11月1日,一个自称中本聪的人发表了一篇论文《比特币:一种点对点电子现金系统》(Bitcoin: A Peer-to-Peer Electronic Cash System)译文,阐述了比特币的架构概念基于P2P网络技术、加密技术、时间戳技术、区块链技术等的电子现金系统,标志着比特币的诞生。 两个月后,理论进入实践,2009年1月3日,第一个序号为0的创世区块诞生。 几天后,即2009年1月9日,出现了一个序号为1的区块,并与序号为0的创世区块相连形成一条链,标志着区块链的诞生。 因此,区块链是伴随比特币而来的新技术。

通俗地说,比特币是一种产品,是一种特定的数字货币,而区块链是一种比较通用的技术。

2、什么是区块链?

区块链是一种新型的去中心化协议,可以安全地存储比特币交易或其他数据,信息不可伪造和篡改,智能合约可以自动执行,无需中心化组织的任何审计。 交易可以是比特币等数字货币,也可以是债权、股权、版权等数字资产。 区块链技术解决了拜占庭将军问题,大大降低了实体经济的信任成本和记账成本,重新定义了互联网时代。 产权制度。

区块链(Blockchain)是一个节点参与的分布式数据库系统。 它的特性是不可更改和不可伪造的。 也可以理解为账本系统。 它是比特币的一个重要概念,是完整的比特币区块链的副本,记录着其代币(token)的每一笔交易。 有了这些信息比特币产生的原因,我们就可以找出每个地址在其历史上任何时候的价值。

区块链是由密码学方法生成的一系列数据块组成的。 每个区块都包含前一个区块的哈希值(hash),并从创世区块连接到当前区块。 块组成区块链。 每个区块保证按时间顺序在前一个区块之后生成,否则前一个区块的哈希值未知。 这些特性使得比特币有效地解决了双花问题。

3.区块的基本结构

区块是一种容器数据结构,它聚合了公共账本(区块链)中包含的交易信息。 它由一个包含元数据的块头组成,后跟一长串构成块体的交易。 区块头80字节,平均每笔交易至少250字节,每个区块平均至少包含500多笔交易。 因此,一个包含所有交易的完整区块比区块头大 1000 倍。

场地

尺寸

描述

块大小

4字节

此字段后的块大小(以字节为单位)

块头

80字节

组成区块头的几个字段

交易柜台

1-9 变量调整字节

交易次数

贸易

多变的

区块中记录的交易信息

区块头:区块头由三组区块元数据组成。

第一个是引用父块哈希的一组数据。 这组元数据用于将这个块连接到区块链中的前一个块。

第二组元数据,难度、时间戳和随机数,与挖矿竞争有关。

第三组元数据是默克尔树根(一种用于有效汇总区块中所有交易的数据结构)。

区块头结构:

场地

尺寸

描述

版本

4字节

版本号,用于跟踪软件/协议更新

父块哈希

32字节

指区块链中父区块的哈希值

默克尔根

32字节

此区块中交易的 merkle 根的哈希值

时间戳

4字节

该块生成的大概时间(精确到秒的Unix时间戳)

难度目标

4字节

该块的工作量证明算法的难度目标

随机数

4字节

工作量证明算法的计数器

Nonce、难度目标和时间戳用于挖矿过程。

创世块:

比特币区块链的第一个区块创建于 2009 年,称为创世区块。 它是比特币区块链中所有区块的共同祖先,这意味着如果你从任何一个区块开始追溯,最终都会到达创世区块。

每个节点都“知道”创世块的哈希值、其结构、创建时间以及其中的交易。 因此,每个节点都将这个区块作为区块链的第一个区块,从而构建一个安全可信的区块链根。

创世块的哈希值为:

000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f

块示例:

以比特币区块链的623570深度区块为例,

区块链解读_区块链技术

区块链解读_区块链技术_02

其中,部分主要字段信息含义如下:

正确维护这些关键字段是区块链实现的基础,也是区块链去中心化、解决双花和拜占庭一般问题的基本架构。 对于关键数据结构,需要补充规则和算法才能运行。 弄清楚了整个过程之后,再回头看一下区块结构,就一目了然了。

区块链解读_区块链_03

由此可见

4.去中心化和点对点网络

去中心化是区块链的核心思想,这也是与其他分布式产品的最大区别。 去中心化确保公平和安全。 点对点网络是去中心化框架下的互联网。 与现实社会相比,今天的社会制度是中心化的。 国家的中心是政府,金融体系的中心是中央银行。 如果政府腐败,央行作弊,整个社会就没有公平可言,所有的数据都无法信任。 或许去中心化也是人类社会制度发展的最终目标。 只要有电脑,就可以加入点对点网络,成为节点。 每个节点都可以拥有整个区块链的信息(目前达到数百GB),并且不断更新和同步。 每个块写入都会广播到整个网络。 点对点网络中的每一点都有相同的权利和义务,而且都是平等的。 以CPU为算力单元,每个点都可以参与投票、计算和打包数据,也有同步区块信息的权利。

5. 共识机制

共识机制是区块链最重要的特征。 共识是指对区块数据的认可,也可以看作是投票。 只有超过半数的点对点网络认为区块数据真实可靠,才能达成共识。 目前主要的共识机制有几种:工作量证明(PoW)、权益证明(PoS)、委托权益证明(DPOS)和拜占庭共识算法(PBFT)。 其中,工作量证明是比特币采用的机制。 比特币的工作量证明称为“挖矿”。

由于每个节点都要同步最新的区块链数据,出块速度不能太快比特币产生的原因,否则大部分节点都来不及同步。 中本聪为此设计了难度系数调整机制。 区块结构中维护了Nonce和Difficulty两个字段,分别代表计算次数和难度系数。 区块生成的设计速度是每10分钟生成一个。 这个速度可能会加快。 如果区块生成速度大于设计速度,则下一个区块的难度系数会增加。 因此,可以保证出块时间间隔在10分钟左右。 因此,随着时间的推移,比特币挖矿将变得越来越难。

6.区块链分叉

如果同时将两个区块添加到区块链,区块链就会分叉。 哪个分支较长的将作为主干,交易将被确认,另一个分支将被丢弃(选择大多数节点的共识)。 因此,确认一笔交易大约需要1个小时。

区块链解读_区块链技术_04

诚实的矿工只会在最长的有效链上创建最新的区块。 当链中包含的所有区块和交易都是有效的,并且该链从创世块开始时,它就是我们认可的有效区块链。

对于区块链中的任何区块,只有一条通往创世区块的路径。 但是,从创世块开始,就会有分叉。 当创建的两个块之间的时间差只有几秒钟时,通常会创建一个分叉块。 发生这种情况时,节点会在它们首先收到的区块之上创建区块。 无论哪个区块包含在下一个区块中,它都会成为主链的一部分,因为这条链更长。

短链(无效链)中的块没有效果。 当比特币客户端切换到另一个更长的区块链时,短链中的所有有效交易区块都会重新加入到顺序交易池中,并会被包含在下一个区块中。 短链中的区块奖励不会出现在最长的链中,因此实际上它们是有损的,这就是为什么生成需要 100 个区块的网络强制成熟时间才能存在的原因。

短链中的区块通常被称为“孤儿”。 这是因为,在长链中,这个生成的交易没有父块,因为这些生成的交易在交易 PRC 列表中显示为孤儿。 一些矿池误解了这些信息,声称他们的区块是“孤儿”。 事实上,这些块有父母,甚至可能有孩子。

7. 双重支出和拜占庭将军问题

双花是指在两笔不同的交易中花费相同的资产。 比如节点A一共有1个比特币,节点A几乎同时提交了两笔交易:支付1个比特币给节点B,支付1个比特币给节点C。支付1个比特币。 这两个交易在交易被记录之前可能是合法的,不同的节点可能会将它们记录在区块中。 如果同时产生两个区块,则根据工作量证明的共识机制进行选择。 区块链还可以在不通过第三方的情况下解决双花问题。

拜占庭帝国要打击强大的敌人,于是派出10支军队包围敌人。 这个敌人虽然比不上拜占庭帝国,但也足以抵挡5支拜占庭正规军的同时进攻。 不知为何,这10支大军无法集中在一起单点突围,必须在各自包围的状态下同时进攻。 他们任何一支军队单打独斗都没有胜算,除非至少有6支军队同时进攻夺取敌国。 他们分散在敌国各地,依靠信号兵相互沟通,协商攻击意图和攻击时间。 困扰这些将领的问题是,他们不确定其中是否有内奸,而内奸可能会擅自改变进攻的意图或时机。 在这种状态下,拜占庭将军能否找到一种分布式协议,让他们远程协商,从而赢得战斗? 这就是著名的拜占庭将军问题。

区块链中拜占庭一般问题的描述应该是如何在不知道具体诚实节点的情况下达成共识,利用区块链中主流的共识机制(工作量证明(PoW)、权益证明机制(PoS)、委托证明股权(DPOS)和拜占庭共识算法(PBFT))可以解决拜占庭将军问题。

八、隐私保护

由于在区块链中,所有的节点都是由全网唯一的SHA256签名来表示的,这个签名是不可逆的,所以即使签名在全网广播,也无法获取到某个节点的信息。 基于这一点,节点相当于在所有交易中都是匿名的,很好地保护了用户的隐私。 但这也是编写勒索软件的黑客常用的支付赎金的方法。

参考

一个故事告诉你比特币的原理和运行机制。 比特币白皮书:一种点对点的电子现金系统什么是区块链?从实践角度解读区块链