《区块链与数字货币》课件第2章 区块链技术原理.pptx

上传人(卖家):momomo 文档编号:7670980 上传时间:2024-06-26 格式:PPTX 页数:22 大小:3.29MB
下载 相关 举报
《区块链与数字货币》课件第2章 区块链技术原理.pptx_第1页
第1页 / 共22页
《区块链与数字货币》课件第2章 区块链技术原理.pptx_第2页
第2页 / 共22页
《区块链与数字货币》课件第2章 区块链技术原理.pptx_第3页
第3页 / 共22页
《区块链与数字货币》课件第2章 区块链技术原理.pptx_第4页
第4页 / 共22页
《区块链与数字货币》课件第2章 区块链技术原理.pptx_第5页
第5页 / 共22页
点击查看更多>>
资源描述

1、P2P网络2.1密码学基础2.2 共识算法2.3智能合约2.401P2P 网络对等网络(P2P)网络中的每一台计算机既能充当网络服务的请求者,又对其它计算机的请求做出响应,提供资源、服务和内容在此网络中的参与者既是资源、服务和内容的提供者(Server),又是资源、服务和内容的获取者(Client)非中心化01020304可扩展性健壮性高性价比05隐私保护06负载均衡可以无需中间环节和服务器的介入,避免了可能的瓶颈随着用户的加入,不仅服务的需求增加了,系统整体的资源和服务能力也在同步地扩充,始终能比较容易地满足用户的需要由于服务是分散在各个节点之间进行的,部分节点或网络遭到破坏对其它部分的影响

2、很小采用P2P架构可以有效地利用互联网中散布的大量普通结点,将计算任务或存储资料分布到所有节点上。由于信息的传输分散在各节点之间进行而无需经过某个集中环节,用户的隐私信息被窃听和泄漏的可能性大大缩小每个节点既是服务器又是客户机,资源分布在多个节点,更好的实现了整个网络的负载均衡客户机通过局域网与服务器相连,接受用户的请求,并通过网络向服务器提出请求,对数据库进行操作。服务器接受客户机的请求,将数据提交给客户机,客户机将数据进行计算并将结果呈现给用户。服务器还要提供完善安全保护及对数据完整性的处理等操作,并允许多个客户机同时访问服务器,这就对服务器的硬件处理数据能力提出了很高的要求。Client

3、-Server(C/S)服务器-客户机C/S结构通常采取两层结构。服务器负责数据的管理,客户机负责完成与用户的交互任务。02密 码 学 基 础哈希(哈希(HashHash)也称为散列,就是把任意长度的)也称为散列,就是把任意长度的输入,通过散列算法,变换成固定长度的输出,输入,通过散列算法,变换成固定长度的输出,这个输出值就是散列值。这个输出值就是散列值。简单来说,当我们在一个简单来说,当我们在一个 数组数组 中中 查找查找 一个一个数据元素数据元素 是否存在是否存在 时,唯一的方法就是遍历时,唯一的方法就是遍历整个数组,时间复杂度为。整个数组,时间复杂度为。HASHHASH主要用于信息安全领

4、域中加密算法,它把主要用于信息安全领域中加密算法,它把一些不同长度的信息转化成杂乱的一些不同长度的信息转化成杂乱的128128位的编位的编码码,这些编码值叫做这些编码值叫做HASHHASH值值.也可以说,也可以说,hashhash就是找到一种数据内容和数据存放地址之间的就是找到一种数据内容和数据存放地址之间的映射关系。映射关系。哈希算法SHASHA家族的五个算法,分别是家族的五个算法,分别是SHA-1SHA-1、SHA-224SHA-224、SHA-256SHA-256、SHA-384SHA-384,和,和SHA-512SHA-512,由美国国家安,由美国国家安全局(全局(NSANSA)所设计

5、,并由美国国家标准与技术)所设计,并由美国国家标准与技术研究院(研究院(NISTNIST)发布;是美国的政府标准。)发布;是美国的政府标准。CAB哈希算法的特性 正向快速正向即由输入计算输出的过程,对于给定的数据,可以在很短的时间内快速获得哈希值输入敏感输入信息的任何微小变化,即使是单个字符的变化,都会使生成的哈希与原始哈希显著不同强抗碰撞性不同的输入很难产生相同的哈希输出逆向困难知道输入值,使用哈希函数就很容易知道哈希值是什么;但是知道哈希值,没有办法计算原始输入值。哈希算法的上述特性保证了区块链的不可篡改性。CAB哈希算法的用途信息查询区块链的哈希值可以唯一准确地标识一个区块。数据校验由于

