一种基于区块链智能合约的编解码方法及系统技术方案

技术编号:21453640 阅读:19 留言:0更新日期:2019-06-26 04:41
公开了一种基于区块链智能合约的BASE64编解码方法及系统。在本说明书实施例中,一方面,定义BASE64编码指令与BASE64解码指令并添加到区块链虚拟机的指令集中,同时,在区块链虚拟机中部署对应于所述BASE64编码指令的BASE64编码逻辑和对应于所述BASE64解码指令的BASE64解码逻辑。另一方面,还需要将定义的BASE64编码指令与BASE64解码指令添加到智能合约编译器的指令集中,使得经智能合约编译器编译的业务智能合约中包含BASE64编码指令和/或BASE64解码指令。这样一来,倘若将所述业务智能合约部署到区块链网络中,那么,用户在构建业务发起交易时,就可以同时指定调用所述业务智能合约执行该业务发起交易。

【技术实现步骤摘要】
一种基于区块链智能合约的编解码方法及系统
本说明书实施例涉及信息
,尤其涉及一种基于区块链智能合约的编解码方法及系统。
技术介绍
目前,通过在基于以太坊协议搭建的区块链网络中部署智能合约,可以满足各种各样的线上业务需求。在实践中,对于有的业务需求,区块链网络中的各节点在通过以太坊虚拟机调用该业务需求对应的智能合约执行业务时,需要进行基于64个可打印字符(BASE64)的编解码操作。但是,现有的以太坊虚拟机并不默认支持BASE64编解码操作。
技术实现思路
为了解决现有的以太坊虚拟机不默认支持BASE64编解码操作的问题,本说明书实施例提供一种基于区块链智能合约的编码方法及系统,技术方案如下:根据本说明书实施例的第1方面,提供一种基于区块链智能合约的编码方法,区块链虚拟机的指令集中包括BASE64编码指令,并且,区块链虚拟机中部署有对应于所述BASE64编码指令的BASE64编码逻辑;智能合约编译器的指令集中包括所述BASE64编码指令,经所述智能合约编译器编译的业务智能合约中包含所述BASE64编码指令;区块链网络中部署有所述业务智能合约;所述编码方法包括:所述区块链网络中的节点获得业务发起交易并广播给其他节点;针对所述区块链网络中的每个节点,该节点在执行所述业务发起交易时,通过区块链虚拟机,调用所述业务智能合约;该节点通过区块链虚拟机,根据所述业务智能合约中的BASE64编码指令,触发执行所述BASE64编码逻辑,以对待编码数据进行编码操作。根据本说明书实施例的第2方面,提供另一种基于区块链智能合约的编码方法,区块链虚拟机的指令集中包括BASE64编码指令,并且,区块链虚拟机中部署有对应于所述BASE64编码指令的BASE64编码逻辑;智能合约编译器的指令集中包括所述BASE64编码指令,经所述智能合约编译器编译的业务智能合约中包含BASE64编码智能合约的合约标识;所述BASE64编码智能合约是预先部署于所述区块链网络中的智能合约;区块链网络中部署有所述业务智能合约;所述编码方法包括:所述区块链网络中的节点获得业务发起交易并广播给其他节点;针对所述区块链网络中的每个节点,该节点在执行所述业务发起交易时,通过区块链虚拟机,调用所述业务智能合约;该节点通过区块链虚拟机,根据所述业务智能合约中的所述BASE64编码智能合约的合约标识,调用所述BASE64编码智能合约;该节点通过区块链虚拟机,根据所述BASE64编码智能合约中的,BASE64编码指令,触发执行所述BASE64编码逻辑,以对待编码数据进行编码操作。根据本说明书实施例的第3方面,提供一种基于区块链智能合约的解码方法,区块链虚拟机的指令集中包括BASE64解码指令,并且,区块链虚拟机中部署有对应于所述BASE64解码指令的BASE64解码逻辑;智能合约编译器的指令集中包括所述BASE64解码指令,经所述智能合约编译器编译的业务智能合约中包含所述BASE64解码指令;区块链网络中部署有所述业务智能合约;所述解码方法包括:所述区块链网络中的节点获得业务发起交易并广播给其他节点;针对所述区块链网络中的每个节点,该节点在执行所述业务发起交易时,通过区块链虚拟机,调用所述业务智能合约;该节点通过区块链虚拟机,根据所述业务智能合约中的BASE64解码指令,触发执行所述BASE64解码逻辑,以对待解码数据进行解码操作。根据本说明书实施例的第4方面,提供一种基于区块链智能合约的解码方法,区块链虚拟机的指令集中包括BASE64解码指令,并且,区块链虚拟机中部署有对应于所述BASE64解码指令的BASE64解码逻辑;智能合约编译器的指令集中包括所述BASE64解码指令,经所述智能合约编译器编译的业务智能合约中包含BASE64解码智能合约的合约标识;所述BASE64解码智能合约是预先部署于所述区块链网络中的智能合约;区块链网络中部署有所述业务智能合约;所述解码方法包括:所述区块链网络中的节点获得业务发起交易并广播给其他节点;针对所述区块链网络中的每个节点,该节点在执行所述业务发起交易时,通过区块链虚拟机,调用所述业务智能合约;该节点通过区块链虚拟机,根据所述业务智能合约中的所述BASE64解码智能合约的合约标识,调用所述BASE64解码智能合约;该节点通过区块链虚拟机,根据所述BASE64解码智能合约中的,BASE64解码指令,触发执行所述BASE64解码逻辑,以对待解码数据进行解码操作。根据本说明书实施例的第5方面,提供一种区块链虚拟机,用于实现上述第一方面与第二方面的方法;其中,所述区块链虚拟机的指令集中包括BASE64编码指令,并且,区块链虚拟机中部署有对应于所述BASE64编码指令的BASE64编码逻辑。根据本说明书实施例的第6方面,提供另一种区块链虚拟机,用于实现上述第三方面与第四方面的方法;其中,所述区块链虚拟机的指令集中包括BASE64解码指令,并且,区块链虚拟机中部署有对应于所述BASE64解码指令的BASE64解码逻辑。根据本说明书实施例的第7方面,提供一种智能合约编译器,用于实现上述第一方面的方法;其中,所述智能合约编译器的指令集中包括所述BASE64编码指令,经所述智能合约编译器编译的业务智能合约中包含所述BASE64编码指令。根据本说明书实施例的第8方面,提供另一种智能合约编译器,用于实现上述第二方面的方法;其中,智能合约编译器的指令集中包括所述BASE64编码指令,经所述智能合约编译器编译的业务智能合约中所述BASE64编码智能合约的合约标识;所述BASE64编码智能合约是预先部署于所述区块链网络中的智能合约。根据本说明书实施例的第9方面,提供一种智能合约编译器,用于实现上述第三方面的方法;其中,所述智能合约编译器的指令集中包括所述BASE64解码指令,经所述智能合约编译器编译的业务智能合约中包含所述BASE64解码指令。根据本说明书实施例的第10方面,提供一种智能合约编译器,用于实现上述第四方面的方法;其中,智能合约编译器的指令集中包括所述BASE64解码指令,经所述智能合约编译器编译的业务智能合约中包含所述BASE64解码智能合约的合约标识;所述BASE64解码智能合约是预先部署于所述区块链网络中的智能合约。根据本说明书实施例的第11方面,提供一种区块链系统,包括区块链网络;其中,区块链虚拟机的指令集中包括BASE64编码指令,并且,区块链虚拟机中部署有对应于所述BASE64编码指令的BASE64编码逻辑;智能合约编译器的指令集中包括所述BASE64编码指令,经所述智能合约编译器编译的业务智能合约中包含所述BASE64编码指令;区块链网络中部署有所述业务智能合约;所述区块链网络中的节点,获得业务发起交易并广播给其他节点;所述区块链网络中的每个节点,在执行所述业务发起交易时,通过区块链虚拟机,调用所述业务智能合约;通过区块链虚拟机,根据所述业务智能合约中的BASE64编码指令,触发执行所述BASE64编码逻辑,以对待编码数据进行编码操作。根据本说明书实施例的第12方面,提供一种区块链系统,包括区块链网络;其中,区块链虚拟机的指令集中包括BASE64编码指令,并且,区块链虚拟机中部署有对应于所述BASE64编码指令的BASE本文档来自技高网...

