链代码的便携、部署与实例化.pptx

返回 相似 举报
链代码的便携、部署与实例化.pptx_第1页
第1页 / 共7页
链代码的便携、部署与实例化.pptx_第2页
第2页 / 共7页
链代码的便携、部署与实例化.pptx_第3页
第3页 / 共7页
链代码的便携、部署与实例化.pptx_第4页
第4页 / 共7页
链代码的便携、部署与实例化.pptx_第5页
第5页 / 共7页
点击查看更多>>
资源描述:
Day 11 链代码的编码、部署 与实例化,链码(智能合约)是什么,今天凌晨245,欧冠皇马VS拜仁慕尼黑,发布一个智能合约,皇马赢,小明给我1000元;拜仁赢,我给小明1000元,比赛结果发布,皇马42拜仁。触发智能合约响应条件,履行智能合约,将小明的1000元打入我的账户,智能合约是由事件驱动的、具有状态的、存储和运行在区块链上的程序,,生成交易的唯一来源LedgerBlocksTransactions 操作区块链交互的唯一方法 实例化在channel上,链码的基本概念和交易执行的流程,Channel 通道,子链 同一peer可加入不同channel 链码的操作基于Channel进行 同一channel上的peer结点同步其上链码执行的结果 Endorser 模拟执行链码 分离计算任务,减轻共识节点负担,增加吞吐量 支持endorsement policy Orderer 对链码执行结果共识 支持solo/kafka/FBFT不同的ordering策略 Committer 将链码执行结果写进账本ledger,,,Fabric CA,APP,SDK,sync,Fabric Orders,0. Enroll/login,2.a 校验签名 2.b 比对多个Endorser的回复结果 2.c 检查是否收集了足够的Endorsement,5. 发送交易区块,2.回复Proposal Response,1.a 校验Proposal签名 1.b 检查是否满足Channel ACL 1.c 模拟执行交易并对结果签名,TX Proposal channel id chaincode arguments user signature Proposal Response r/w sets endorsement statement endorser signature TX r/w sets endorser signatures channel id,3. 发送交易TX,4. 对交易进行排序,构造区块,1. 发送TX Proposal,5.a 检查交易结构完整性、签名、是否重复 5.b 校验交易是否符合Endorsement策略 5.c 检查读集合中版本跟账本是否一致 5.d 执行区块中的合法交易,更新账本状态,链代码的安装、调用和实例化,链码调用三种模式,方式一,方式二,方式三,,云端,,云端,,云端,华为云BCS服务ChainCode支持,开发准备ChainCode开发语言目前支持 Go,未来支持Node.js版本SDK语言当前提供社区Go、Java版本开发运行特点本地完成代码编写后,直接提交源码的zip包,BCS服务提供编译和容器化操作,链码的开发,必须要实现的接口 type Chaincode interface { // 初始化工作,一般情况下仅被调⽤用一次 Initstub ChaincodeStubInterface pb.Response // 查询或更新world state,可多次被调⽤ Invokestub ChaincodeStubInterface pb.Response },账本状态数据的读写 GetState PutState DelState GetStateByRange GetStateByPartialCompositeKey GetQueryResult GetHistoryForKey CreateCompositeKey SplitCompositeKey,接口详细说明 https//godoc.org/
展开阅读全文

最新标签

网站客服QQ:123120571
环境100文库手机站版权所有
经营许可证编号:京ICP备16041442号-6