一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种自定义通证流通方法及其相关装置与流程

2022-02-21 09:17:11 来源:中国专利 TAG:


1.本技术涉及区块链技术领域,尤其涉及一种自定义通证流通方法及其相关装置。


背景技术:

2.现有技术已有通过智能合约发行自定义通证,也有不依赖智能合约,区块链网络运行的自定义通证,而通过智能合约发行的自定义通证和区块链内自定义通证之间是相互独立的,没有交互。但在一些应用场景中需要智能合约内发行的自定义通证与区块链内发行的自定义通证可以相互流通时,无法通过现有的自定义通证流通方法实现。


技术实现要素:

3.本技术提供了一种自定义通证流通方法及其相关装置,用于改善现有技术在智能合约内发行的自定义通证与区块链内发行的自定义通证无法相互流通的技术问题。
4.有鉴于此,本技术第一方面提供了一种自定义通证流通方法,包括:
5.在智能化合约和区块链网络中进行相关配置,所述相关配置包括:在智能合约对应的以太坊虚拟机中配置自定义通证操作对应的网关操作指令和在智能合约和区块链网络中配置所述网关操作指令对应的接口;
6.当区块链节点接收到智能合约调用交易时,调用所述以太坊虚拟机执行所述智能合约,所述交易包括自定义通证操作;
7.当所述以太坊虚拟机执行所述智能合约的过程中解析得到所述网关操作指令时,通过所述接口将所述网关操作指令回调给所述区块链节点,使得所述区块链节点执行所述网关操作指令对应的自定义通证操作;
8.在所述区块链节点执行完所述自定义通证操作后,进行交易共识;
9.在交易共识通过后,通过所述区块链节点将交易共识结果回调给所述智能合约。
10.可选的,所述自定义通证操作包括错误信息返回、账户属性设置、交易费率设置、信任网关设置、信任额度设置、网关余额查询和/或网关通证交易。
11.可选的,所述在智能合约对应的以太坊虚拟机中配置自定义通证操作对应的网关操作指令,具体包括:
12.在智能合约对应的以太坊虚拟机中增加自定义通证操作对应的操作函数;
13.通过编译工具对所述操作函数进行编译,得到网关操作指令。
14.可选的,所述所述区块链节点执行完所述自定义通证操作后进行交易共识,之前还包括:
15.对所述区块链节点执行所述自定义通证操作时的通证指令参数进行数据上链。
16.本技术第二方面提供了一种自定义通证流通系统,包括:
17.配置单元,用于在智能化合约和区块链网络中进行相关配置,所述相关配置包括:在智能合约对应的以太坊虚拟机中配置自定义通证操作对应的网关操作指令和在智能合约和区块链网络中配置所述网关操作指令对应的接口;
18.调用单元,用于当区块链节点接收到智能合约调用交易时,调用所述以太坊虚拟机执行所述智能合约,所述交易包括自定义通证操作;
19.第一回调单元,用于当所述以太坊虚拟机执行所述智能合约的过程中解析得到所述网关操作指令时,通过所述接口将所述网关操作指令回调给所述区块链节点,使得所述区块链节点执行所述网关操作指令对应的自定义通证操作;
20.交易共识单元,用于在所述区块链节点执行完所述自定义通证操作后,进行交易共识;
21.第二回调单元,用于在交易共识通过后,通过所述区块链节点将交易共识结果回调给所述智能合约。
22.可选的,所述自定义通证操作包括错误信息返回、账户属性设置、交易费率设置、信任网关设置、信任额度设置、网关余额查询和/或网关通证交易。
23.可选的,所述在智能合约对应的以太坊虚拟机中配置自定义通证操作对应的网关操作指令,具体包括:
24.在智能合约对应的以太坊虚拟机中增加自定义通证操作对应的操作函数;
25.通过编译工具对所述操作函数进行编译,得到网关操作指令。
26.可选的,所述系统还包括:
27.数据上链单元,用于对所述区块链节点执行所述自定义通证操作时的通证指令参数进行数据上链。
28.本技术第三方面提供了一种电子设备,所述设备包括处理器以及存储器;
29.所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
30.所述处理器用于根据所述程序代码中的指令执行第一方面任一种所述的自定义通证流通方法。
31.本技术第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码被处理器执行时实现第一方面任一种所述的自定义通证流通方法。
32.从以上技术方案可以看出,本技术具有以下优点:
33.本技术提供了一种自定义通证流通方法,包括:在智能化合约和区块链网络中进行相关配置,相关配置包括:在智能合约对应的以太坊虚拟机中配置自定义通证操作对应的网关操作指令和在智能合约和区块链网络中配置网关操作指令对应的接口;当区块链节点接收到智能合约调用交易时,调用以太坊虚拟机执行智能合约,交易包括自定义通证操作;当以太坊虚拟机执行智能合约的过程中解析得到网关操作指令时,通过接口将网关操作指令回调给区块链节点,使得区块链节点执行网关操作指令对应的自定义通证操作;在区块链节点执行完自定义通证操作后,进行交易共识;在交易共识通过后,通过区块链节点将交易共识结果回调给智能合约。
34.本技术中,配置智能合约,包括网关设置、网关发行自定义通证以及通证流转等操作接口,接口的具体实现逻辑在区块链内,即通证的发行及流转是在区块链内完成的,在调用智能合约时会调用区块链内的具体实现,这样可实现智能合约发行的自定义通证在区块链内是可操作的,反之,区块链内发行的自定义通证在智能合约中也可以操作,从而实现了自定义通证在区块链内和智能合约内自由流通使用,相互可调用操作。
附图说明
35.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
36.图1为本技术实施例提供的一种自定义通证流通方法的一个流程示意图;
37.图2为本技术实施例提供的一种自定义通证流通系统的一个结构示意图。
具体实施方式
38.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
39.在某些应用场景中要求合约内发行的自定义通证与区块链内发行的自定义通证可以互相流通,针对这一需求现有技术的两种发行自定义通证的方案均无法实现。当前智能合约发行自定义通证,由于其状态和操作逻辑均依靠合约完成,其安全性和可靠性备受质疑,也曾多次出现安全漏洞。此外,对于区块链内自定义通证而言,其操作受限于节点程序,不如智能合约的可编程方式具有自定义操作逻辑及自动执行的特点。
40.为了改善上述问题,请参阅图1,本技术实施例提供了一种自定义通证流通方法,包括:
41.步骤101、在智能化合约和区块链网络中进行相关配置。
42.本技术实施例考虑到,现有技术中的智能合约发行的自定义通证和区块链内自定义通证之间相互独立,不能互相流通,使得自定义通证流通便捷性较低,不够灵活。本技术实施例中的自定义通证通过网关发行,因此,区块链网络有网关,网关包括的功能:可以进行网关属性设置,包括交易费用等属性;可以设置信任网络自定义通证以及自定义通证的额度;可以自定义通证转账;可以查询网关的信任自定义通证信息,查询网关自定义通证余额。
43.区块链网络具有支持智能合约功能,智能合约包括如下功能:
44.包含一套图灵完备的智能合约脚本语言;提供将智能合约编译成字节码的工具;提供以太坊虚拟经,可以将字节码解析并执行合约逻辑;以太坊虚拟机执行智能合约后将智能合约调用结果输出。
45.本技术实施例在智能化合约和区块链网络中进行相关配置,以实现智能合约发行的自定义通证和区块链内自定义通证可以互相流通,相关配置包括:在智能合约对应的以太坊虚拟机中配置自定义通证操作对应的网关操作指令和在智能合约和区块链网络中配置网关操作指令对应的接口。首先,扩展智能合约指令,以支持对网关自定义通证操作。具体包括:
46.1)在以太坊虚拟机增加自定义通证操作对应的网关操作指令revertdiy、exaccountset、extransferfeeset、extrustset、extrustlimit、exgatewaybalance、expay,智能合约脚本语言课支持网关属性设置、信任设置、转账、余额查询等命令;
47.在智能合约对应的以太坊虚拟机中增加自定义通证操作对应的操作函数;通过编译工具对操作函数进行编译,得到网关操作指令,其中,自定义通证操作包括错误信息返回、账户属性设置、交易费率设置、信任网关设置、信任额度设置、网关余额查询和/或网关通证交易。
48.2)配置以太坊虚拟机,增加以太坊虚拟机对网关操作指令的支持,例如,当以太坊虚拟机解析到自定义通证指令时,会回调到区块链层;
49.3)配置智能合约编译工具,增加网关操作指令与合约接口的对应,以实现编译后的合约文件对网关操作指令的支持;例如,在solidity编译时,遇到与指令对应的solidity函数时,编译为对应的指令,以便在以太坊虚拟机执行的时候正常执行。
50.其次,对区块链网络进行配置,具体包括:
51.1)增加对网关操作指令对应的操作接口的支持,与原网关自定义通证操作对接;
52.2)增加对网关操作指令回调的支持,例如,当区块链节点执行完自定义通证操作,将执行结果回调到虚拟机层。
53.步骤102、当区块链节点接收到智能合约调用交易时,调用以太坊虚拟机执行智能合约,交易包括自定义通证操作。
54.客户端发送智能化合约调用交易,交易中包括发行的自定义通证操作。区块链节点接收到智能合约调用交易,调用以太坊虚拟机执行智能合约。
55.步骤103、当以太坊虚拟机执行智能合约的过程中解析得到网关操作指令时,通过接口将网关操作指令回调给区块链节点,使得区块链节点执行网关操作指令对应的自定义通证操作。
56.以太坊虚拟机执行智能合约的过程中解析得到网关操作指令时,通过不同实现接口回调给区块链节点,自定义通证操作由以太坊虚拟机跳转到区块链节点,在区块链节点进行自定义通证的具体操作,从而实现自定义通证操作在智能合约和区块链网络之间相互流通。
57.本技术实施例中通过虚拟机访问区块链内接口,实现网关通证的访问操作,构建虚拟机调用交易,直接应用交易处于共识。
58.步骤104、在区块链节点执行完自定义通证操作后,进行交易共识。
59.对区块链节点执行自定义通证操作时的通证指令参数进行数据上链,可以保持在区块链节点上,其中,通证指令参数是自定义通证操作执行时附带的参数,例如设置交易费率操作,其对应的通证指令参数为交易费率具体数值。
60.在区块链节点执行完自定义通证操作后,进行交易共识。
61.步骤105、在交易共识通过后,通过区块链节点将交易共识结果回调给智能合约。
62.在交易共识通过后,根据共识结果改变涉及到的账户的状态,并通过区块链节点将交易共识结果回调给智能合约。
63.当用户发行区块链内自定义通证,但是转账时想添加转账条件并且要求到期自动转账,那么可以通过本技术实施例提供的方法,通过配置智能合约实现该转账操作,弥补区块链内自定义通证不够灵活的缺点。
64.本技术实施例,配置智能合约,包括网关设置、网关发行自定义通证以及通证流转等操作接口,接口的具体实现逻辑在区块链内,即通证的发行及流转是在区块链内完成的,
在调用智能合约时会调用区块链内的具体实现,这样可实现智能合约发行的自定义通证在区块链内是可操作的,反之,区块链内发行的自定义通证在智能合约中也可以操作,从而实现了自定义通证在区块链内和智能合约内自由流通使用,相互可调用操作。
65.以上为本技术提供的一种自定义通证流通方法的一个实施例,以下为本技术提供的一种自定义通证流通系统的一个实施例。
66.配置单元,用于在智能化合约和区块链网络中进行相关配置,相关配置包括:在智能合约对应的以太坊虚拟机中配置自定义通证操作对应的网关操作指令和在智能合约和区块链网络中配置网关操作指令对应的接口;
67.调用单元,用于当区块链节点接收到智能合约调用交易时,调用以太坊虚拟机执行智能合约,交易包括自定义通证操作;
68.第一回调单元,用于当以太坊虚拟机执行智能合约的过程中解析得到网关操作指令时,通过接口将网关操作指令回调给区块链节点,使得区块链节点执行网关操作指令对应的自定义通证操作;
69.交易共识单元,用于在区块链节点执行完自定义通证操作后,进行交易共识;
70.第二回调单元,用于在交易共识通过后,通过区块链节点将交易共识结果回调给智能合约。
71.作为进一步地改进,自定义通证操作包括错误信息返回、账户属性设置、交易费率设置、信任网关设置、信任额度设置、网关余额查询和/或网关通证交易。
72.作为进一步地改进,在智能合约对应的以太坊虚拟机中配置自定义通证操作对应的网关操作指令,具体包括:
73.在智能合约对应的以太坊虚拟机中增加自定义通证操作对应的操作函数;
74.通过编译工具对操作函数进行编译,得到网关操作指令。
75.作为进一步地改进,系统还包括:
76.数据上链单元,用于对区块链节点执行自定义通证操作时的通证指令参数进行数据上链。
77.本技术实施例,配置智能合约,包括网关设置、网关发行自定义通证以及通证流转等操作接口,接口的具体实现逻辑在区块链内,即通证的发行及流转是在区块链内完成的,在调用智能合约时会调用区块链内的具体实现,这样可实现智能合约发行的自定义通证在区块链内是可操作的,反之,区块链内发行的自定义通证在智能合约中也可以操作,从而实现了自定义通证在区块链内和智能合约内自由流通使用,相互可调用操作。
78.本技术实施例还提供了一种电子设备,设备包括处理器以及存储器;
79.存储器用于存储程序代码,并将程序代码传输给处理器;
80.处理器用于根据程序代码中的指令执行前述方法实施例中的自定义通证流通方法。
81.本技术实施例还提供了一种计算机可读存储介质,计算机可读存储介质用于存储程序代码,程序代码被处理器执行时实现前述方法实施例中的自定义通证流通方法。
82.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
83.本技术的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存
在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
84.应当理解,在本技术中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
85.在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
86.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
87.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
88.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以通过一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(英文全称:read-only memory,英文缩写:rom)、随机存取存储器(英文全称:random access memory,英文缩写:ram)、磁碟或者光盘等各种可以存储程序代码的介质。
89.以上所述,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献