主页 > 苹果手机如何下载imtoken > 对区块链的理解

对区块链的理解

苹果手机如何下载imtoken 2024-01-26 05:14:42

2021-07-28 认识区块链 一、区块链的诞生

几乎所有的互联网交易都需要借助可靠的第三方信用机构来处理电子支付信息。 此类系统本质上仍然受制于“基于信用的模型”。 区块链技术是构建比特币区块链网络和交易信息加密传输的基础技术。 它基于密码学而不是信用的原理,使得任何达成协议的双方都可以直接支付而无需第三方中介的参与。

定义:

区块链是一种分布式账本,是一种通过去中心化和去信任化共同维护可靠数据库的技术解决方案。

从数据的角度来看:区块链是一个几乎不可能改变的分布式数据库。 这里的“分布式”不仅体现在数据的分布式存储上,还体现在数据的分布式记录上(即由系统参与者共同维护)。

从技术角度看:区块链不是单一的技术,而是多种技术融合的结果。 这些技术以新的结构组合在一起,形成了一种记录、存储和表达数据的新方式。

区块链的理解

区块链还处于早期阶段,一些嗅到商机的大公司和技术人员对其进行了研究。

区块链的理解

二、区块链技术的特点

2.1. 开放与共识

任何人都可以参与到区块链网络中,每个设备都可以作为一个节点,每个节点都可以得到一份完整的数据库副本。 基于一套共识机制,节点通过竞争计算共同维护整个区块链。 如果任何一个节点发生故障,其余节点仍然可以正常工作。

2.2. 去中心和信任

区块链由许多节点组成一个端到端的网络,没有中心化的设备和管理机构。 节点之间的数据交换通过数字签名技术进行验证,没有相互信任,只要按照系统既定的规则进行,节点就不能也不能欺骗其他节点。

2.3. 交易透明,双方匿名

区块链的运行规则是公开透明的,所有的数据信息也是公开的,所以每一笔交易对所有节点都是可见的。 由于节点之间没有信任,节点之间不需要公开身份,每个参与的节点都是匿名的。

2.4、不可篡改、可溯源

比特币分叉山寨币_比特币分叉最大的风险是双花_比特币为什么要进行分叉

单个甚至多个节点对数据库的修改不会影响其他节点的数据库,除非能控制全网51%以上的节点同时修改,这几乎不可能发生。 区块链中的每一笔交易都通过密码学的方式与相邻的两个区块串联起来,因此可以追溯到任何一笔交易的过去和现在。

3. 区块链关键技术原理

区块链的整个架构如下图所示

区块链的理解

3.1. 电子签名

数字签名涉及散列函数、发送者的公钥和发送者的私钥。 数字签名有两个功能。 一是确认消息确实由发件人签名和发送。 其次,数字签名可以确定消息的完整性。

工作原则

发送消息时,发送方使用哈希函数从消息正文中生成消息摘要,然后用自己的私钥对摘要进行加密。 加密后的摘要将作为消息的数字签名发送给接收方,接收方首先使用与发送方相同的哈希函数从接收到的原始消息中计算出消息摘要,然后使用发送方的公钥解密附加在邮件上的数字签名,如果这两个摘要相同,则收件人可以确认数字签名属于发件人。

3.2、SHA256

一种计算Hash值的加密算法。

工作原则

将任意一串数据输入SHA256,都会得到一个256位的Hash值(散列值)。 其特点:相同的数据输入会得到相同的结果。 只要输入的数据稍有变化(比如1变成0),就会得到截然不同的结果,而且这个结果是无法提前预测的。 正向计算(从数据中计算出对应的Hash值)非常容易。 逆向计算(俗称“**”,即从Hash值计算出对应的数据)难度极大,在目前的技术条件下被认为是不可能的。

3.3. 默克尔树

哈希二叉树,可用于快速验证大规模数据的完整性。 在比特币网络中,默克尔树用于汇总一个区块内的所有交易信息,最终生成一个区块内所有交易信息的统一哈希值。 区块中交易信息的任何变化都会使 Merkle 树发生变化。

