[发明专利]有条件的结合代码标注与类型维度的收据存储方法和节点有效
申请号: | 201910419900.2 | 申请日: | 2019-05-20 |
公开(公告)号: | CN110245490B | 公开(公告)日: | 2021-06-22 |
发明(设计)人: | 刘琦;闫莺;魏长征 | 申请(专利权)人: | 创新先进技术有限公司 |
主分类号: | G06F21/53 | 分类号: | G06F21/53;G06F21/60;G06F21/62;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.根据权利要求12所述的方法,所述外部账户包括记录于区块链上的用户类型字段,所述用户类型字段的取值对应于所述用户类型。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于创新先进技术有限公司,未经创新先进技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910419900.2/1.html,转载请声明来源钻瓜专利网。