版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
企业级区块链——梧桐链可以写机构名称梧桐区块链实验室WuTongblockchainLaboratory目录CONTENTS01WUTONGCHAINOVERVIEW
梧桐链概述02WUTONGCHAIN
CONSENSUSALGORITHM梧桐链共识算法04SMARTCONTRACT智能合约03UNSPENTTRANSACTIONOUTPUTSUTXO05SECURITYANDPRIVACY安全与隐私06管理平台07REVIEW课程总结08REFERENCE参考资料09ASSIGNMENT课后习题MANAGEMENTPLATFORM引导部分回顾我们学了哪些区块链的技术?知识目标理解梧桐链的关键技术掌握梧桐链的共识算法、UTXO、智能合约梧桐链的管理平台了解梧桐链的部署和实现方法技能目标理解梧桐链部署的代码学习重点梧桐链的共识算法、梧桐链的UTXO、梧桐链的智能合约、梧桐链的管理平台
学习难点梧桐链的UTXO
学习目标Learning
Objective01梧桐链概述4321宝武集团欧冶金融中国银联电子支付研究院海航科技上海银行梧桐链概述同济大学主要针对企业、机构的区块链应用场景开发的区块链系统平台梧桐链
区块链技术类型
公有链联盟链私有链参与者任何人授权的公司和组织个体或一个公司内记账人任何人参与者协调授权控制自定信任机制工作量证明等集体背书自行背书中心化程度去中心化多中心化中心化突出优势信用的自建立效率、成本优化透明、可追溯典型应用场景比特币清算审计IT成本开销通过激励机制,使用大众提供的IT基础设施加入联盟链之前,各个节点默认达成IT基础设施共享或其他方案自行承担梧桐链概述技术模块架构图同学们,你们觉得梧桐链会有怎样的特点?如果让你们设计一个联盟链的话,会赋予它哪些特性?梧桐链官网:/梧桐链基础版开源代码:/tjfoc/wutongchain联盟链的畅想梧桐链的主要特点02梧桐链共识算法梧桐链共识算法共识算法是区块链协议的重要组成部分,也是和标准数据库的主要区别主要解决拜占庭将军问题允许分布式网络系统的参与者决定新添加的记录是否有效,并在全网中达成正确、一致的共识联盟链采用BFT类的共识机制节点两两之间需要多次通信确认保持结果的一致性优点当节点数增多,同步变慢缺点梧桐链共识算法:特点预留共识模块接口,用户可替换实现了Raft和MBFT共识算法创新点:混合拜占庭容错算法(MixedByzantineFaultTolerance.MBFT)负责接收客户端的交易并分类转发给共识节点,还负责监督并检举共识节点的恶意行为共识节点是区块链的核心节点,负责整个区块链中交易的确认和区块的打包生成其他不参与交易验证、由可以发起交易的节点是客户端区块链中所有可以参与交易验证的节点被称作验证节点。在联盟链的架构中,任何节点想要成为验证节点都需要经过网络中其他节点的确认梧桐链共识算法——MBFTMBFT共识算法执行步骤:ABCED共识组共识高阶共识组对小区块的校验与出块交易冲突与处理激励机制共识组增减F总结第一步:共识组共识第二步:高阶共识组对小区块的校验与出块第三步:高阶共识组对交易冲突的处理第四步:MBFT——激励机制创新点:梧桐链在共识算法中增加了信用评分机制,对所有节点和客户端的表现评分,适用于缺少经济通证激励的场景信用分是根据交易处理情况和对区块链网络贡献程度而对各节点的信用评价,是基于区块链中各个节点中的实时数据,根据预先制定的规则,通过智能合约对节点的信用进行实时动态评价通过经济上的鼓励,激励其他节点发现并检举客户端对网络的破坏,督促节点保持在线的时间和提高验证效率,形成良性循环第五步:MBFT——共识组增减MBFT中引入了可验证随机函数(VRF)用来随机选择共识节点目前VRF大多被用在采用委托权益证明或权益证明算法的公有区块链项目中,被用来从众多挖矿节点间选择部分节点进行小范围的共识记账,以加快共识的效率,吸取了公链的特点经过随机选举,共识节点依据选举结果组成低阶共识组和高阶共识组组的个数负责处理的任务低阶共识组
多组处理当前网络中所有交易信息中的一部分,经过验证和打包成小区块的交易信息会在一定的时间段内传输给高阶共识组高阶共识组
一组仅负责对一定时间内所有低阶共识组提交的小区块进行验证和打包,并生成全网公开的大区块第六步:梧桐链共识算法汇总当共识组中待处理的交易数量超过阈值时,会对组网的架构进行升级,且通过随机选举机制产生新的共识组,协助处理网络中的交易整个网络能够动态调整参与共识的节点数量和规模,在交易处理速度和容错性间达成平衡。且通过共识节点-备份节点的设计,进一步提高系统的交易处理能力和容错性03UTXO—未花费的交易输出UnspentTransactionOutput区块链常用账户模型假设有一个支付系统,其中有张三和李四两个账户,张三账户里有12.5万,现要转账给李四2.5万,涉及的操作:1.检查张三的账户余额是否大于2.5万2.把张三的账户扣除2.5万变成10万,然后发送一笔转账消息给李四的账户3.李四的账户接收到转账消息,将李四的账户余额加2.5万无论是张三还是李四,都具有一个余额作为状态,即当前余额是记录在某处的,只需要读出来即可,这种设计称为账户余额模型在比特币系的数字货币中被广泛使用UTXO模型普通账户模型,即AccountBased结构,也称账户余额模型,更多是用在智能合约型的区块链上普通账户模型中本聪在比特币中的交易技术方案每一笔交易都有若干交易输入和若干交易输出,每一笔交易都要花费一笔输入,产生一笔输出,这笔输出,即UTXO在比特币的世界里既没有账户,也没有余额,只有分散到区块链里的UTXO梧桐链存证交易方式UTXOUTXO两个世界中的交易每一笔转账,都能够追溯到上一笔交易,可以一直往上追溯到它诞生时矿工挖出来的那个区块在一笔交易中,被交易消耗的UTXO被称为交易输入,由交易创建的UTXO被称为交易输出比特币钱包通过扫描区块链并聚合所有属于该用户的UTXO来计算该用户的余额当用户付款时,他的钱包通过选择可用的UTXO来构造一笔交易一旦UTXO被选中,钱包会为它生成包含签名的解锁脚本,相当于把钱柜打开取钱出来支付货币的价值传递很容易,通过金属货币/纸币能够很好实现价值传递比特币世界物理世界两个世界中的交易比特币会对前一次的交易和下一位拥有者的公钥签署一个数字签名,将这个签名附加在比特币的末尾发送给下一位所有者通过UTXO的设计机制,保证了每笔交易只能使用一次,即解决了数字世界的双重支付的问题,从而实现价值传递由于全网只记录UTXO,未来可以剪裁历史旧数据,而不像中心化账户数据库系统一样需要记录所有的交易记录(增删改),不能丢弃旧数据,从而减缓了整个网络数据增长过快的问题货币的价值传递很容易,通过金属货币/纸币能够很好实现价值传递比特币世界物理世界UTXO的特性计算UTXO具有非常好的并行支付能力,即如果没有尺寸限制,一笔交易可以包含任意笔输入输出,同时也没有次序要求,在一笔交易中哪一个UTXO在前,哪个在后面不影响最终结果存储UTXO具有较好的可裁剪特性,可裁剪性指的是UTXO类型的交易,如果从最老的那一笔UTXO开始截断数据库,那么之前的数据可以删除掉了如果想进一步压缩数据尺寸,可以在任意位置截断,记录UTXO对应的交易哈希即可,然后从其他节点获取并校验UTXO,这也是轻钱包工作的基础之一UTXO的缺点1.可表达的状态少UTXO只能是已花费或者末花费状态,没有给需要任何其它内部状态的多阶段合约或者脚本留出生存空间,意味着UTXO只能用于建立简单的、一次性的合约,UTXO更像是一种二进制控制位2.区块链盲点(Blockchain-blindness)UTXO的脚本只能看到自己这条历史轨迹,无法看到区块链的数据的全貌,这导致了功能性扩展受到了限制,在花费比特币的过程中需要小心翼翼的组合UTXO,这也导致了系统状态逻辑复杂,不适合设计成智能合约的基础结构3.价值盲点(Value-blindness)基于账户模型的余额在花费过程中,可以任意的按值存取,它仅取决于程序能表示的最小精度UTXO脚本不能提供非常精细的金额控制,UTXO要求必须全部移动,如果要满足一个目标值金额,对组合UTXO算法的要求会比较高,采用许多有不同面值的UTXO,一方面要求尽可能地精确,另一方面又要求输入输出的数量尽可能的小UTXO与账户余额模型的比较账户模型UTXO备注存储空间低高账户模型只记录最终状态易用性简单易理解难UTXO需要配合高效的UTXO组装算法,要求尽可能降低输入输出的个数,还要让”零钱“归整,算法的复杂度相比账户余额要高安全性低高UTXO本身具备原子性、一致性、隔离性、持久性的记账机制,而账户模型需要自行处理,例如重放攻击04梧桐链的智能合约Docker实现智能合约21)节点在收到SDK发送的合约交易之后,进行合约操作解析;2)判断合约交易的操作,如果是执行安装,则跳转到步骤3,如果是销毁,则跳转到步骤5,如果是调用则跳转到步骤6;3)判断合约是否重复安装,如果重复则报错结束;4)合约不重复,则创建docker镜像,返回安装结果,结束;5)删除合约镜像,触发自检测机制,跳转到步骤8;6)解析调用的合约,检测合约状态;7)合约异常,跳转到步骤8,合约正常,则跳转到步骤9;8)自动检测到合约异常,自动重启,重启成功,则跳转到步骤9,重启失败,则跳转到步骤10;9)解析交易执行指令,返回结果,结果上链,结束;10)报合约不存在,结束;注:自检测机制是在合约停止后自动触发的进程,如果删除合约后,合约重启失败,则删除成功。若重启成功,则删除合约失败。梧桐链自主的WVM05梧桐链的安全与隐私保护安全性的策略节点的授权接入用CA服务器管理证书的发行和销毁;节点使用数字证书验证和加/解密加密算法非对称加密算法哈希算法签名算法权限管理节点权限可共识节点不可共识节点SDK权限数据隔离主、子链06梧桐链的管理平台节点管理列表界面节点详情界面用证书管理界面UTXO地址管理界面07课程总结学习内容添加你的副标题文字说明及简要标题文字概述梧桐链概述梧桐链的共识算法UTXO梧桐链的智能合约梧桐链的安全和隐私梧桐链的管理平台快速复习思考题:1梧桐链的创新点在哪里?判断题:2交易生成新的UTXOs,用于传输输入UTXOs中指定的金额。对还是错?选择题:比特币区块链中的UTXOs是什么?A.已消耗的交易输出B.发送给交易接收者的实际货币C.构成了交易的输入和输出D.是对矿工的奖励参考资料参考资料文章一文读懂账户模型与UTXO模型的区别与联系-链闻ChainNews区块链100讲:UTXO-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新苏教版科学四年级上册 第二单元 物体的运动教学设计
- 奥迪汽车年主题试驾
- ms的免疫病理机制及免疫干预治疗
- 骨折儿童心理护理
- 肺心病病人宣教
- 铣工高级工模拟考试题与答案
- 泵站运行工(初级)理论考试题及答案
- linux开发面试题及答案
- 初中七年级数学分式运算暑假衔接教学设计
- access数据库试题及答案
- 2026年船舶专业正高级船舶电子员考试练习题及答案
- 2026年德惠市公益性岗位人员招聘(378人)笔试参考题库及答案详解
- (一检)2026-2027学年福州市高三年级适应性练习地理试题(含答案)
- 2025年通信工程师中级通信专业实务(终端与业务)考试真题及答案
- 进入新时代的意义(课件)-2026-2027学年统编版道德与法治九年级上册
- 2026年从业人员健康证管理题库及答案
- 2026年广西壮族自治区贺州市法检系统书记员招聘笔试备考题库及答案详解
- 2026教科版六年级科学上册第一单元《健康生活》全部教案
- 钢结构凉亭施工方案
- 上海绿色施工方案格式文本(2026版)
- 《传感器与检测技术》课件 第十章光纤传感器
评论
0/150
提交评论