【技术保护点】
1.一种基于区块链智能合约的编码方法,区块链虚拟机的指令集中包括BASE64编码指令,并且,区块链虚拟机中部署有对应于所述BASE64编码指令的BASE64编码逻辑;智能合约编译器的指令集中包括所述BASE64编码指令,经所述智能合约编译器编译的业务智能合约中包含所述BASE64编码指令;区块链网络中部署有所述业务智能合约;所述编码方法包括:所述区块链网络中的节点获得业务发起交易并广播给其他节点;针对所述区块链网络中的每个节点,该节点在执行所述业务发起交易时,通过区块链虚拟机,调用所述业务智能合约;该节点通过区块链虚拟机,根据所述业务智能合约中的BASE64编码指令,触发执行所述BASE64编码逻辑,以对待编码数据进行编码操作。

【技术特征摘要】
1.一种基于区块链智能合约的编码方法,区块链虚拟机的指令集中包括BASE64编码指令,并且,区块链虚拟机中部署有对应于所述BASE64编码指令的BASE64编码逻辑;智能合约编译器的指令集中包括所述BASE64编码指令,经所述智能合约编译器编译的业务智能合约中包含所述BASE64编码指令;区块链网络中部署有所述业务智能合约;所述编码方法包括:所述区块链网络中的节点获得业务发起交易并广播给其他节点;针对所述区块链网络中的每个节点,该节点在执行所述业务发起交易时,通过区块链虚拟机,调用所述业务智能合约;该节点通过区块链虚拟机,根据所述业务智能合约中的BASE64编码指令,触发执行所述BASE64编码逻辑,以对待编码数据进行编码操作。2.如权利要求1所述的方法,所述业务发起交易包含所述待编码数据;或,所述业务智能合约包含所述待编码数据;或,所述待编码数据是执行所述业务发起交易时所产生的。3.一种基于区块链智能合约的编码方法,区块链虚拟机的指令集中包括BASE64编码指令,并且,区块链虚拟机中部署有对应于所述BASE64编码指令的BASE64编码逻辑;智能合约编译器的指令集中包括所述BASE64编码指令,经所述智能合约编译器编译的业务智能合约中包含BASE64编码智能合约的合约标识;所述BASE64编码智能合约是预先部署于所述区块链网络中的智能合约;区块链网络中部署有所述业务智能合约;所述编码方法包括:所述区块链网络中的节点获得业务发起交易并广播给其他节点;针对所述区块链网络中的每个节点,该节点在执行所述业务发起交易时,通过区块链虚拟机,调用所述业务智能合约;该节点通过区块链虚拟机,根据所述业务智能合约中的所述BASE64编码智能合约的合约标识,调用所述BASE64编码智能合约;该节点通过区块链虚拟机,根据所述BASE64编码智能合约中的,BASE64编码指令,触发执行所述BASE64编码逻辑,以对待编码数据进行编码操作。4.一种基于区块链智能合约的解码方法,区块链虚拟机的指令集中包括BASE64解码指令,并且,区块链虚拟机中部署有对应于所述BASE64解码指令的BASE64解码逻辑;智能合约编译器的指令集中包括所述BASE64解码指令,经所述智能合约编译器编译的业务智能合约中包含所述BASE64解码指令;区块链网络中部署有所述业务智能合约;所述解码方法包括:所述区块链网络中的节点获得业务发起交易并广播给其他节点;针对所述区块链网络中的每个节点,该节点在执行所述业务发起交易时,通过区块链虚拟机,调用所述业务智能合约;该节点通过区块链虚拟机,根据所述业务智能合约中的BASE64解码指令,触发执行所述BASE64解码逻辑,以对待解码数据进行解码操作。5.如权利要求4所述的方法,所述业务发起交易包含所述待解码数据;或,所述业务智能合约包含所述待解码数据;或,所述待解码数据是执行所述业务发起交易时所产生的。6.一种基于区块链智能合约的解码方法,区块链虚拟机的指令集中包括BASE64解码指令,并且,区块链虚拟机中部署有对应于所述BASE64解码指令的BASE64解码逻辑;智能合约编译器的指令集中包括所述BASE64解码指令,经所述智能合约编译器编译的业务智能合约中包含BASE64解码智能合约的合约标识;所述BASE64解码智能合约是预先部署于所述区块链网络中的智能合约;区块链网络中部署有所述业务智能合约;所述解码方法包括:所述区块链网络中的节点获得业务发起交易并广播给其他节点;针对所述区块链网络中的每个节点,该节点在执行所述业务发起交易时,通过区块链虚拟机,调用所述业务智能合约;该节点通过区块链虚拟机,根据所述业务智能合约中的所述BASE64解码智能合约的合约标识,调用所述BASE64解码智能合约;该节点通过区块链虚拟机,根据所述BASE64解码智能合约中的,BASE64解码指令,触发执行所述BASE64解码逻辑,以对待解码数据进行解码操作。7.一种区块链虚拟机,用于实现权利要求1~3任一项所述的方法;其中,所述区块链虚拟机的指令集中包括BASE64编码指令,并且,区块链虚拟机中部署有对应于所述BASE64编码指令的BASE64编码逻辑。8.如权利要求7所述的区块链虚拟机,所述区块链虚拟机的指令集中还包括至少一个以太坊指令,以太坊指令是以太坊虚拟机的指令集中的指令;针对所述区块链虚拟机的指令集中包括的每个以太坊指令,所述区块链虚拟机中部署有对应于该以太坊指令的相关逻辑。9.一种区块链虚拟机,用于实现权利要求4~6任一项所述的方法;其中,所述区块链虚拟机的指令集中包括BASE64解码指令,并且,区块链虚拟机中部署有对应于所述BASE64解码指令的BASE64解码逻辑。10.一种智能合约编译器,用于实现权利要求1所述的方法;其中,所述智能合约...

【专利技术属性】
技术研发人员:谢桂鲁
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1