【技术实现步骤摘要】
隐私交易的读写集生成方法和区块链节点
[0001]本说明书实施例属于区块链
,尤其涉及一种隐私交易的读写集方法和区块链节点。
技术介绍
[0002]区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链系统中按照时间顺序将数据区块以顺序相连的方式组合成链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。由于区块链具有去中心化、信息不可篡改、自治性等特性,区块链也受到人们越来越多的重视和应用。
[0003]区块链中可引入可信执行环境(Trusted Execution Environment,TEE),以用于保护隐私数据。TEE可保证放入其中的代码和数据的安全性、机密性和完整性,同时,在TEE中基于明文数据进行运算,从而计算效率较高。
技术实现思路
[0004]本专利技术的目的在于提供一种隐私交易的读写集生成方案,以进一步保护隐私数据。
[0005]本说明书第一方面提供一种隐私交易的读写集生成方法,由区块链系统中的节点执行,所述节点中包括可信执行环境TEE,所述方法包括:
[0006]将待执行的隐私交易提供到TEE内;
[0007]所述TEE对所述隐私交易对应的密文解密得到明文,基于所述明文生成第一读写集,所述第一读写集包括所述隐私交易请求访问的参数的名称key;
[0008]所述TEE在所述第一读写集中添加所述隐私交易未请求访问的参数的key,得到第二读写集,作为所述隐私交易的读写集。 ...
【技术保护点】
【技术特征摘要】
1.一种隐私交易的读写集生成方法,由区块链系统中的节点执行,所述节点中包括可信执行环境TEE,所述方法包括:将待执行的隐私交易提供到TEE内;所述TEE对所述隐私交易对应的密文解密得到明文,基于所述明文生成第一读写集,所述第一读写集包括所述隐私交易请求访问的参数的名称key;所述TEE在所述第一读写集中添加所述隐私交易未请求访问的参数的key,得到第二读写集,作为所述隐私交易的读写集。2.根据权利要求1所述的方法,所述第一读写集的写集中包括第一参数的key和第二参数的key,所述TEE在所述第一读写集中添加所述隐私交易未请求访问的参数的key包括:对所述第一参数的key和所述第二参数的key进行异或,得到第三参数的key,在所述第一读写集的写集中添加所述第三参数的key。3.根据权利要求2所述的方法,所述第一参数和所述第二参数为所述隐私交易中调用的合约中定义的变量。4.根据权利要求1或2所述的方法,还包括:将非隐私交易提供到TEE内;所述TEE根据所述非隐私交易生成所述非隐私交易的读写集;所述TEE根据所述隐私交易的读写集和所述非隐私交易的读写集,对多个交易进行分组,所述多个交易包括所述隐私交易和所述非隐私交易。5.根据权利要求4所述的方法,所述隐私交易对应的密文包括所述隐私交易中包括的密文内容和/或所述隐私交易调用的隐私合约的密文代码。6.根据权利要求5所述的方法,所述TEE中存储有对应的公钥和私钥,所述密文内容和所述密文代码通过基于所述公钥加密而生成,所述TEE对所述隐私交易对应的密文解密包括:所述TEE基于所述私钥对所述密文内容和/或所述密文代码解密。7.根据权利要求5所述的方法,还包括:并行执行通过分组得到的多个交易组,其中,在TEE外部执行所述非隐私交易,在所述TEE内执行所述隐私交易。8.根据权利要求7所述的方法,还包括:所述TEE在对所述多个交易分组之后,将所述分组结果信息提供到所述TEE外部,在所述TEE的外部基于所述分组结果信息确定所述多个交易组;所述并行执行通过分组得到的多个交易组包括:在所述TEE外部对所述多个交易组并行进行如下处理:对于一个交易组中的n个交易,在所述TEE的外部将所述n个交易中的非隐私交易分发到TEE外部、将所述n个交易中的隐私交易分发到TEE内。9.根据权利要求8所述的方法,所述TEE将所述分组结果信息提供到所述TEE外部包括:所述TEE基于第一交易组包括的多个第一隐私交易的读写集生成所述多个第一隐私交易的读集的并集;所述TEE将所述分组结果、所述第一交易组中的各个非隐私交易的读集、及所述并集提供所述TEE外部,所述并行执行通过分组得到的多个交易组包括:基于所述第一交易组中各个非隐私交易的读集和所述并集包括的多个参数的key,读取所述多个参数的值,将所述多个参数的值存储到所述TEE外部的缓存中,以用于执行所述第一交易组中的交易。
10.根据权利要求7...
【专利技术属性】
技术研发人员:黄祖城,
申请(专利权)人:蚂蚁区块链科技上海有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。