主页 > imtoken官网下载2.0国际版 > 区块链实施技术

区块链实施技术

imtoken官网下载2.0国际版 2023-01-18 20:33:22

如本文图3.1所示,区块链基础设施模型可分为六层,从底层可分为数据层、网络层、共识层、激励层、合约层和应用层向上。其中,数据层、网络层和共识层是区块链技术必不可少的三个层,其他层可以根据不同的区块链系统进行选择。

在这里插入图片描述

图3.1 区块链基础设施

(1) 数据层

数据层是区块链六层架构中的最低层。数据层封装了底层数据块、相关数据加密、默克尔树和时间戳。在这一层中,设计了区块链的数据结构,描述了区块链底层的组成原理。每个数据块一般包括块头和块体。块头存储了如图3.2所示的六个部分,块体存储了这个块的交易数量和交易的细节。,交易存储在 Merkle 树的数据结构中。

在这里插入图片描述

(2) 网络层

网络层包括点对点(P2P)网络机制、数据传播机制和数据验证机制。P2P网络不需要中间链路或中心化服务器来支持系统,每个节点都是对等节点,共同构成网络服务。每个节点既可以提供服务,也可以请求服务,每个节点既可以生产信息,也可以接收信息。另外,信息的传输只需要在两个节点之间直接传输,不依赖于传统的路由交换机制。在区块链网络中,每个节点共同维护区块链系统。例如,在比特币系统中,当一个节点产生一笔交易并将其广播到整个网络时,网络中的节点会对该交易进行验证。通过 PoW 机制,矿工节点将记录聚合在一个块中,并将该块广播给所有节点。每个节点验证矿工生成的区块,将新区块与本地区块链链接,并维护自己的区块链。

(3) 共识层

由于区块链网络的分布式特性,区块链环境中可能存在不安全和不可靠的节点,如何在不可信的环境中协商并达成共识是一个挑战。因此,需要开发一些协议来保证不同节点的本地分布式账本是一致的。区块链共识机制是在假设网络通信可靠的前提下,解决在出现故障节点时如何让系统达成共识的问题。为了解决上述问题,已经提出了一些共识机制,例如:PoW共识、实用拜占庭共识(PBFT)、权益证明(PoS)等共识机制。

这些共识机制确保在没有受信任的第三方维护系统的情况下,解决了谁来构建区块以及如何维护区块链的统一性的问题。区块链系统中的每个节点都可以验证交易和区块。

区块链的特点是什么_区块链2.0 特点_sitebihu.com 区块链 特点

(4) 激励层

激励层是保证记账节点上链的一种激励机制。主要是提供一定的激励,鼓励节点积极参与区块链的安全验证和维护。这种激励机制一般只存在于公链中。以比特币为例,比特币的激励机制分为发行机制和分配机制两个方面。发行机制是指矿工通过算力竞争获得记账权,并奖励记账节点一定数量的比特币的机制。获得记账权的矿工每在区块链上记录一个新区块,将获得50比特币奖励,发行机制奖励的比特币每四年减半。分配机制是指比特币在产生交易时需要支付一部分手续费,手续费会奖励给记账节点。

(5) 合约层

合约层封装了各种基础代码、算法机制和智能合约,赋予区块链可编程特性[43]。智能合约设计的目的是为了满足支付合约、保险合约等一些合约,使预先设定的合约得到执行,减少外部干扰事件的发生。智能合约是一种由数字代码实现的计算机程序,部署在区块链中,可以自动执行。此外,不能在区块链中修改智能合约。当输入条件满足要求时,智能合约可以触发自动执行,无需第三方机构的试用和监督,最大限度地减少对第三方机构的依赖。智能合约的潜在优势在于降低合同签订、执行和管理的人力和物力成本。2013年,以太坊将区块链带入了2.0时代,每个人都可以自定义智能合约,让智能合约得到更广泛的应用。智能合约提高实时性能和执行效率,合约部署后不易篡改,减少人为干预,提高合约可信度,实现合约分布式存储。此外,智能合约提高了对合约的监管,降低了合约仲裁和执行的成本。并且每个人都可以自定义智能合约,让智能合约得到更广泛的应用。智能合约提高实时性能和执行效率,合约部署后不易篡改,减少人为干预,提高合约可信度,实现合约分布式存储。此外,智能合约提高了对合约的监管,降低了合约仲裁和执行的成本。并且每个人都可以自定义智能合约,让智能合约得到更广泛的应用。智能合约提高实时性能和执行效率,合约部署后不易篡改,减少人为干预,提高合约可信度,实现合约分布式存储。此外,智能合约提高了对合约的监管,降低了合约仲裁和执行的成本。

(6) 应用层

应用层封装了区块链的各种应用场景和案例。在区块链发展初期,可编程货币是区块链1.0的应用,即数字货币。随着智能合约的发展,区块链被纳入2.0时代。区块链应用于一些金融领域,人们已经开始在区块链上部署智能合约,形成可编程金融。随着区块链的研究和应用,区块链进入了3.0应用时代。可编程社会是区块链在许多非金融领域的应用,进而可以扩展到更多需要的领域。目前主要研究方向为医疗保健信息的管理与共享、供应链管理、