6、哈希算法抗篡改的特性,可以利用哈希值进行数据的校验。数字摘要顾名思义,数字摘要是对数字内容进行哈希运算,以获得一个唯一的摘要值,该摘要值表示原始完整的数字内容。哈希指针哈希指针是一种数据结构,它是指向存储数据的位置和位置数据的哈希值的指针。CABMerkle树(哈希树)对称加密采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密。非对称加密非对称加密是加密和解密使用不同的密钥,通常有两个密钥,称为“公钥”和“私钥”。公钥与私钥配对,必须成对使用,否则无法打开加密文件加解密算法消息认证与数字签名消息验证码基于对称加密,可用于保护消息完整性

7、消息认证码消息认证码数字签名数字签名它是通过一定的算法实现与传统物理签名相似的效果。数字签名的流程如下:数字签名的流程如下:(1 1)发送方)发送方A A对原始数据通过哈希算法计算数字摘要,用对原始数据通过哈希算法计算数字摘要,用非对称密钥对中的私钥对数字摘要进行加密,这个加密后非对称密钥对中的私钥对数字摘要进行加密,这个加密后的数据为数字签名;的数据为数字签名;(2 2)数字签名与原始数据一起发送给验证签名的任何一)数字签名与原始数据一起发送给验证签名的任何一方。方。验证数字签名的流程如下:验证数字签名的流程如下:(1)1)首先,签名的验证方,一定要持有发送方首先,签名的验证方,一定要持有发

8、送方A A的非对称的非对称密钥对的公钥;密钥对的公钥;(2 2)在接收到数字签名与)在接收到数字签名与A A的原始数据后,首先使用公钥,的原始数据后,首先使用公钥,对数字签名进行解密,得到原始摘要值;对数字签名进行解密,得到原始摘要值;(3 3)然后,对)然后,对A A的原始数据通过同样的哈希算法计算摘要的原始数据通过同样的哈希算法计算摘要值,进而比对解密得到的摘要值与重新计算的摘要值是否值,进而比对解密得到的摘要值与重新计算的摘要值是否相同,如果相同,则签名验证通过。相同,如果相同,则签名验证通过。A A的公钥可以解密数字签名,保证了原始数据确实来自的公钥可以解密数字签名,保证了原始数据确实

9、来自A A。解密后的摘要值,与原始数据重新计算得到的摘要值相同,解密后的摘要值,与原始数据重新计算得到的摘要值相同,保证了原始数据在传输过程中未经过篡改。保证了原始数据在传输过程中未经过篡改。03共识算法CAB拜占庭将军问题要解决拜占庭将军问题,必须满足一致性和正确性两个条件 一致性每两个忠诚的将军必须收到相同的值 v(i)(v(i)是第i 个将军的命令)正确性如果第i 个将军是忠诚的,那么他发送的命令和每个忠诚将军收到的v(i)相同工作量证明(PoW)权益证明(PoS)授权权益证明(DPoS)通过一定的工作量来获得相应的奖励。取决于验证者在网络中的经济权益委任权益证明,也叫做股份授权证明机制

10、或受托人机制需要节点通过进行大量的计算才能够解答的,为了确保节点愿意执行如此多的计算来维持区块链的增长,系统会给每个有效区块的生产者一定数量的奖励。当创造一个新区块时,矿工需要创建一个“币权”交易,交易会按照预先设定的比例把一些币发送给矿工本身。权益证明机制根据每个节点拥有代币的比例和时间,依据算法等比例地降低节点的挖矿难度,从而加快了寻找随机数的速度。DPoS充分利用持票人的投票权,以公平、民主的方式达成共识。他们投票选出的n个见证人可视为n个矿工,这n个矿工拥有完全平等的权利。如果这些见证人提供的计算能力不稳定、计算机崩溃或试图利用其权力作恶,股东可以随时投票更换这些见证人。CAB改进型实

