【技术实现步骤摘要】
一种用于在线开发和调试智能合约的脚手架系统及方法
[0001]本专利技术属于区块链
,涉及一种用于在线开发和调试智能合约的脚手架系统及方法
。
技术介绍
[0002]智能合约是运行在区块链上的自动执行的程序,可以用于构建各种应用
。
智能合约一旦部署在区块链上便无法被修改或删除,区块链的节点保存了智能合约的执行结果且保证了数据的安全性
。
[0003]Hyperledger Fabric
中的智能合约被称为链码
(Chaincode)
,部署在
Fabric
网络的
peer
节点上,通过使用
cmd
或
sdk
调用合约实现区块链账本的修改
。
对于
Fabric
区块链开发人员,链码需继承
Fabric
给出的智能合约
API
,并对于函数的参数及返回值
、main
函数等有一定的限制和要求
。
此外,链码的开发环境搭建过程较为繁琐:首先需要在本地启动一个
Fabric
测试网络,并安装
、
实例化链码后才可以进行测试与调试链码,调试链码需要通过
Fabric
的指令或者
sdk
,开发和调试效率较低
。
[0004]为了方便合约的开发和调试,现在亟需一种在线开发和调试
Hyperledger Fab ...
【技术保护点】
【技术特征摘要】
1.
一种用于在线开发和调试智能合约的脚手架系统,其特征在于:所述系统包括交互层,用于实现交互式操作界面;业务层,基于构建层和存储层处理由交互层传来的请求并给予响应,包括合约管理模块
、
合约脚手架模块
、
合约代码压缩模块和合约调试器模块;构建层,用于实现脚手架
、
调试器代码的构建生成以及调试器的启动,包括脚手架模板
、
调试器模板和调试器
shell
启动脚本;存储层,用于数据存储和系统所需的临时文件
。2.
根据权利要求1所述的一种用于在线开发和调试智能合约的脚手架系统,其特征在于:所述交互层基于
Vue
框架进行开发,包括
HTML
页面
、CodeMirror
网络代码编辑组件和
Axios
网络请求库
。3.
根据权利要求1或2所述的一种用于在线开发和调试智能合约的脚手架系统,其特征在于:所述合约管理模块基于
Gorm
框架连接存储层数据库并开发合约的
CURD
功能;所述合约脚手架模块用于调用构建层合约脚手架模板生成合约初始代码;所述合约代码压缩模块基于
base64
编码将用户上传的代码编码压缩后作为合约实体的一个字段以备入库;所述合约调试器模块调用构建层调试器模板生成调试器代码并在存储层临时文件夹写入代码文件,调用构建层调试器启动
shell
脚本执行调试器,将执行过程中的堆栈信息和输出信息通过管道获取并返回
。4.
根据权利要求1所述的一种用于在线开发和调试智能合约的脚手架系统,其特征在于:所述构建层的脚手架模板和调试器模板均基于
Golang Template
开发,通过传入的参数动态生成合...
【专利技术属性】
技术研发人员:钱亚冬,沈骏豪,
申请(专利权)人:苏州新建元数字科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。