数据层相关技术

区块链技术看起来很复杂,但区块链可以分解成不同的技术来简化描述。区块链技术在数据层使用加密散列函数、数字签名、非对称密钥加密、时间戳、交易交易和默克尔树。本节将讨论数据层中的每一种单独的组合技术。

(1) 哈希算法

哈希算法是区块链技术的一项重要技术,在区块链设计中被多次使用。哈希算法可以计算任意大小的输入,得到一个唯一的、固定长度的二进制值,称为哈希值。即使是散列算法中输入数据的微小变化也会导致完全不同的散列值。因此,任何人都可以在相同的哈希算法中输入相同的明文,然后对输入的数据进行哈希处理,得到相同的哈希值。因此,通过比较数据的哈希值,可以验证输入数据是否被篡改。

sitebihu.com 区块链 特点_区块链的特点是什么_区块链2.0 特点

哈希算法具有以下安全特性:

①单向性:对于给定的数据X,很容易计算出H(X),但是找到H(X)对应的X在计算上是不可逆的。

② 抗碰撞能力弱:对于给定的数据X1,不可能找到另一个数据X2,使得两者满足H(X1)= H(X2).

③ 抗碰撞性强:要找到任何不同的数据 X1 和 X2 以满足 H(X1)= H(X2).

(2) 数字签名

数字签名技术保证了签名的不可否认性。该技术用于验证某个数据信息的发起者的身份和数据的完整性。数字签名技术是基于非对称加密技术实现的。一个典型的数字签名分为两个阶段:签名阶段和验证阶段。数字签名的运行过程是:发送方计算要发送的数据的哈希值,用私钥加密哈希值并生成数字签名;然后将原始数据和数字签名发送给接收方;然后接收端首先计算接收到的数据的值。哈希值,并用发送者的公钥解密签名得到哈希值比较,如果相同,

(3) 非对称加密

非对称加密技术在加解密过程中需要两把密钥,即公钥和私钥。其中,私钥一般使用随机数算法生成,公钥使用私钥生成。公钥会暴露给其他人,而私钥不会。在区块链中,非对称密钥主要用于数据加密、数字签名的生成、账户地址的生成等。区块链中使用的非对称密码算法是椭圆曲线算法。非对称加密算法的优点是安全性好,公钥是公开的,私钥自己存储,传输数据时不需要同步密钥。

(4) 事务

交易可以在各方之间进行交互。例如,使用加密货币,交易可以在区块链网络的用户之间转移货币价值。虽然交易主要用于传输数字资产,但它可以用于更广泛地传输数据。智能合约交易可用于发送数据、处理数据并将一些数据存储在区块链上。例如,在企业间交互的场景中,交易交易用于传递数据或资产的信息。

区块链的特点是什么_区块链2.0 特点_sitebihu.com 区块链 特点

(5) 默克尔树

默克尔树是一种特殊的树数据结构区块链的特点是什么,每个叶子节点存储数据的哈希值,除叶子节点外的其他节点存储其子节点计算后得到的哈希值。Merkle 树的特点是只要底层数据发生变化,得到的树的根节点就完全不同。如图 3.3 所示,区块链中交易的哈希值存储在 Merkle 树的叶子节点中,然后通过叶子节点不断获取 Merkle 树根的哈希值给上面那层。哈希值,这个哈希值存储在区块头中。区块链中默克尔树的作用是提高区块链的效率。无需将所有交易的哈希值存储在块头中,只需要存储 Merkle 树的根哈希,从而减小了块头的大小,提高了节点配对。交易验证的效率。

在这里插入图片描述

网络层相关技术

目前分布式系统中的架构包括客户端/服务架构、分布式对象架构、点对点网络架构、面向服务的架构、大数据处理架构Hadoop等。区块链系统采用的是P2P网络,即一个对等网络。P2P网络是一种分布式网络,按去中心化程度可分为纯P2P网络、混合P2P网络和混合P2P网络。在纯 P2P 网络中,每个节点既是客户端又是服务器,每个节点都是平等的。在混合 P2P 网络中,使用中心服务器来存储节点的数据,中心服务器响应客户端的请求。在混合P2P网络中,节点在中心服务中查找资源所在用户的地址,然后与拥有该资源的用户进行通信以获取该资源。混合P2P网络结合了纯P2P网络和混合P2P网络。区块链系统采用纯P2P网络区块链的特点是什么,每个节点都可以平等地维护网络。

3.1.4 共识层相关技术

区块链的一个核心机制是共识机制。由于区块链的去中心化特性,节点是去中心化和点对点的。为了保证区块链系统的正常运行和公平,需要一种机制来保证所有并行节点和对等节点能够协同维护系统。共识算法的运行过程实际上是所有节点解决一个提案并达成共识的过程。提案在区块链中表现为交易时间的记账顺序、谁将获得区块链的记账权、新区块产生的新区块如何奖励、谁主导记账状态等。目前的共识机制区块链系统中包括 PoW、PoS 和 PBFT 等。

