- 1、本文档共51页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第三章区块链的基础技术
第三章的学习要点理解区块链的组成技术;理解区块链的总体架构;熟悉区块链的数据结构;了解区块链技术的发展。
3.1区块链的总体架构捷径科技集团
区块链系统的复杂性假设A和B之间要进行一笔转账,这是区块链上最简单的一个操作,但实际上其中的大量步骤需要区块链来完成。1)A需要借助什么样的应用来完成转账?2)由谁来检查A地址中的余额,又由谁来核验真实性?3)在区块链这个分布式系统中,众多节点如何就A转账给B这件事达成一致?4)由谁来通知B收到了这笔转账?5)B又该把“收款凭证”存在哪里?——如何将一个系统的复杂问题简单化?分层是一个好方法,通过分层,可以将区块链系统拆分成若干个局部问题,并用层级间的递进关系串联起来
互联网分层模型1977年,为了推动国际网络的通用化,国际标准化组织(ISO)实施了一项开发通用网络标准和方法的计划,称为开放系统互连模型(OSI,OpenSystemsInterconnectionModel)ISO创建OSI模型,希望不同供应商的网络能够相互协同工作,但迄今为止,这仍然是一个伟大的目标!
分层模型的特点1.独立性每一层都是相对独立的,它具有独立功能。理论上每一层只需关注层级间的接口,而无须关注其他层的实现细节。当其他层出现变化时,如果接口不变,则不会影响到相邻层级。2.通用性模型中的各层规范和架构的确定,有利于国际标准化工作的展开。当来自不同开发者的各模块都遵循统一的标准时,整个系统各部分的通用性、兼容性会变得更好,对于一个较新的系统,这样通用性尤为重要。
区块链六层模型区块链基础架构分为六层:数据层(DataLayer)、网络层(NetworkLayer)、共识层(ConsensusLayer)、激励层(Incentivelayer)、合约层(ContractLayer)和应用层(ApplicationLayer)。
区块链系统的转账流程假如A向B发送一个Token,A首先选择一个应用层的应用,例如某个区块链钱包App,利用这个App输入交易信息(B的区块链地址和转账数量),应用将这些交易信息加上A的签名信息传递到合约层,并调用这个Token合约,交易信息、签名信息和合约内容会向下传递。下一步,共识层会通过共识机制选出一位节点,该节点验证A的签名有效性以及A地址中是否有足够的余额,如果没问题则执行这笔转账;然后,该节点会将当前时刻内的多笔交易(包括A的那一笔)结果打包,并加上自身的节点信息,形成一个“区块”;接着,节点利用点对点网络(网络层)广播这个区块给网络中的其他节点;最后,当其他节点验证区块无误后,会将新的区块放到区块链的尾端(数据层)。这样,A的这笔转账就被记入到区块链中。对于B来说,只要A的转账被记入到了区块链上,就已经代表着其收到了这枚Token。B可以通过查询区块链浏览器或者借助应用的提示来获悉这一点。同时,存储在区块链上的交易记录就是B的“收款凭证”,当他需要再将这枚Token发送给其他人时,将重复上述操作。——区块链分层模型在各层间有明显的传递关系。区块链各层以及各层内协议的集合,就是区块链的整体架构,分层模型不包括具体技术实现。
3.2区块链的数据层
数据结构—区块结构对于不同的区块链,区块数据内容会略有不同,但均会包含“区块头”和“交易”两个部分。区块头用于存放区块自身的元数据,是区块功能性信息的存储地;交易部分存放加密后的交易信息,是区块内容性信息的存储地数据域描述长度幻数(Magic)区块分隔符,其值为常量0xD9B4BEF94字节区块大小(BlockSize)当前区块占用字节数4字节区块头(BlockHeader)当前区块的头部信息80字节交易计数(TransactionCounter)当前区块包含的交易数量1~9字节交易(Transaction)当前区块记录的交易细节可变表3.1比特币区块数据结构
数据结构—区块头区块头对数据域同样没有统一的标准要求,但其起着存放区块关键信息的作用,一般会包含前块哈希、默克尔根(Merkle)、时间戳等信息.
哈希计算哈希又称作“散列”,是一种数学计算机程序,它接收任何一组任意长度的输入信息,通过哈希算法变换成固定长度的数据指纹输出形式,如字母和数字的组合,该输出就是“哈希值”。目前常见的Hash算法包括国际上的MessageDigest(MD)系列和SecureHashAlgorithm(SHA)系列算法,以及国内的SM3算法。例如计算“helloblockc
您可能关注的文档
- 做完美的自己——形体礼仪:职场礼仪PPT教学课件.pptx
- 分析化学:沉淀法测定水合氯化钡中钡的含量PPT教学课件.pptx
- 分析化学:蛋壳中碳酸钙含量的测定——配位滴定法PPT教学课件.pptx
- 分析化学:蛋壳中碳酸钙含量的测定——酸碱滴定法PPT教学课件.pptx
- 分析化学:电子天平的操作PPT教学课件.pptx
- 分析化学:法扬司法测定食盐中氯化钠含量PPT教学课件.pptx
- 分析化学:佛尔哈德法测定酱油中氯化钠的含量PPT教学课件.pptx
- 分析化学:高锰酸钾法测定双氧水中过氧化氢含量PPT教学课件.pptx
- 分析化学:挥发法测定淀粉中的水分含量PPT教学课件.pptx
- 分析化学:混合碱的测定PPT教学课件.pptx
- 2024年幼儿园党支部书记抓党建工作述职报告.docx
- 2024年度领导班子民主生活会征求意见情况报告(2个样板).docx
- 领导班子成员2024年度民主生活会对照检查范文(四个带头).docx
- 党政综合部2024年工作总结及2025年工作计划.docx
- 镇党委副书记兼派出所所长关于2024年度民主生活会个人对照查摆剖析材料.docx
- 党建引领基层治理三年实施方案.docx
- 镇纪委书记关于2024年度民主生活会个人对照查摆剖析材料.docx
- 镇人大主席关于2024年度民主生活会个人对照查摆剖析材料.docx
- 县营商环境局2024年工作总结和2025年工作计划.docx
- 市人大分管民族华侨外事委员会副主任关于2024年度民主生活会个人对照检视材料(4+1).docx
文档评论(0)