[发明专利]结合代码标注与交易、事件类型的收据存储方法和节点有效
申请号: | 201910419897.4 | 申请日: | 2019-05-20 |
公开(公告)号: | CN110278193B | 公开(公告)日: | 2021-06-01 |
发明(设计)人: | 刘琦;闫莺;魏长征 | 申请(专利权)人: | 创新先进技术有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08;H04L9/06;H04L9/08;H04L9/32;G06Q40/04 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 开曼群岛大开曼岛*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 结合 代码 标注 交易 事件 类型 收据 存储 方法 节点 | ||
1.一种结合代码标注与交易、事件类型的收据存储方法,包括:
第一区块链节点接收经过加密的对应于智能合约的交易,所述智能合约的代码中包括通过暴露标识符标明的字段;
第一区块链节点在可信执行环境中解密所述交易以获得所述智能合约,所述智能合约包含特殊事件函数;
第一区块链节点在所述可信执行环境中执行所述智能合约,得到收据数据,所述收据数据包含对应于所述特殊事件函数的日志;
第一区块链节点根据所述交易的交易类型,确定相应的暴露字段;
第一区块链节点存储所述收据数据,使对应于所述特殊事件函数的日志中的至少一部分收据内容以明文形式存储、所述收据数据的其余内容以密文形式存储,所述至少一部分收据内容包括由所述暴露标识符标明的暴露字段。
2.根据权利要求1所述的方法,第一区块链节点接收的交易对应的智能合约,包括:
高级语言编写的智能合约;或,
字节码形式的智能合约。
3.根据权利要求2所述的方法,当第一区块链节点接收的交易对应的智能合约为高级语言编写的智能合约时,所述方法还包括:
第一区块链节点通过编译器对所述高级语言编写的智能合约进行编译,生成字节码形式的智能合约,以在所述可信执行环境中执行。
4.根据权利要求2所述的方法,当第一区块链节点接收的交易对应的智能合约为字节码形式的智能合约时,所述字节码形式的智能合约由客户端通过编译器对高级语言编写的智能合约进行编译而得到,所述高级语言编写的智能合约由用户在所述客户端上编写得到。
5.根据权利要求2所述的方法,所述高级语言编写的智能合约与所述字节码形式的智能合约具有相同或对应的暴露标识符。
6.根据权利要求1所述的方法,第一区块链节点接收的交易对应的智能合约,包括:
用户在第一区块链节点上生成的智能合约;或,
用户在客户端上生成的智能合约;或,
所述客户端通过第二区块链节点发来的交易中的智能合约。
7.根据权利要求1所述的方法,所述暴露标识符标明的字段包括:合约级字段;第一区块链节点存储所述收据数据,包括:
第一区块链节点在存储所述收据数据时,将所有特殊事件函数产生的日志中属于合约级字段的暴露字段以明文形式存储。
8.根据权利要求1所述的方法,所述暴露标识符标明的字段包括:对应于所述智能合约中定义的至少一个事件的事件级字段;第一区块链节点存储所述收据数据,包括:
第一区块链节点在存储所述收据数据时,确定出所述至少一个事件对应的特殊事件函数产生的日志,并将确定出的日志中属于所述事件级字段的暴露字段以明文形式存储。
9.根据权利要求1所述的方法,所述交易包括类型字段,所述类型字段的取值用于标明相应的交易类型。
10.根据权利要求1所述的方法,所述交易的交易类型包括:存证类型、资产转移类型、合约创建类型、合约调用类型。
11.根据权利要求1所述的方法,区块链中存储有预定义的交易类型与暴露字段之间的映射关系,所述映射关系被用于确定所述交易的交易类型对应的暴露字段。
12.根据权利要求1所述的方法,所述智能合约中的事件函数包含类型标识符,所述类型标识符用于将所述事件函数标记为特殊事件函数。
13.根据权利要求1所述的方法,当所述智能合约包含的事件函数位于区块链上记录的特殊函数列表中时,所述智能合约包含的事件函数被判定为特殊事件函数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于创新先进技术有限公司,未经创新先进技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910419897.4/1.html,转载请声明来源钻瓜专利网。