[发明专利]区块链中实现隐私保护的方法、节点和存储介质有效
申请号: | 201910124748.5 | 申请日: | 2019-02-19 |
公开(公告)号: | CN109936626B | 公开(公告)日: | 2020-05-29 |
发明(设计)人: | 刘琦;魏长征;闫莺 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;G06Q40/04;G06Q20/38;G06F21/62;G06F21/60 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 区块 实现 隐私 保护 方法 节点 存储 介质 | ||
1.一种区块链中实现隐私保护的方法,包括:
第一区块链节点接收客户端发起的交易,所述交易存在一个或多个对应的智能合约;当所述交易为隐私交易时,第一区块链节点在可信执行环境中对所述隐私交易进行解密,以获得相应的明文交易内容,并通过可信执行环境中部署的虚拟机执行所述明文交易内容,以得到收据数据;当所述交易为明文交易时,第一区块链节点通过可信执行环境之外的常规执行环境中部署的虚拟机执行所述明文交易;
第一区块链节点执行所述交易以得到收据数据,所述收据数据包括分别对应于每一智能合约的收据子数据;
第一区块链节点在确定所述交易对应的第一智能合约存在权限保护标识时,在存储所述收据数据时为第一智能合约对应的收据子数据设定相应的访问条件;其中,当所述交易对应的第二智能合约未存在权限保护标识时,所述第二智能合约对应的收据子数据不存在访问条件;
第一区块链节点在响应于针对第一智能合约对应的收据子数据的访问请求时,确定所述访问条件被满足。
2.根据权利要求1所述的方法,所述访问条件包括:
请求方处于访问白名单中;或,
请求方未处于访问黑名单中。
3.根据权利要求2所述的方法,所述请求方包括以下至少之一:发起请求的用户、发起请求的智能合约的合约地址、发起请求的函数。
4.根据权利要求1所述的方法,
所述访问条件为第一区块链节点处预定义的统一条件;或,
所述访问条件为所述交易中定义的个性化条件。
5.根据权利要求4所述的方法,所述交易存在多个对应的智能合约,所述收据数据包括分别对应于每一智能合约的收据子数据;所述个性化条件包括:针对所有智能合约对应的收据子数据的条件,或分别针对各个智能合约对应的收据子数据的条件。
6.根据权利要求4所述的方法,
所述个性化条件位于所述交易中;或,
所述个性化条件位于所述交易对应的智能合约中;或,
所述个性化条件位于所述交易对应的智能合约所调用的另一智能合约中。
7.根据权利要求1所述的方法,第一区块链节点存储所述收据数据,包括:
第一区块链节点在所述可信执行环境之外执行存储功能代码,以将所述隐私交易对应的收据数据从可信执行环境输出,并存储至所述可信执行环境之外的外部存储空间。
8.根据权利要求1所述的方法,所述交易用于创建和/或调用智能合约。
9.根据权利要求1所述的方法,还包括:
第一区块链节点在存储所述收据数据时,用密钥加密;
当请求方满足所述访问条件时,第一区块链节点将加密后的收据数据返回所述请求方。
10.根据权利要求9所述的方法,第一区块链节点使用密钥将所述收据数据加密,包括:
第一区块链节点在确定所述交易为隐私交易时,使用密钥将所述收据数据加密。
11.根据权利要求10所述的方法,第一区块链节点执行从客户端接收的交易,包括:
第一区块链节点在确定所述交易为隐私交易时,在可信执行环境中对所述隐私交易进行解密以获得相应的明文交易内容,并执行所述明文交易内容;
其中,所述收据数据在所述可信执行环境中被加密。
12.根据权利要求10所述的方法,还包括:
第一区块链节点在确定所述交易为明文交易时,在可信执行环境之外执行所述明文交易;
第一区块链节点存储所述收据数据。
13.根据权利要求9所述的方法,
第一区块链节点使用密钥将所述收据数据加密,包括:
第一区块链节点在确定所述交易包含加密标识时,使用密钥将所述收据数据加密。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910124748.5/1.html,转载请声明来源钻瓜专利网。