主页 > imtoken苹果下载官网 > 区块链技术:比特币区块链核心技术详解

区块链技术:比特币区块链核心技术详解

imtoken苹果下载官网 2023-01-18 20:17:11

区块链的出现主要解决了传统中心化网络部署方式带来的诸多问题,包括:

1)交易不公开,中心节点掌握分布式节点信息,子节点不掌握其他节点信息;

2)系统的安全取决于中心节点的安全,中心节点存在道德风险,大数据可用于数据变现,存在隐私泄露风险;

3)系统的风险随着网络的扩大而增加;

区块链源自比特币,采用分布式部署P2P网络和同步更新来解决上述问题:

1) 在分布方面,区块链的每个节点都持有每个节点的信息。信息可以采用匿名原则,但交易是公开的,系统中的交易审批取决于所有节点的共识原则。这些规则对所有节点都是公平且强制性的。因此,随着网络规模的扩大,系统风险反而降低;

2)在同步更新方面,由于每个节点都有过去所有交易的历史记录,并且每隔10分钟由交易所组成的相邻区块存在逻辑嵌套关系,所以随着时间的推移,事务数量增加,每个节点的同步更新链变得更长,更难被篡改。

区块链技术:比特币区块链核心技术详解

比特币完成了区块链“从0到1”的诞生,比特币区块链交易简单

区块链技术:比特币区块链核心技术详解

比特币的核心技术

1)事务定义

公钥密码术。比特币区块链 PKC 目前为每个网络参与者提供了两个密钥,一个为其他用户所知的公钥(相当于用户的用户名)和一个只有用户知道的私钥(相当于用户的密码)。 ),任何拥有您的公钥的参与者都可以向您发送只有您可以阅读的加密消息。

使用私钥,发件人可以对加密邮件进行数字签名,以向收件人证明发件人就是您。 KPC采用椭圆非对称加密技术,安全性强。如何发送比特币?示例:A 向比特币区块链网络发送一条或多条消息,A 在消息中命名发送方和接收方地址。对于每个收件人地址,A 指定发送的比特币数量。 A 使用消息中的私钥对消息进行数字签名,以证明接收者的身份。信息发送完毕后,A等待比特币区块链网络对信息进行验证确认。

区块链深度分析报告:比特币区块链核心技术详解

2)单节点交易验证

A's Transaction Information Sending 之后,比特币区块链网络中任意节点(矿工)上的机器收到该信息后,开始做如下处理:检查机器本身是否已经处理过该交易(判断交易的唯一性)交易);检查交易是否涉及地址是否合法有效;检查数字签名以确保原始发件人是输入地址的合法有效所有者;检查发件人的比特币是否已在其他地方花费和提取;检查发送方的比特币金额至少与接收方预先收到的比特币金额相同(输入>输出,任何差异都是手续费)。

如果以上检查没有问题,节点会将交易标记为有效,并将其包含在“未确认交易”列表中。然后将信息广播到网络中的其他节点,网络中的节点开始通过节点共识验证交易并在网络中广播。进行单点验证的矿工可以获得一小部分比特币作为奖励。

3)加入区块并创建区块

交易经过挖矿节点验证,验证成功后加入区块。每个节点必须正确地为这十分钟内的每笔交易打上时间戳,并记录在最新的区块中,这样每个区块就包含了过去十分钟内的所有交易。

4)节点共识验证

比特币的核心技术

每个矿工节点需要使用SHA256解算算法,在过去十分钟内争夺区块的合法记账权,争取获得12.5比特币的奖励(这个数额基本减半每四年一次,到目前为止已经开采了超过 1600 万个比特币)。如果一个矿工节点解决了十分钟SHA256问题,它将把十分钟区块中记录的所有带时间戳的交易发布到全网,并被全网其他矿工节点检查。

5)块成链

全网其他矿工节点检查出块记账的正确性(因为他们也是时间戳记账,但是对合法的出块记账权没有竞争,所以没有奖励),如果没有错误,他们将争夺合法区块之后的下一个区块,从而形成合法的记账区块单链,即区区块链。

一般来说,每笔交易都要经过六次区块确认,也就是六次十分钟共60分钟,才能最终被确认为区块链上的合法交易。

区块链技术:比特币区块链核心技术详解

比特币区块链本身就是一个全球分布式数据库。最大的特点是没有中央管理员,所以不能被单方控制。同时可以实现交易传输数据的可靠性。

网络节点(nodes)是矿工,负责承载网络传输任务,负责交易验证和信息记录存储。

个人用户、商家等可以通过钱包和交易所介入比特币区块链网络,但不涉及区块链上的交易验证和记录存储。

区块链的核心技术之一:数学加密

比特币的所有权由数字密钥、比特币地址和数字签名确认。比特币钱包里只有钥匙,不包含比特币。由于每笔交易都需要有效的签名来处理和存储,因此拥有密钥就相当于拥有和控制账户中的比特币。

比特币的核心技术

公钥和私钥以一对一的形式出现。公钥相当于用户名,私钥相当于密码,私钥是随机生成的数字。公钥由不可逆椭圆曲线运算加密函数计算得出。公钥通过哈希函数计算得到比特币地址,可以公开共享。

区块链技术:比特币区块链核心技术详解