工作原则

比特币分叉最大的风险是双花_比特币分叉山寨币_比特币为什么要进行分叉

网上大多叫Merkle Hash Tree,因为它构建的Merkle Tree的所有节点都是Hash值。 默克尔树具有以下特点:

1、是一棵树,可以是二叉树,也可以是多叉树。 无论是多少叉树,它都具有树结构的所有特征;

2.Merkle树叶子节点上的值是你指定的,主要看你的设计。 例如,Merkle Hash Tree 会使用数据的 Hash 值作为叶子节点的值;

3 一个非叶子节点的值是根据它下面所有叶子节点的值按照一定的算法计算出来的。 例如Merkle Hash Tree的非叶子节点值的计算方法就是将节点的所有子节点进行组合,然后对组合结果进行哈希计算,得到哈希值。

区块链的理解

3.4. 时间戳服务器

大多数用于比较和验证处理。 时间戳服务器是基于PKI(Public Key Cryptography Infrastructure)技术的时间戳权威系统,对外提供准确、可信的时间戳服务。 采用精确的时间源和高强度、高标准的安全机制,确认系统处理数据在某一时刻的存在性以及相关操作的相对时间顺序比特币分叉最大的风险是双花,为信息系统时间抗抵赖提供基础服务。

4. 区块链首次成功应用

区块链的理解

比特币是区块链技术的最早应用,其生态系统如下:

区块链的理解

任何机器都可以运行一个完整的比特币节点,一个完整的比特币节点包括以下功能:

1. 允许用户在区块链网络上进行交易的钱包

2.完整的区块链,记录所有的交易历史,通过特殊的结构保证历史交易的安全性,并用于验证新交易的合法性

3. 矿工通过记录交易和破译数学题来产生新的区块。 如果成功,他们可以获得奖励

比特币为什么要进行分叉_比特币分叉山寨币_比特币分叉最大的风险是双花

4. 路由功能,将其他节点传输的交易数据等信息传递给更多的节点

区块链的理解

第一步:拥有者A用自己的私钥对上一笔交易(比特币的来源)和下一位拥有者B进行数字签名,并将这个签名附加到币的末尾,做成一笔交易订单

要点:B使用公钥作为收件人地址

Step 2:A向全网广播交易指令,将比特币发送给B,各节点将收到的交易信息合并到一个区块中

重点:对于B来说,比特币会及时显示在比特币钱包中,但要等到区块确认成功后才能使用。 目前,一个比特币从支付到最终确认成功,需要经过6个区块确认才能确认。

第三步:每个节点通过解决一个数学问题获得创建新区块的权利,并争取比特币奖励(这个过程中会产生新的比特币)

关键点:节点反复尝试寻找一个值,使该值,区块链最后一个区块的Hash值,交易顺序被送入SHA256算法计算哈希值X(256位)满足在一定条件下(比如前20位全为0),即求数学题的解。可见答案不唯一

第四步:当一个节点找到解决方案后,将记录在区块中的所有带时间戳的交易广播到全网,并被全网其他节点校验

重要提示:时间戳用于验证特定块在特定时间必须存在。 比特币网络采用从5个以上节点获取时间,然后取中间值作为时间戳的方法。

第五步:全网其他节点检查区块记账的正确性。 如果没有错误,他们将竞争合法区块之后的下一个区块,从而形成合法的记账区块链。

重要提示:每个区块的创建时间约为 10 分钟。 随着全网算力的不断变化,每个区块的生成时间会随着算力的增加而缩短,随着算力的降低而延长。 其原理是根据最近生成的2016个区块的时间差(大约两周),自动调整每个区块的生成难度(比如减少或增加目标值中0的个数),使得生成的每个块 时间为 10 分钟。

5.主要数据结构

区块链以块的形式组织数据。 全网所有的交易记录都以交易订单的形式存储在全网唯一的区块链中。

区块链的理解

