[发明专利]基于代码标注的对象级收据存储方法和节点有效
申请号: | 201910419755.8 | 申请日: | 2019-05-20 |
公开(公告)号: | CN110263543B | 公开(公告)日: | 2021-06-01 |
发明(设计)人: | 刘琦;闫莺;魏长征 | 申请(专利权)人: | 创新先进技术有限公司 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06Q20/38 |
代理公司: | 北京博思佳知识产权代理有限公司 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所述的方法,所述对称加密算法的密钥包括发起所述交易的客户端提供的初始密钥;或,所述对称加密算法的密钥包括所述初始密钥与影响因子生成的衍生密钥。
14.根据权利要求13所述的方法,所述交易由所述初始密钥进行加密,且所述初始密钥被非对称加密算法的公钥进行加密;第一区块链节点在可信执行环境中解密所述交易,包括:
第一区块链节点用所述非对称加密算法的私钥解密得到所述初始密钥,并用所述初始密钥对所述交易进行解密得到所述智能合约的代码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于创新先进技术有限公司,未经创新先进技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910419755.8/1.html,转载请声明来源钻瓜专利网。