区块链第二核心技术:P2P网络

具有去中心化、抗攻击、辅助传输、抗逆能力强的特点。功能。

区块链技术:比特币区块链核心技术详解

区块链第三核心技术:区块链

区块链技术:比特币区块链核心技术详解

挖矿过程(1/2)

挖矿由矿工类节点共同参与。由于需要保证节点之间的同步,添加新区块的速度不能太快。因为每个区块之后,只能跟随一个区块,而矿工只能在最新区块之后生成下一个区块。因此,如果块添加得太快,就会出现一个块刚刚同步并准备好基于它。生成下一个块,其他节点生成新块。因此,比特币区块链白皮书协议中的设置故意让添加新区块变得更加困难——平均而言,整个网络可以每 10 分钟生成一个新区块。

需要注意的是,这个输出速度并不是白皮书规定的,而是通过大量计算作为获得有效哈希的前提,从而将出块时间控制在10分钟左右。

比特币的核心技术

p>

目标:

解密过程是每个矿工根据区块头中包含的叠加内容放置一个随机数链(工作量)(见“区块头”部分)。 , Proof of Work),经过反复计算SHA256达到目标值。矿工解密操作Hash的有效性与目标值密切相关,只有小于目标值的hash才有效,否则无效,必须重新计算。

每个区块头都包含一个难度系数(Difficulty),它决定了计算Hash的难度。区块链协议规定目标值可以用一个常数除以难度系数(Target=TargetMax/Difficulty)得到。难度系数值越大,目标值越小。随着全网算力的增加比特币的核心技术,难度系数迅速上升。例如,第 10000 个区块的难度系数为 14,484.16,而第 504,000 个区块的难度系数为 14,484.16。它已经上升到 2,227,847,638,503.63。

为了保持输出速率恒定在十分钟,比特币区块链白皮书中设计了难度系数的动态调整机制。难度系数是每两个每周调整一次(2016个区块)。如果 2 周内平均出块速度为 8 分钟,则意味着比法定速度快 20%,因此难度系数必须提高 20%;如果平均生成速度为 12 分钟,则表示速度比法定速度慢 20%,难度系数将降低 20%。

随机数:

随机数只能使用一次性密码号。如果矿工通过哈希运算产生大于目标数的哈希值,则需要选择一个随机值重新计算,直到找到小于或等于目标数的哈希值。

更具体直接的说明整个过程(3)挖矿过程(2/2)

Merkle Root 是区块头中的哈希值,代表区块体中的所有交易。在比特币区块链中,每笔交易产生后,都会被哈希成一段代码,并广播到各个节点。每个节点的区块可能包含成百上千的交易。因此,为了节省存储空间和减少资源消耗,比特币区块链的设计原理采用了默克尔树机制来允许这些成百上千的交易。数千笔交易的 Hash 值成对重复,形成一个新的 Hash 值,直到生成最终的一组 Hash 值,即 Merkle TreeRoot。这个最终的 Hash 值将记录在 Block Header 中,大小只有 32 Bytes。 MerkleTree 机制可以大大减少数据传输量和计算资源消耗。验证时比特币的核心技术,只需验证 Merkle Tree 的 Root 值即可。

分叉和六度认证

比特币的核心技术

分叉:

在区块链中,每个子块只有一个父块,但是当不同的矿工发现不同的块时(两个矿工同时求解SHA256算法并广播到全网),就会出现一种情况其中一个父块临时有许多子块,称为分叉。在任何一个区块中,第一项都不会转出地址,这就是所谓的 CoinBase(挖矿交易)。 @>5 个比特币。

如果所有节点都同意矿工的写作,矿工将获得挖矿收益。不同矿工填块的时候,数据肯定不一样,因为每个矿工的第一项肯定不一样,矿工只会把挖矿收益转到自己的地址。比如矿工 A 的 CoinBase 是“A got 12.5 个比特币”,矿工 B 的 CoinBase 是“B got 12.5 个比特币”。

由于每个矿工的区块数据不同,解决问题得到的结果也不同。他们都是正确的答案,但块是不同的。由于距离的原因,不同的矿工依次看到这两个区块。通常,矿工先复制他们看到的区块,然后在这个区块之后开始新的挖矿。

从分叉的区块来看,由于不同的矿工遵循不同的区块,所以两条分叉链上的计算能力存在差异。链矿工的数量不同。由于解决问题的能力与矿工数量成正比,因此两条链的增长率也会有所不同。一段时间后,一条链总是比另一条长。当矿工发现全网有一条更长的链时,他会放弃他当前的链,复制所有新的更长的链,在这条链的基础上继续挖矿。所有矿工都这样做,该链成为主链,被废弃的分叉链消失。

区块链技术:比特币区块链核心技术详解

区块链技术:比特币区块链核心技术详解

最终,网络中只有一条链会被保留并成为真正的账本,其他所有子链都将失效。交易区块所扩展的区块“长度”越长(包括计算能力越强),它被网络中其他节点更改或拒绝的可能性就越小。一般来说,一笔交易只有在 6 次确认后才会被最终记录。下来,“六级”是比特币用户认可的最终确认级别。

topfundclub.com 的人气:419

本内容来自互联网公开内容,非区块链原创内容。如转载请注明出处:/archives/9526