数据验证方法、装置、设备以及存储介质制造方法及图纸

技术编号:26763316 阅读:24 留言:0更新日期:2020-12-18 23:23
本申请实施例公开了一种数据验证方法、装置、设备以及存储介质,应用于零知识证明领域及数字医疗领域,该方法包括:从区块链中获取第一加密数据、第二加密数据以及保序签名;基于上述第一加密数据和上述第二加密数据确定第一公钥,对上述保序签名进行验签;若对上述保序签名验签不通过,则根据各第一加密子数据的密文属性和各第二加密子数据的密文属性调整各第二加密子数据的组成顺序得到重排后的第二加密数据,将上述重排后的第二加密数据的排序信息回传至区块链,获取等值签名;基于上述第一加密数据和上述重排后的第二加密数据确定第二公钥,利用上述第二公钥对上述等值签名进行验签。采用本发明专利技术实施例,可以丰富数据验证场景,提高验证效率。

【技术实现步骤摘要】
数据验证方法、装置、设备以及存储介质
本申请涉及区块链
,尤其涉及一种数据验证方法、装置、设备以及存储介质。
技术介绍
随着区块链技术的发展,为了实现安全的数据共享,所有数据都是以密文的形式加密存储,在保证数据安全性的同时也带来了很多不便。例如,在数字医疗领域中,需要对医疗设备的供应信息建立电子信息档案。而在传统的区块链项目中,如果想要确定供货商订购多批货品的数据与生产商要生产多批货品的数据是否一致,需要通过对供货商和生产商存储在区块链中的加密数据进行验证,只有在双方数据的数值相等且存储顺序一致时才可以通过验证,实现订货商与生产商的数据共享。但下游的经销商只知道货品的数值和以及货品到达的顺序,并不知道供货商的订购顺序,也不知道生产商的生产顺序,则无法通过验证,无法实现数据共享,这给经营带来了不便。
技术实现思路
本申请实施例提供一种数据验证方法、装置、设备以及存储介质,可以在双方掌握等值且同序的数据和等值但不同序的数据时分别通过验证,丰富验证场景,提高验证效率。第一方面,本申请实施例提供一种数据验证方法,该方法包括:从区块链中获取第一加密数据、第二加密数据以及保序签名,其中,上述第一加密数据由多个第一加密子数据组成,上述第二加密数据由多个第二加密子数据组成。基于上述第一加密数据和上述第二加密数据确定第一公钥,利用上述第一公钥对上述保序签名进行验签。若对上述保序签名验签不通过,则根据各第一加密子数据的密文属性和各第二加密子数据的密文属性调整各第二加密子数据的组成顺序以得到重排后的第二加密数据,并将上述重排后的第二加密数据的排序信息回传至区块链,获取等值签名。基于上述第一加密数据和上述重排后的第二加密数据确定第二公钥,利用上述第二公钥对上述等值签名进行验签。结合第一方面,在一种可能的实施方式中,上述第一加密子数据和上述第二加密子数据由椭圆曲线加密法ECC加密生成,且符合密码学中的佩德森复数PedersenCommitment格式。结合第一方面,在一种可能的实施方式中,上述保序签名由保序私钥加密得到。其中,上述保序私钥由第一加密保序盲因子和KA与第二加密保序盲因子和KB确定。其中,上述KA由上述第一加密子数据的保序盲因子确定,上述KB由上述第二加密子数据的保序盲因子确定。结合第一方面,在一种可能的实施方式中,上述基于上述第一加密数据和上述第二加密数据确定第一公钥,包括:基于上述第一加密数据以及上述多个第一加密子数据组成上述第一加密数据的第一组成顺序确定第一加密保序参数。基于上述第二加密数据以及上述多个第二加密子数据组成上述第二加密数据的第二组成顺序确定第二加密保序参数。根据上述第一加密保序参数和上述第二加密保序参数确定上述第一公钥。结合第一方面,在一种可能的实施方式中,加密子数据的密文属性包括加密子数据的密文相似度和组成顺序;上述根据各第一加密子数据的密文属性和各第二加密子数据的密文属性调整各第二加密子数据的组成顺序以得到重排后的第二加密数据包括:确定上述第一加密数据中的各第一加密子数据之间的密文相似度以及上述第一加密数据中各第一加密子数据的第一组成顺序。确定上述第二加密数据中的各第二加密子数据之间的密文相似度。根据上述各第一加密子数据之间的密文相似度、上述各第二加密子数据之间的密文相似度以及上述第一组成顺序调整各第二加密子数据组成顺序以得到重排后的第二加密数据。结合第一方面,在一种可能的实施方式中,上述基于上述第一加密数据和上述重排后的第二加密数据确定第二公钥,包括:基于上述第一加密数据以及上述多个第一加密子数据组成上述第一加密数据的第一组成顺序确定第一加密等值参数。基于上述重排后的第二加密数据以及上述多个第二加密子数据组成上述重排后的第二加密数据的第三组成顺序确定第二加密等值参数。根据上述第一加密等值参数和上述第二加密等值参数确定上述第二公钥。第二方面,本申请实施例提供了一种数据验证装置,该装置包括:数据传输模块,用于从区块链中获取第一加密数据、第二加密数据以及保序签名,和/或将重排后的第二加密数据的排序信息回传至区块链,获取等值签名。保序验证模块,用于基于上述第一加密数据和上述第二加密数据确定第一公钥,利用上述第一公钥对上述保序签名进行验签。密文重排模块,用于根据各第一加密子数据的密文属性和各第二加密子数据的密文属性调整各第二加密子数据的组成顺序以得到重排后的第二加密数据,并将上述重排后的第二加密数据的排序信息通过上述数据传输模块回传至区块链。等值验证模块,用于基于上述第一加密数据和上述重排后的第二加密数据确定第二公钥,利用上述第二公钥对上述等值签名进行验签。结合第二方面,在一种可能的实施方式中,上述保序签名由保序私钥加密得到。其中,上述保序私钥由第一加密保序盲因子和KA与第二加密保序盲因子和KB确定。其中,上述KA由上述第一加密子数据的保序盲因子确定,上述KB由上述第二加密子数据的保序盲因子确定。第三方面,本申请实施例提供了一种数据验证设备,该设备包括处理器和存储器,该处理器和存储器相互连接。该存储器用于存储支持该终端执行上述第一方面和/或第一方面任一种可能的实现方式提供的方法的计算机程序,该计算机程序包括程序指令,该处理器被配置用于调用上述程序指令,执行上述第一方面和/或第一方面任一种可能的实施方式所提供的方法。第四方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行以实现上述第一方面和/或第一方面任一种可能的实施方式所提供的方法。在本申请实施例中,通过对加密数据进行保序验证和排序后的等值验证,可以对数值相等且顺序相同和数值相等但顺序不同的数据进行验证。极大地丰富了数据验证的应用场景,提高了验证效率。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的一种数据验证的场景示意图;图2是本专利技术实施例提供的数据验证方法的一流程示意图;图3是本专利技术实施例提供的数据验证方法的另一流程示意图;图4是本专利技术实施例提供的数据验证装置的一结构示意图;图5是本专利技术实施例提供的设备的结构示意图。具体实施方式请参见图1,图1是本专利技术实施例提供的一种数据验证方法的应用场景示意图。如图1所示,应用场景涉及的终端包括终端3000a、终端3000b以及终端3000n,节点2000a、节点2000b、节点2000c以及节点2000n。其中,每个终端对应一个节点,节点接收终端发送的数据,并上传至区块链中;同时,节点也可以接收区块链的数据并进行验本文档来自技高网...