(1) PoW 共识机制

PoW 共识机制可以理解为工作完成的证明,用户完成一定的工作后可以获得一定的奖励。PoW共识机制通过消耗大量公共服务和资源来解决一个问题,因此整个共识过程效率低下。这个难题的设计目的是使其难以解决,但很容易验证解决方案是否有效。所以 PoW 共识机制使得所有全节点都可以轻松验证一个新区块,任何不满足这个难题的区块都会失败。

工作量证明机制中常用的关键是哈希函数,如图3.4,工作原理如下:

区块链的特点是什么_sitebihu.com 区块链 特点_区块链2.0 特点

① 对一些原始数据加一个随机数,得到合并后的数据。

② 通过散列函数计算组合数据的散列值。

③ 验证哈希值是否满足拼图要求。如果是这样,它就会通过。如果不是,则替换随机数并重新计算哈希值。重复此过程,直到找到满足要求的解决方案。

在这里插入图片描述

在比特币区块链中,每个节点竞争算力,计算出一个难解但容易验证的SHA256谜题。一般来说,哪个节点的计算能力最强,解决问题的概率就高。如果要修改区块链中的数据,就必须控制一半以上的算力。这种攻击称为 51% 攻击。比特币中的PoW机制流程如下:

① 矿工搜索当前不在区块链网络上的交易,然后添加一个铸币交易,将以上所有交易以 Merkle 树的形式聚合起来。

② 将 Merkle 树的根哈希值存储在区块头中,填写其他元素的值,并将随机数设置为零。

③为了满足目标哈希要求,随机数会不断加1,然后计算区块头中每个元素的哈希值。如果在目标哈希范围内,则获得该区块的记账权。

④ 为保证出块率约为每 10 分钟一次,难度系数会动态调整,即调整目标哈希前几位的零个数。

(2) PoS 共识机制

区块链的特点是什么_区块链2.0 特点_sitebihu.com 区块链 特点

PoS 机制的目的是解决 PoW 机制中大量浪费公共资源的问题。PoS 机制于 2013 年首次提出并在 Peercoin 中实施。在 PoS 机制中,节点持有的权益越多,出块难度越小,获得的权益就越多。PoS 机制引入了币龄的概念,即持有代币的数量与持有币的天数的乘积。节点挖矿难度的哈希值是质押押金的年龄与目标哈希值的乘积。存款越多,挖矿难度越低,成为记账节点的概率越大。收入是存款的利息和交易。费用。与 PoW 共识机制相比,PoS 机制减少了达成共识的时间。PoS 机制对 51% 攻击更安全,因为相比恶意节点掌握 51% 算力的可能性,掌握 51% 的代币更加困难。

(3) DPoS 共识机制

DPoS 机制将代理添加到 PoS。每位股东可以将投票权委托给代理人,代理人行使验资和记账功能。投票结果中的前 100 名代理人将轮流负责定期记账以产生新的区块。DPoS 机制减少了共识过程中验证和记账节点的数量,验证过程可以达到秒级。

网络延迟可能会阻止代理及时将块发送给其他人,这可能导致区块链分叉。但这几乎是不可能的,因为生成块的代理可以直接与生成分叉块的先前和后续块的代理协商。人们可以得到他们应得的回报。在这种模式下,30秒内可以生成一个块,因此使用DPoS机制的区块链分叉的概率非常小,如果发生分叉,可以在很短的时间内解决。

(4) PBFT 共识机制

PBFT共识机制是为了解决拜占庭问题而提出的,是Leslie Lamport为了解决一致性问题而提出的模型。PBFT 算法最早由 Miguel Castro 等人提出。PBFT共识机制是一种可以容忍拜占庭问题的共识机制,提高了原有拜占庭容错算法的效率,将算​​法复杂度从指数级降低到多项式,使其在实际应用中具有实用性。可行的[44]。PBFT算法可以保证在恶意节点或无效节点不超过节点总数三分之一的情况下安全运行。另外,PBFT节点越多,性能越差,所以PBFT适用于节点数较少的联盟链。

假设节点数为f,PBFT算法流程如下:

①首先通过随机算法确定主节点,定期更换主节点。主节点主持操作的时间段称为视图。

② 在视图中,客户端会向主节点发送请求消息,主节点会以 P2P 的形式将此请求消息广播给其他节点。

③ 所有节点在验证处理请求消息后,将处理结果消息返回给客户端。如果客户端从不同节点收到至少f+1条相同处理结果的消息,则处理结果可以作为最终结果。

主节点向其他节点广播的过程分为三个阶段:预准备阶段、准备阶段和提交阶段。pre-preparation 和preparation 阶段保证其他节点在一个view 期间按顺序处理请求消息,preparation 和commit 阶段保证在不同view 切换时消息处理顺序保持不变。