11、用拜占庭容错改进型实用拜占庭容错的共识机制是少数服从多数,根据信息在分布式网络中节点间互相交换后各节点列出所有得到的信息,一个节点代表一票,选择大多数的结果作为解决办法。PBFT将容错量控制在全部节点数的1/3,即如只要有超过2/3的正常节点,整个系统便可正常运作。PBFTPBFT算法的运作步骤为:算法的运作步骤为:(1)取一个副本作为主节点,其他的副本作为备份;(2)用户端向主节点发送使用服务操作的请求;(3)主节点通过广播将请求发送给其他副本;(4)所有副本执行请求并将结果发回用户端;(5)用户端需要等待F+1个不同副本节点发回相同的结果,作为整个操作的最终结果。CAB改进型实用拜占庭容错

12、两个限定条件:两个限定条件:(1)所有节点必须是确定性的。也就是说,在给定状态和参数相同的情况下,操作执行的结果必须相同;(2)所有节点必须从相同的状态开始执行。PBFTPBFT算法存在的问题算法存在的问题:计算效率依赖于参与协议的节点数量,不适用于节点数量过大的区块链系统,扩展性差。系统节点是固定的,无法应对公有链的开放环境,只适用于联盟链或私有链环境。PBFT算法要求总节点数n=3f+1(其中,f代表作恶节点数)。系统的失效节点数量不得超过全网节点的1/3,容错率相对较低。另外PBFT算法有一个弱点,其不能很好的存贮记录其交易信息,黑客能够截取一些失效的副本,这会让信息外漏。04智能合约智

13、能合约智能合约(Smart Contract)是一种特殊协议,在区块链内制定合约时使用,当中内含了代码函数(Function),亦能与其他合约进行交互、做决策、存储资料及发送以太币等功能。智能合约主要提供验证及运行合约内所订立的条件,允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。Nick SaabNick Saab:“智能合约是一种交易协智能合约是一种交易协议,由计算机处理,可执行的合同条议,由计算机处理,可执行的合同条是能够满足共同的合同条件,如支付是能够满足共同的合同条件,如支付、抵押、保密,甚至强制执行,并尽、抵押、保密,甚至强制执行,并尽量减少恶意或意外事件的可能性,

14、以量减少恶意或意外事件的可能性,以及对可信中介机构的需求。智能合约及对可信中介机构的需求。智能合约的经济目标包括减少合同欺诈造成的的经济目标包括减少合同欺诈造成的损失、减少仲裁和执行成本以及其他损失、减少仲裁和执行成本以及其他交易成本交易成本”。制定一份智能合约智能合约验证生效智能合约的执行区块链(如以太坊)中,两个或两个以上注册用户都承诺双方的权利和义务;这些权利和义务被编辑成一个称为智能合约的程序;参与者利用密钥签署合同,以确保合同的有效性;根据承诺内容签订的智能合约被传递到区块链中,供网络上的节点查阅。生成的智能合约在网络上传播,每个节点接收一个;区块链中的验证节点根据相应的共识机制,在

15、指定的时间段内就最新的智能合约集合达成共识;新达成的智能合约集合将在整个网络中按区块分布智能合约会定期检查是否存在相关事件和触发条件;符合条件的事件将被推送到队列中进行验证;验证节点首先对事件进行签名验证,确保事件的有效性;达成共识后,智能合约将自动执行并通知用户。成功执行的智能合约将移出区块,而未执行的合约将继续等待下一轮处理,直到成功执行。实时更新01020304准确执行人为干预风险低去中心化权威05较低的运行成本CAB智能合约的现实价值案例:当货物来自全球各地时,公司需要跟踪它们,直到它们到达目的地。他们需要一个不变的,安全的记录,记录货物的存在地点和存在时间。这种需求是区块链的另一个完美用例。总部位于台湾的VeChain公司创建了一个区块链,专注于供应链管理的实际需求。使用智能合约,VeChain允许制造商为产品分配唯一的识别号码,并通过供应链跟踪他们在世界任何地方的动向。VeChain通过两种加密货币实现了这一目标,即VeChain令牌(VET)和VeThor(THOR),它们在VeChain网络上协同工作。使用智能合约跟踪全球供应链的概念非常具有吸引力,普华永道最近收购了VeChain的一小部分股权。作为合作伙伴关系的一部分,普华永道将帮助VeChain进一步开发产品并将其带入全球市场。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 大学
版权提示 | 免责声明

1,本文(《区块链与数字货币》课件第2章 区块链技术原理.pptx)为本站会员(momomo)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|