【技术保护点】
1.一种数据验证方法,其特征在于,所述方法包括:/n从区块链中获取第一加密数据、第二加密数据以及保序签名,其中,所述第一加密数据由多个第一加密子数据组成,所述第二加密数据由多个第二加密子数据组成;/n基于所述第一加密数据和所述第二加密数据确定第一公钥,利用所述第一公钥对所述保序签名进行验签;/n若对所述保序签名验签不通过,则根据各第一加密子数据的密文属性和各第二加密子数据的密文属性调整各第二加密子数据的组成顺序以得到重排后的第二加密数据,并将所述重排后的第二加密数据的排序信息回传至区块链,获取等值签名;/n基于所述第一加密数据和所述重排后的第二加密数据确定第二公钥,利用所述第二公钥对所述等值签名进行验签。/n

【技术特征摘要】
1.一种数据验证方法,其特征在于,所述方法包括:
从区块链中获取第一加密数据、第二加密数据以及保序签名,其中,所述第一加密数据由多个第一加密子数据组成,所述第二加密数据由多个第二加密子数据组成;
基于所述第一加密数据和所述第二加密数据确定第一公钥,利用所述第一公钥对所述保序签名进行验签;
若对所述保序签名验签不通过,则根据各第一加密子数据的密文属性和各第二加密子数据的密文属性调整各第二加密子数据的组成顺序以得到重排后的第二加密数据,并将所述重排后的第二加密数据的排序信息回传至区块链,获取等值签名;
基于所述第一加密数据和所述重排后的第二加密数据确定第二公钥,利用所述第二公钥对所述等值签名进行验签。


2.根据权利要求1所述的方法,其特征在于,所述第一加密子数据和所述第二加密子数据由椭圆曲线加密法ECC加密生成,且符合密码学中的佩德森复数PedersenCommitment格式。


3.根据权利要求2所述的方法,其特征在于,所述保序签名由保序私钥加密得到;
其中,所述保序私钥由第一加密保序盲因子和KA与第二加密保序盲因子和KB确定;
其中,所述KA由所述第一加密子数据的保序盲因子确定,所述KB由所述第二加密子数据的保序盲因子确定。


4.根据权利要求3所述的方法,其特征在于,所述基于所述第一加密数据和所述第二加密数据确定第一公钥,包括:
基于所述第一加密数据以及所述多个第一加密子数据组成所述第一加密数据的第一组成顺序确定第一加密保序参数;
基于所述第二加密数据以及所述多个第二加密子数据组成所述第二加密数据的第二组成顺序确定第二加密保序参数;
根据所述第一加密保序参数和所述第二加密保序参数确定所述第一公钥。


5.根据权利要求2所述的方法,其特征在于,加密子数据的密文属性包括加密子数据的密文相似度和组成顺序;
所述根据各第一加密子数据的密文属性和各第二加密子数据的密文属性调整各第二加密子数据的组成顺序以得到重排后的第二加密数据,包括:
确定所述第一加密数据中的各第一加密子数据之间的密文相似度以及所述第一加密数据中各第一加密子数据的第一组成顺序;
确定所述第二加密数据中的各第二加密子数据之间的密文相似度...

【专利技术属性】
技术研发人员:贾牧谢丹力陆陈一帆
申请(专利权)人:深圳壹账通智能科技有限公司
类型:发明
国别省市:广东;44

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

1