一种对写入块链的交易进行隐匿的方法及装置制造方法及图纸

技术编号:25949460 阅读:11 留言:0更新日期:2020-10-17 03:41
公开了一种对写入块链的交易进行隐匿的方法及装置。如果写入块链的某个交易是敏感交易(包含有不宜公开的敏感内容),那么,可以将块链中的该交易替换成包括该交易的交易哈希的隐匿化数据。

【技术实现步骤摘要】
一种对写入块链的交易进行隐匿的方法及装置
本说明书实施例涉及信息
,尤其涉及一种对写入块链的交易进行隐匿的方法及装置。
技术介绍
区块链网络是一种去中心化的、由多个节点参与的分布式数据存储系统。数据一旦被写入每个节点上的区块链,一方面,意味着数据在全网公开,另一方面,写入区块链的数据也难以被删除与篡改。基于此,在数据存证领域,区块链技术具有很大的应用前景。此外,实践中,中心化设备也可以采用类区块链存储(可以视为中心化的区块链存储)的方式对数据进行存储,区块链中的区块与类区块链中的区块的生成原理相同。显然,如果要删除写入类区块链中的数据,除非中心化设备将存储的整个类区块链都删除。因此,中心化的类区块链存储也比较适合应用于数据存证业务。本文将区块链存储方式与其他中心化的类区块链存储方式统称为块链存储。然而,在实际应用中,有些内容(本文称之为敏感内容)一旦被写入块链,就会造成难以消除的危害后果。
技术实现思路
为了解决敏感内容被写入块链容易造成危害后果的问题,本说明书实施例提供一种对写入块链的交易进行隐匿的方法及装置,技术方案如下:根据本说明书实施例的第1方面,提供一种对写入块链的交易进行隐匿的方法,包括:接收隐匿指令;所述隐匿指令包含目标交易标识;获取所述隐匿指令的签名,并判断获取的签名是否满足指定条件;若是,则根据所述隐匿指令,确定包括所述目标交易标识对应的交易的交易哈希的隐匿化数据,以及,将块链中对应于所述目标交易标识的交易替换成所述隐匿化数据;若否,则拒绝所述隐匿指令。根据本说明书实施例的第2方面,提供一种对写入块链的交易进行隐匿的装置,包括:接收模块,接收隐匿指令;所述隐匿指令包含目标交易标识;获取判断模块,获取所述隐匿指令的签名,并判断获取的签名是否满足指定条件;第一处理模块,若是,则根据所述隐匿指令,确定包括所述目标交易标识对应的交易的交易哈希的隐匿化数据,以及,将块链中对应于所述目标交易标识的交易替换成所述隐匿化数据;第二处理模块,若否,则拒绝所述隐匿指令。本说明书实施例所提供的技术方案,如果写入块链的某个交易是敏感交易(包含有不宜公开的敏感内容),那么,可以将块链中的该交易替换成包括该交易的交易哈希的隐匿化数据。一方面,该交易的交易哈希是对该交易采用单向散列算法(即哈希算法)计算得到的,由该交易的交易哈希无法逆推出该交易,因此,将该交易替换成隐匿化数据,相当于将块链中公示的该交易的明文内容不可恢复地隐匿起来。另一方面,将该交易替换成隐匿化数据,并不会影响该交易所在区块对应的梅克尔树的稳定性,也就不会影响到针对其他交易(与该交易位于同一区块中的交易)的简单支付验证(SimplifiedPaymentVerification,SPV)的准确性,从而保证了数据存证业务的正常运行。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书实施例。此外,本说明书实施例中的任一实施例并不需要达到上述的全部效果。附图说明为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。图1是本说明提供的梅克尔树的结构示意图;图2是本说明书实施例提供的一种对写入块链的交易进行隐匿的方法,的流程示意图;图3是本说明书实施例提供的构造隐匿化数据的过程示意图;图4是本说明书实施例提供的构造隐匿化数据的另一过程示意图;图5是本说明书实施例提供的一种对写入块链的交易进行隐匿的方法的流程示意图;图6是本说明书实施例提供的内容字段与标识字段的示意图;图7是本说明书实施例提供的一种对写入区块链的交易进行隐匿的方法的流程示意图;图8是本说明书实施例提供的一种包含非敏感内容的隐匿化数据的示意图;图9是本说明书实施例提供的一种对写入块链的交易进行隐匿的方法的流程示意图;图10是本说明书实施例提供的一种对写入块链的交易进行隐匿的方法的流程示意图;图11是本说明书实施例提供的一种构建区块对应的梅克尔树的方法的流程示意图;图12是本说明书实施例提供的一种对写入块链的交易进行隐匿的方法的流程示意图;图13是本说明书实施例提供的另一种构建区块对应的梅克尔树的方法的流程示意图;图14是本说明书实施例提供的一种简单支付验证方法的流程示意图;图15是本说明书实施例提供的一种对写入块链的交易进行隐匿的装置的结构示意图;图16是本说明苏实施例提供的一种对写入块链的交易进行隐匿的装置的结构示意图;图17是本说明苏实施例提供的一种对写入块链的交易进行隐匿的装置的结构示意图;图18是本说明苏实施例提供的一种对写入块链的交易进行隐匿的装置的结构示意图;图19是本说明苏实施例提供的一种对写入块链的交易进行隐匿的装置的结构示意图;图20是本说明书实施例提供的一种构建区块对应的梅克尔树的装置的结构示意图;图21是本说明书实施例提供的一种简单支付验证装置的结构示意图;图22是用于配置本说明书实施例装置的一种计算机设备的结构示意图。具体实施方式如前所述,在实际应用中,敏感内容一旦被写入块链,就会造成难以消除的危害后果。例如,张三对李四进行诽谤,并将诽谤言论的文本文件上传到区块链网络进行存证,导致该文本文件被写入区块链,对李四的名誉造成不可消除的伤害。又如,A公司盗取B公司的商业机密,并将盗取的商业机密提交给采用类区块链存储方式的中心化设备进行存证,导致该商业机密被写入类区块链,为了消除危害,只能由中心化设备删除存储的整个类区块链,付出的代价过于巨大。需要说明的是,在本说明书中所描述的交易(transaction),是指写入块链中的一笔数据。交易是区块链协议或类区块链协议中所约定的一种数据结构,一笔数据要存入块链,就需要被封装成交易。在基于块链的数据存证场景下,交易一旦被写入块链,就难以删除与篡改。然而,在实际应用中,如果写入块链的交易后续被认定包含不宜公开的敏感内容,那么,如何在保证块链存储业务正常运行的前提下,写入块链的敏感内容不再公开,就成为一个难以解决的技术问题。需要说明的是,假设将写入块链的敏感交易(包含敏感内容的交易)直接删除,那么很容易导致基于块链所运行的数据存证业务无法正常运行。原因具体为:常见的块链技术(区块链或中心化的类区块链)往往支持简单支付SPV验证。SPV是指针对某个交易,验证该交易是否已写入块链。SPV的原理是,验证请求方向数据存储方(区块链节点或中心化设备)请求验证某个交易(称为目标交易)是否已写入块链,数据存储方首先会定位所述目标交易所在的区块(称为目标区块),然后基于目标区块中本文档来自技高网...

【技术保护点】
1.一种对写入块链的交易进行隐匿的方法,包括:/n接收隐匿指令;所述隐匿指令包含目标交易标识;/n获取所述隐匿指令的签名,并判断获取的签名是否满足指定条件;/n若是,则根据所述隐匿指令,确定包括交易哈希的隐匿化数据,以及,将块链中对应于所述目标交易标识的交易替换成所述隐匿化数据;所述交易哈希是所述目标交易标识对应的交易的哈希值。/n

【技术特征摘要】
1.一种对写入块链的交易进行隐匿的方法,包括:
接收隐匿指令;所述隐匿指令包含目标交易标识;
获取所述隐匿指令的签名,并判断获取的签名是否满足指定条件;
若是,则根据所述隐匿指令,确定包括交易哈希的隐匿化数据,以及,将块链中对应于所述目标交易标识的交易替换成所述隐匿化数据;所述交易哈希是所述目标交易标识对应的交易的哈希值。


2.如权利要求1所述的方法,若所述目标交易标识对应的交易是写入区块链的交易,则所述隐匿指令的签名为区块链节点的签名,并且,所述指定条件为获取的签名的数量大于指定数量。


3.如权利要求1所述的方法,若所述目标交易标识对应的交易是写入类区块链的交易,则所述指定条件为获取的签名包括至少两个权限方的签名。


4.如权利要求1所述的方法,每个权限方的签名分配有权重;
若所述目标交易标识对应的交易是写入类区块链的交易,则所述指定条件为获取的各签名分别对应的权重之和大于指定权重。


5.如权利要求1所述的方法,根据所述隐匿指令,确定隐匿化数据,具体包括:
获取所述目标交易标识对应的交易的交易哈希;
将预设的前标记字符拼接到所述交易哈希的首部;
根据所述前标记字符与所述交易哈希拼接成的数据,确定隐匿化数据。


6.如权利要求5所述的方法,根据所述前标记字符与所述交易哈希拼接成的数据,确定隐匿化数据,具体包括:
将预设的后标记字符拼接到所述交易哈希的尾部,并且,将备注信息拼接到所述后标记字符的尾部;
将所述前标记字符、所述交易哈希、所述后标记字符以及所述备注信息拼接成的数据确定为隐匿化数据。


7.如权利要求1所述的方法,针对块链中的每个交易存储位置,该交易存储位置存储有内容字段以及标识字段,所述内容字段包括交易或基于所述交易生成的隐匿化数据;
其中,当所述内容字段包括交易时,所述标识字段包括第一标识符,当所述内容字段包括基于所述交易生成的隐匿化数据时,所述标识字段包括第二标识符。


8.如权利要求1所述的方法,所述隐匿指令还包括隐匿条件,用于确定所述目标交易标识对应的交易中的敏感内容;
根据所述隐匿指令,确定隐匿化数据,具体包括:
获取所述目标交易标识对应的交易的交易哈希,并根据所述隐匿指令包括的隐匿条件,从所述目标交易标识对应的交易中提取非敏感内容;
根据所述交易哈希与所述非敏感内容,确定隐匿化数据。


9.如权利要求8所述的方...

【专利技术属性】
技术研发人员:杨新颖
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1