比特币为什么要进行分叉_比特币分叉最大的风险是双花_比特币分叉山寨币

区块是一种记录交易的数据结构。 每个区块由区块头和区块体组成。 区块体只负责记录前期所有的交易信息。 区块链的大部分功能都是通过区块头来实现的。

区块链的理解

1.版本号,表示软件及协议的相关版本信息

2. Parent block hash value,引用区块链中父区块头的哈希值,每个区块通过它首尾相连形成一条区块链,这个值对区块链的安全起到了至关重要的作用

3. Merkle root,这个值是由块体中所有交易的哈希值计算出来的,然后逐级哈希计算出来的一个值,主要用来检查一个交易是否存在于这个区块中

4.时间戳,记录出块的时间,精确到秒

5.难度值,本版块相关数学题的难度目标

6. 随机数(Nonce),记录解密该区块相关数学题答案的值

区块链的理解

当前区块加入区块链后,所有矿工立即开始生成下一个区块。

1.将本地内存中的交易信息记录到区块体中

2.在区块体中生成本区块所有交易信息的Merkle树,在区块头中保存Merkle树根的值

3.生成哈希值使用SHA256算法将刚刚生成的上一个区块的区块头数据生成一个哈希值,填充到当前区块的父哈希值中

4.在时间戳字段中保存当前时间

5、难度值字段会根据前期区块的平均生成时间进行调整,以应对全网不断变化的整体计算量。 如果计算总量增加,系统会增加数学题的难度值,使得预计完成下一个区块的时间仍在一定时间内

比特币为什么要进行分叉_比特币分叉最大的风险是双花_比特币分叉山寨币

区块链的理解

六、核心问题

6.1 工作证明

块头包含一个随机数,这样块的随机散列具有所需数量的零。 节点通过反复尝试找到这个随机数,从而构建工作量证明机制。 工作量证明机制的本质是一个CPU,一票,“多数”的决定表现为最长的链,因为最长的链包含最大的工作量。 如果大部分 CPU 由诚实节点控制,那么诚实链将以最快的速度扩展并超越其他竞争链。 如果要修改一个已有的区块,攻击者必须重新完成这个区块的工作量加上这个区块之后所有区块的工作量,最终赶上并超过诚实节点的工作量。

6.2 分叉

在同一时间段内,全网不止一个节点可以算出随机数,即会有多个节点在网络中广播各自打包的临时区块(都是合法的)。

如果一个节点收到同一个前一个块的多个后续临时块比特币分叉最大的风险是双花,该节点将在本地区块链上建立一个分支,多个临时块对应多个分支。 僵局将被打破,直到找到下一个工作量证明,并确认其中一条链是较长的那条,然后工作在另一条支链上的节点将转换阵营,开始在较长的链上工作。 其他分支将被网络完全抛弃。

区块链的理解

6.3 双花

Double spending,即双重支付,是指攻击者几乎同时使用同一笔钱进行不同的交易。

每当节点将新收到的交易订单添加到区块中时,它会沿着交易发起者的公钥遍历检查,以检查当前交易中使用的货币是否真的属于当前交易的发起者。 这个检查可以遍历到币的初始诞生点(即生成它的区块的来源)。 虽然多个交易订单可以按任意顺序广播,但它们在最终加入区块时必须以一定的顺序出现。 Hash值作为区块之间的时间戳,决定了任何交易的资金来源回溯。

七、应用场景

从需求端来看,金融、医疗、公证、通信、供应链、域名、投票等领域开始意识到区块链的重要性,开始尝试将技术与现实世界连接起来。

从投资的角度来看,区块链投资基金的供给量在逐渐增加,风险投资的投资热情也在上升,投资密度也在增加。 供给侧资金供给有望推动技术进一步发展。

从市场应用的角度来看,区块链可以成为一种市场工具,帮助社会降低平台成本,让中介成为历史; 区块链将推动公司现有商业模式重心的转移,有望加速公司的发展。

分类:

技术要点:

相关文章: