CN115828310A - 一种基于隐私计算的数据查询方法、装置及存储介质 - Google Patents
一种基于隐私计算的数据查询方法、装置及存储介质 Download PDFInfo
- Publication number
- CN115828310A CN115828310A CN202310111742.0A CN202310111742A CN115828310A CN 115828310 A CN115828310 A CN 115828310A CN 202310111742 A CN202310111742 A CN 202310111742A CN 115828310 A CN115828310 A CN 115828310A
- Authority
- CN
- China
- Prior art keywords
- key
- data
- public key
- party
- encryption
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请实施例公开了一种基于隐私计算的数据查询方法、装置及存储介质,其中基于隐私计算的数据查询方法包括步骤:获取查询方发送的加密后的请求报文;获取数据方的第二公钥,将第二公钥发送给查询方,以获取查询方发送的第一重加密密钥;获取使用第一重加密密钥进行重加密后的请求报文并发送给数据方;获取数据方发送的请求报文对应的加密后的查询结果数据;获取查询方的第一公钥,将第一公钥发送给数据方,以获取数据方发送的第二重加密密钥;获取使用第二重加密密钥进行重加密后的查询结果数据并发送给查询方,以使查询方使用第一私钥对查询结果数据进行解密得到对应的明文数据。
Description
技术领域
本申请涉及计算机信息处理技术领域,具体涉及一种基于隐私计算的数据查询方法、装置及存储介质。
背景技术
在传统的数据查询服务中,一般都有查询方和数据方两个核心角色,除此之外,往往还会存在中转代理的角色来负责数据查询的运营和代理转发。在传统的数据明文查询过程中,明文查询请求经过代理节点时,代理节点存在缓存数据的风险,这样无论对于查询方还是数据方都是不愿见到的情况,同时也是有违数据安全保护规定的。
近年来,随着隐私计算技术的不断发展成熟,该技术的应用场景也越来越丰富,数据查询场景的隐私保护也是其中之一。针对当前常见的数据查询服务中,数据(包含请求数据和响应数据)在整个过程中都是明文方式进行流转,中间代理商是可以查看并缓存双方的数据的问题,业内的常见解决方案是对明文数据进行加密,最常见的加密方式如:AES对称加密、RSA非对称加密等。但是采用此方式虽然解决了数据查询过程中的安全传输问题,但是在有中间代理节点的业务场景中不适用,原因包括:上述方案需要查询方和数据方协调密钥才能实现,因此违背了中间代理的原则;非对称和对称加密都是一对一的加密方式,无法实现一对多。
发明内容
本申请实施例的目的在于提供一种基于隐私计算的数据查询方法、装置及存储介质,用以解决现有技术中的数据查询过程中的明文传输的数据安全问题,以及加密的数据查询方案需要查询方和数据方协调密钥,违背中间代理的原则,同时无法支持一个查询请求代理多个数据方的问题。
为实现上述目的,本申请实施例提供一种基于隐私计算的数据查询方法,包括步骤:获取查询方发送的加密后的请求报文,所述请求报文通过所述查询方利用第一公钥进行加密;
获取数据方的第二公钥,将所述第二公钥发送给所述查询方,以获取所述查询方发送的第一重加密密钥,所述第一重加密密钥通过所述查询方利用所述第一公钥对应的第一私钥和所述第二公钥生成;
获取使用所述第一重加密密钥进行重加密后的所述请求报文并发送给所述数据方,以使所述数据方使用所述第二公钥对应的第二私钥对所述请求报文进行解密得到对应的明文数据;
获取所述数据方发送的所述请求报文对应的加密后的查询结果数据,所述查询结果数据通过所述数据方利用所述第二公钥进行加密;
获取所述查询方的第一公钥,将所述第一公钥发送给所述数据方,以获取所述数据方发送的第二重加密密钥,所述第二重加密密钥通过所述数据方利用所述第二私钥和所述第一公钥生成;
获取使用所述第二重加密密钥进行重加密后的所述查询结果数据并发送给所述查询方,以使所述查询方使用所述第一私钥对所述查询结果数据进行解密得到对应的明文数据。
可选地,所述第一公钥和对应的所述第一私钥,以及所述第二公钥和对应的所述第二私钥的生成方式包括:基于ECC椭圆曲线的非对称加密算法的国密SM2生成。
可选地,所述第一重加密密钥的生成方式包括:
通过所述查询方生成第三公钥和对应的第三私钥,然后利用所述第三公钥、第三私钥和第二公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第一私钥和坐标点值生成所述第一重加密密钥;
所述第二重加密密钥的生成方式包括:
通过所述数据方生成第四公钥和对应的第四私钥,然后利用所述第四公钥、第四私钥和第一公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第二私钥和坐标点值生成所述第二重加密密钥。
为实现上述目的,本申请还提供另一种基于隐私计算的数据查询方法,包括步骤:生成请求报文,利用第一公钥对所述请求报文进行加密,将加密后的所述请求报文发送给中间代理方;
获取所述中间代理方发送的由数据方生成的第二公钥,生成第三公钥和对应的第三私钥,然后利用所述第三公钥、第三私钥和第二公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第一公钥对应的第一私钥和坐标点值生成第一重加密密钥;
将所述第一重加密密钥和第一公钥发送给所述中间代理方,以使所述中间代理方将所述第一公钥发送给所述数据方以及使用所述第一重加密密钥对所述请求报文进行重加密后发送给所述数据方;
获取所述中间代理方发送的通过使用所述第二公钥进行加密然后使用第二重加密密钥进行重加密的查询结果数据,使用所述第一私钥对所述查询结果数据进行解密得到对应的明文数据。
为实现上述目的,本申请还提供另一种基于隐私计算的数据查询方法,包括步骤:获取中间代理方发送的通过使用查询方的第一公钥进行加密然后使用第一重加密密钥进行重加密的请求报文,利用第二私钥对所述请求报文进行解密得到对应的明文数据,并获取对应的查询结果数据;
获取所述中间代理方发送的所述第一公钥,生成第四公钥和对应的第四私钥,然后利用所述第四公钥、第四私钥和第一公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第二私钥和坐标点值生成所述第二重加密密钥,将所述第二重加密密钥发送给所述中间代理方;
利用所述第二私钥对应的第二公钥对所述查询结果数据进行加密后发送给所述中间代理方,以使所述中间代理方将使用所述第二重加密密钥进行重加密后的所述查询结果数据发送给所述查询方。
为实现上述目的,本申请还提供一种基于隐私计算的数据查询装置,包括:存储器;以及
与所述存储器连接的处理器,所述处理器被配置成:
获取查询方发送的加密后的请求报文,所述请求报文通过所述查询方利用第一公钥进行加密;
获取数据方的第二公钥,将所述第二公钥发送给所述查询方,以获取所述查询方发送的第一重加密密钥,所述第一重加密密钥通过所述查询方利用所述第一公钥对应的第一私钥和所述第二公钥生成;
获取使用所述第一重加密密钥进行重加密后的所述请求报文并发送给所述数据方,以使所述数据方使用所述第二公钥对应的第二私钥对所述请求报文进行解密得到对应的明文数据;
获取所述数据方发送的所述请求报文对应的加密后的查询结果数据,所述查询结果数据通过所述数据方利用所述第二公钥进行加密;
获取所述查询方的第一公钥,将所述第一公钥发送给所述数据方,以获取所述数据方发送的第二重加密密钥,所述第二重加密密钥通过所述数据方利用所述第二私钥和所述第一公钥生成;
获取使用所述第二重加密密钥进行重加密后的所述查询结果数据并发送给所述查询方,以使所述查询方使用所述第一私钥对所述查询结果数据进行解密得到对应的明文数据。
为实现上述目的,本申请还提供一种计算机存储介质,其上存储有计算机程序,其中所述计算机程序被机器执行时实现如上所述的方法的步骤。
本申请实施例具有如下优点:
本申请实施例提供一种基于隐私计算的数据查询方法,包括步骤:获取查询方发送的加密后的请求报文,所述请求报文通过所述查询方利用第一公钥进行加密;获取数据方的第二公钥,将所述第二公钥发送给所述查询方,以获取所述查询方发送的第一重加密密钥,所述第一重加密密钥通过所述查询方利用所述第一公钥对应的第一私钥和所述第二公钥生成;获取使用所述第一重加密密钥进行重加密后的所述请求报文并发送给所述数据方,以使所述数据方使用所述第二公钥对应的第二私钥对所述请求报文进行解密得到对应的明文数据;获取所述数据方发送的所述请求报文对应的加密后的查询结果数据,所述查询结果数据通过所述数据方利用所述第二公钥进行加密;获取所述查询方的第一公钥,将所述第一公钥发送给所述数据方,以获取所述数据方发送的第二重加密密钥,所述第二重加密密钥通过所述数据方利用所述第二私钥和所述第一公钥生成;获取使用所述第二重加密密钥进行重加密后的所述查询结果数据并发送给所述查询方,以使所述查询方使用所述第一私钥对所述查询结果数据进行解密得到对应的明文数据。
通过上述方法,应用中心化代理重加密技术,解决了数据查询过程中的明文传输的数据安全问题,避免了中间节点查看和缓存数据,此外,中间代理通过管理多数据方代理重加密密钥,不需要查询方和数据方协调密钥,并且可以实现一次数据查询请求广播到多个数据方并实现数据的整合能力,从而解决了普通加密方案中无法支持的一个查询请求代理多个数据方问题。
附图说明
为了更清楚地说明本申请的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。
图1为本申请实施例提供的一种基于隐私计算的数据查询方法应用于中间代理方的流程图;
图2为本申请实施例提供的一种基于隐私计算的数据查询方法的整体流程图;
图3为本申请实施例提供的一种基于隐私计算的数据查询方法应用于查询方的流程图;
图4为本申请实施例提供的一种基于隐私计算的数据查询方法应用于数据方的流程图;
图5为本申请实施例提供的一种基于隐私计算的数据查询装置的模块框图。
具体实施方式
以下由特定的具体实施例说明本申请的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本申请的其他优点及功效,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
此外,下面所描述的本申请不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
本申请一实施例提供一种基于隐私计算的数据查询方法,参考图1和图2,图1为本申请的一实施方式中提供的一种基于隐私计算的数据查询方法应用于中间代理方的流程图,图2为为本申请实施例提供的一种基于隐私计算的数据查询方法的整体流程图,在图2中,pk_X1是第一公钥,sk_X1是第一私钥,P是请求报文,P_X1是加密后的请求报文,K_X_A是第一重加密密钥,P_A1是重加密后的请求报文,pk_A1是第二公钥,sk_A1是第二私钥,R是查询结果数据,R_A1是加密后的查询结果数据,K_A_X是第二重加密密钥,R_X1是重加密后的查询结果数据。应当理解的是,该方法还可以包括未示出的附加框和/或可以省略所示出的框,本申请的范围在此方面不受限制。
以下实施例结合基于隐私计算的数据查询方法的整体流程对应用于中间代理方的方法进行描述。
在步骤101处,获取查询方发送的加密后的请求报文,所述请求报文通过所述查询方利用第一公钥进行加密。
在步骤102处,获取数据方的第二公钥,将所述第二公钥发送给所述查询方,以获取所述查询方发送的第一重加密密钥,所述第一重加密密钥通过所述查询方利用所述第一公钥对应的第一私钥和所述第二公钥生成。
在一些实施例中,所述第一公钥和对应的所述第一私钥,以及所述第二公钥和对应的所述第二私钥的生成方式包括:基于ECC椭圆曲线的非对称加密算法的国密SM2生成。
具体地,查询方和数据方各生成一对公私密钥,数据方的第二公钥上报给中间代理方保管,双方密钥对的生成方式:基于ECC椭圆曲线的非对称加密算法的国密SM2生成。查询方用自己的第一公钥对请求报文加密后发送给中间代理方。
在一些实施例中,所述第一重加密密钥的生成方式包括:
通过所述查询方生成第三公钥和对应的第三私钥,然后利用所述第三公钥、第三私钥和第二公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第一私钥和坐标点值生成所述第一重加密密钥。
具体地,中间代理方将数据方第二公钥传给查询方,查询方用第一私钥和数据方第二公钥生成代理重加密密钥返回。
以下以第一重加密密钥为例,说明重加密密钥的生成方式:
1)生成一对新的密钥对(第三公钥和对应的第三私钥);
3)用输入的己方的私钥(第一私钥)和上一步的d生成重加密密钥(计算公式:)。上述公式中,pk_B是解密方的公钥(数据方的第二公钥),X_A是新生成的密钥对的第三公钥,x_A是新生成的密钥对的第三私钥随机数,sk_A是加密方的私钥(查询方的第一私钥)。
本实施例方案所采用的中心化代理重加密技术是基于国密SM2(基于ECC椭圆曲线非对称加密算法)+AES实现密钥和重加密密钥的生成,加密安全性高且加解密速度快。应当理解的是,上述加密方式还可以替换为其他能够实现同样的技术目的的加密技术,本申请对此不作限制。
在步骤103处,获取使用所述第一重加密密钥进行重加密后的所述请求报文并发送给所述数据方,以使所述数据方使用所述第二公钥对应的第二私钥对所述请求报文进行解密得到对应的明文数据。
具体地,中间代理方使用代理重加密密钥对密文进行重加密后发送给数据方,重加密是指对使用第一公钥加密后的请求报文进行再次加密(在一些实施例中,也可以由查询方进行重加密,将重加密后的请求报文发送给中间代理方)。中间代理通过管理多数据方代理重加密密钥,可以实现一次数据查询请求广播到多个数据方并实现数据的整合能力。
在步骤104处,获取所述数据方发送的所述请求报文对应的加密后的查询结果数据,所述查询结果数据通过所述数据方利用所述第二公钥进行加密。
具体地,数据方基于得到的所述请求报文的明文数据查询得到查询结果数据,数据方利用所述第二公钥对查询结果数据进行加密后,发送给中间代理方。
在步骤105处,获取所述查询方的第一公钥,将所述第一公钥发送给所述数据方,以获取所述数据方发送的第二重加密密钥,所述第二重加密密钥通过所述数据方利用所述第二私钥和所述第一公钥生成。
具体地,数据方基于获取的第一公钥和自己的第二私钥生成第二重加密密钥,然后发送给中间代理方。
在一些实施例中,所述第二重加密密钥的生成方式包括:
通过所述数据方生成第四公钥和对应的第四私钥,然后利用所述第四公钥、第四私钥和第一公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第二私钥和坐标点值生成所述第二重加密密钥。具体参考前述实施例中的重加密密钥的生成方式。
在步骤106处,获取使用所述第二重加密密钥进行重加密后的所述查询结果数据并发送给所述查询方,以使所述查询方使用所述第一私钥对所述查询结果数据进行解密得到对应的明文数据。
具体地,中间代理方获取第二重加密密钥后对查询结果数据进行重加密,然后发送给查询方。查询方使用所述第一私钥对所述查询结果数据进行解密得到对应的明文数据。(在一些实施例中,也可以由数据方进行重加密,将重加密后的查询结果数据发送给中间代理方。)
在一些实施例中,查询方和数据方各部署一个代理程序或者SDK方式集成到各方的业务系统中,该代理程序或SDK主要负责出口请求数据的加密以及入口响应数据的解密功能。中间代理方则负责代理重加密密钥的管理和加密报文的代理重加密转换等操作。
通过上述方法,应用中心化代理重加密技术,解决了数据查询过程中的明文传输的数据安全问题,避免了中间节点查看和缓存数据,此外,中间代理通过管理多数据方代理重加密密钥,不需要查询方和数据方协调密钥,并且可以实现一次数据查询请求广播到多个数据方并实现数据的整合能力,从而解决了普通加密方案中无法支持的一个查询请求代理多个数据方问题。
本申请一实施例提供另一种基于隐私计算的数据查询方法,参考图3,图3为本申请实施例提供的一种基于隐私计算的数据查询方法应用于查询方的流程图。应当理解的是,该方法还可以包括未示出的附加框和/或可以省略所示出的框,本申请的范围在此方面不受限制。
在步骤201处,生成请求报文,利用第一公钥对所述请求报文进行加密,将加密后的所述请求报文发送给中间代理方。
在步骤202处,获取所述中间代理方发送的由数据方生成的第二公钥,生成第三公钥和对应的第三私钥,然后利用所述第三公钥、第三私钥和第二公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第一公钥对应的第一私钥和坐标点值生成第一重加密密钥。
在步骤203处,将所述第一重加密密钥和第一公钥发送给所述中间代理方,以使所述中间代理方将所述第一公钥发送给所述数据方以及使用所述第一重加密密钥对所述请求报文进行重加密后发送给所述数据方。
在步骤204处,获取所述中间代理方发送的通过使用所述第二公钥进行加密然后使用第二重加密密钥进行重加密的查询结果数据,使用所述第一私钥对所述查询结果数据进行解密得到对应的明文数据。
在一些实施例中,所述第一公钥和对应的所述第一私钥的生成方式包括:基于ECC椭圆曲线的非对称加密算法的国密SM2生成。
在一些实施例中,所述第二重加密密钥的生成方式包括:
通过所述数据方生成第四公钥和对应的第四私钥,然后利用所述第四公钥、第四私钥和第一公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第二私钥和坐标点值生成所述第二重加密密钥。
具体实现方法参考前述方法实施例,此处不再赘述。
本申请一实施例提供另一种基于隐私计算的数据查询方法,参考图4,图4为本申请实施例提供的一种基于隐私计算的数据查询方法应用于数据方的流程图。应当理解的是,该方法还可以包括未示出的附加框和/或可以省略所示出的框,本申请的范围在此方面不受限制。
在步骤301处,获取中间代理方发送的通过使用查询方的第一公钥进行加密然后使用第一重加密密钥进行重加密的请求报文,利用第二私钥对所述请求报文进行解密得到对应的明文数据,并获取对应的查询结果数据。
在步骤302处,获取所述中间代理方发送的所述第一公钥,生成第四公钥和对应的第四私钥,然后利用所述第四公钥、第四私钥和第一公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第二私钥和坐标点值生成所述第二重加密密钥,将所述第二重加密密钥发送给所述中间代理方。
在步骤303处,利用所述第二私钥对应的第二公钥对所述查询结果数据进行加密后发送给所述中间代理方,以使所述中间代理方将使用所述第二重加密密钥进行重加密后的所述查询结果数据发送给所述查询方。
在一些实施例中,所述第二公钥和对应的所述第二私钥的生成方式包括:基于ECC椭圆曲线的非对称加密算法的国密SM2生成;
所述第一重加密密钥的生成方式包括:
通过所述查询方生成第三公钥和对应的第三私钥,然后利用所述第三公钥、第三私钥和第二公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第一私钥和坐标点值生成所述第一重加密密钥。
具体实现方法参考前述方法实施例,此处不再赘述。
图5为本申请实施例提供的一种基于隐私计算的数据查询装置的模块框图。该装置包括:
存储器401;以及与所述存储器401连接的处理器402,所述处理器402被配置成:获取查询方发送的加密后的请求报文,所述请求报文通过所述查询方利用第一公钥进行加密;
获取数据方的第二公钥,将所述第二公钥发送给所述查询方,以获取所述查询方发送的第一重加密密钥,所述第一重加密密钥通过所述查询方利用所述第一公钥对应的第一私钥和所述第二公钥生成;
获取使用所述第一重加密密钥进行重加密后的所述请求报文并发送给所述数据方,以使所述数据方使用所述第二公钥对应的第二私钥对所述请求报文进行解密得到对应的明文数据;
获取所述数据方发送的所述请求报文对应的加密后的查询结果数据,所述查询结果数据通过所述数据方利用所述第二公钥进行加密;
获取所述查询方的第一公钥,将所述第一公钥发送给所述数据方,以获取所述数据方发送的第二重加密密钥,所述第二重加密密钥通过所述数据方利用所述第二私钥和所述第一公钥生成;
获取使用所述第二重加密密钥进行重加密后的所述查询结果数据并发送给所述查询方,以使所述查询方使用所述第一私钥对所述查询结果数据进行解密得到对应的明文数据。
在一些实施例中,所述处理器402还被配置成:所述第一公钥和对应的所述第一私钥,以及所述第二公钥和对应的所述第二私钥的生成方式包括:基于ECC椭圆曲线的非对称加密算法的国密SM2生成。
在一些实施例中,所述处理器402还被配置成:所述第一重加密密钥的生成方式包括:
通过所述查询方生成第三公钥和对应的第三私钥,然后利用所述第三公钥、第三私钥和第二公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第一私钥和坐标点值生成所述第一重加密密钥;
所述第二重加密密钥的生成方式包括:
通过所述数据方生成第四公钥和对应的第四私钥,然后利用所述第四公钥、第四私钥和第一公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第二私钥和坐标点值生成所述第二重加密密钥。
在一些实施例中,所述处理器402被配置成:生成请求报文,利用第一公钥对所述请求报文进行加密,将加密后的所述请求报文发送给中间代理方;
获取所述中间代理方发送的由数据方生成的第二公钥,生成第三公钥和对应的第三私钥,然后利用所述第三公钥、第三私钥和第二公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第一公钥对应的第一私钥和坐标点值生成第一重加密密钥;
将所述第一重加密密钥和第一公钥发送给所述中间代理方,以使所述中间代理方将所述第一公钥发送给所述数据方以及使用所述第一重加密密钥对所述请求报文进行重加密后发送给所述数据方;
获取所述中间代理方发送的通过使用所述第二公钥进行加密然后使用第二重加密密钥进行重加密的查询结果数据,使用所述第一私钥对所述查询结果数据进行解密得到对应的明文数据。
在一些实施例中,所述处理器402还被配置成:所述第一公钥和对应的所述第一私钥的生成方式包括:基于ECC椭圆曲线的非对称加密算法的国密SM2生成。
在一些实施例中,所述处理器402还被配置成:所述第二重加密密钥的生成方式包括:
通过所述数据方生成第四公钥和对应的第四私钥,然后利用所述第四公钥、第四私钥和第一公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第二私钥和坐标点值生成所述第二重加密密钥。
在一些实施例中,所述处理器402被配置成:获取中间代理方发送的通过使用查询方的第一公钥进行加密然后使用第一重加密密钥进行重加密的请求报文,利用第二私钥对所述请求报文进行解密得到对应的明文数据,并获取对应的查询结果数据;
获取所述中间代理方发送的所述第一公钥,生成第四公钥和对应的第四私钥,然后利用所述第四公钥、第四私钥和第一公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第二私钥和坐标点值生成所述第二重加密密钥,将所述第二重加密密钥发送给所述中间代理方;
利用所述第二私钥对应的第二公钥对所述查询结果数据进行加密后发送给所述中间代理方,以使所述中间代理方将使用所述第二重加密密钥进行重加密后的所述查询结果数据发送给所述查询方。
在一些实施例中,所述处理器402还被配置成:所述第二公钥和对应的所述第二私钥的生成方式包括:基于ECC椭圆曲线的非对称加密算法的国密SM2生成;
所述第一重加密密钥的生成方式包括:
通过所述查询方生成第三公钥和对应的第三私钥,然后利用所述第三公钥、第三私钥和第二公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第一私钥和坐标点值生成所述第一重加密密钥。
具体实现方法参考前述方法实施例,此处不再赘述。
本申请可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本申请的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本申请操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本申请的各个方面。
这里参照根据本申请实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本申请的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本申请的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
注意,除非另有直接说明,否则本说明书(包含任何所附权利要求、摘要和附图)中所揭示的所有特征皆可由用于达到相同、等效或类似目的的可替代特征来替换。因此,除非另有明确说明,否则所公开的每一个特征仅是一组等效或类似特征的一个示例。在使用到的情况下,进一步地、较优地、更进一步地和更优地是在前述实施例基础上进行另一实施例阐述的简单起头,该进一步地、较优地、更进一步地或更优地后带的内容与前述实施例的结合作为另一实施例的完整构成。在同一实施例后带的若干个进一步地、较优地、更进一步地或更优地设置之间可任意组合的组成又一实施例。
虽然,上文中已经用一般性说明及具体实施例对本申请作了详尽的描述,但在本申请基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本申请精神的基础上所做的这些修改或改进,均属于本申请要求保护的范围。
Claims (10)
1.一种基于隐私计算的数据查询方法,其特征在于,所述方法应用于中间代理方,包括以下步骤:
获取查询方发送的加密后的请求报文,所述请求报文通过所述查询方利用第一公钥进行加密;
获取数据方的第二公钥,将所述第二公钥发送给所述查询方,以获取所述查询方发送的第一重加密密钥,所述第一重加密密钥通过所述查询方利用所述第一公钥对应的第一私钥和所述第二公钥生成;
获取使用所述第一重加密密钥进行重加密后的所述请求报文并发送给所述数据方,以使所述数据方使用所述第二公钥对应的第二私钥对所述请求报文进行解密得到对应的明文数据;
获取所述数据方发送的所述请求报文对应的加密后的查询结果数据,所述查询结果数据通过所述数据方利用所述第二公钥进行加密;
获取所述查询方的第一公钥,将所述第一公钥发送给所述数据方,以获取所述数据方发送的第二重加密密钥,所述第二重加密密钥通过所述数据方利用所述第二私钥和所述第一公钥生成;
获取使用所述第二重加密密钥进行重加密后的所述查询结果数据并发送给所述查询方,以使所述查询方使用所述第一私钥对所述查询结果数据进行解密得到对应的明文数据。
2.根据权利要求1所述的基于隐私计算的数据查询方法,其特征在于,
所述第一公钥和对应的所述第一私钥,以及所述第二公钥和对应的所述第二私钥的生成方式包括:基于ECC椭圆曲线的非对称加密算法的国密SM2生成。
3.根据权利要求1所述的基于隐私计算的数据查询方法,其特征在于,
所述第一重加密密钥的生成方式包括:
通过所述查询方生成第三公钥和对应的第三私钥,然后利用所述第三公钥、第三私钥和第二公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第一私钥和坐标点值生成所述第一重加密密钥;
所述第二重加密密钥的生成方式包括:
通过所述数据方生成第四公钥和对应的第四私钥,然后利用所述第四公钥、第四私钥和第一公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第二私钥和坐标点值生成所述第二重加密密钥。
4.一种基于隐私计算的数据查询方法,其特征在于,所述方法应用于查询方,包括以下步骤:
生成请求报文,利用第一公钥对所述请求报文进行加密,将加密后的所述请求报文发送给中间代理方;
获取所述中间代理方发送的由数据方生成的第二公钥,生成第三公钥和对应的第三私钥,然后利用所述第三公钥、第三私钥和第二公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第一公钥对应的第一私钥和坐标点值生成第一重加密密钥;
将所述第一重加密密钥和第一公钥发送给所述中间代理方,以使所述中间代理方将所述第一公钥发送给所述数据方以及使用所述第一重加密密钥对所述请求报文进行重加密后发送给所述数据方;
获取所述中间代理方发送的通过使用所述第二公钥进行加密然后使用第二重加密密钥进行重加密的查询结果数据,使用所述第一私钥对所述查询结果数据进行解密得到对应的明文数据。
5.根据权利要求4所述的基于隐私计算的数据查询方法,其特征在于,
所述第一公钥和对应的所述第一私钥的生成方式包括:基于ECC椭圆曲线的非对称加密算法的国密SM2生成。
6.根据权利要求4所述的基于隐私计算的数据查询方法,其特征在于,
所述第二重加密密钥的生成方式包括:
通过所述数据方生成第四公钥和对应的第四私钥,然后利用所述第四公钥、第四私钥和第一公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第二私钥和坐标点值生成所述第二重加密密钥。
7.一种基于隐私计算的数据查询方法,其特征在于,所述方法应用于数据方,包括以下步骤:
获取中间代理方发送的通过使用查询方的第一公钥进行加密然后使用第一重加密密钥进行重加密的请求报文,利用第二私钥对所述请求报文进行解密得到对应的明文数据,并获取对应的查询结果数据;
获取所述中间代理方发送的所述第一公钥,生成第四公钥和对应的第四私钥,然后利用所述第四公钥、第四私钥和第一公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第二私钥和坐标点值生成所述第二重加密密钥,将所述第二重加密密钥发送给所述中间代理方;
利用所述第二私钥对应的第二公钥对所述查询结果数据进行加密后发送给所述中间代理方,以使所述中间代理方将使用所述第二重加密密钥进行重加密后的所述查询结果数据发送给所述查询方。
8.根据权利要求7所述的基于隐私计算的数据查询方法,其特征在于,
所述第二公钥和对应的所述第二私钥的生成方式包括:基于ECC椭圆曲线的非对称加密算法的国密SM2生成;
所述第一重加密密钥的生成方式包括:
通过所述查询方生成第三公钥和对应的第三私钥,然后利用所述第三公钥、第三私钥和第二公钥计算生成哈希到椭圆曲线上的坐标点值,以及利用所述第一私钥和坐标点值生成所述第一重加密密钥。
9.一种基于隐私计算的数据查询装置,其特征在于,包括:
存储器;以及
与所述存储器连接的处理器,所述处理器被配置成:
获取查询方发送的加密后的请求报文,所述请求报文通过所述查询方利用第一公钥进行加密;
获取数据方的第二公钥,将所述第二公钥发送给所述查询方,以获取所述查询方发送的第一重加密密钥,所述第一重加密密钥通过所述查询方利用所述第一公钥对应的第一私钥和所述第二公钥生成;
获取使用所述第一重加密密钥进行重加密后的所述请求报文并发送给所述数据方,以使所述数据方使用所述第二公钥对应的第二私钥对所述请求报文进行解密得到对应的明文数据;
获取所述数据方发送的所述请求报文对应的加密后的查询结果数据,所述查询结果数据通过所述数据方利用所述第二公钥进行加密;
获取所述查询方的第一公钥,将所述第一公钥发送给所述数据方,以获取所述数据方发送的第二重加密密钥,所述第二重加密密钥通过所述数据方利用所述第二私钥和所述第一公钥生成;
获取使用所述第二重加密密钥进行重加密后的所述查询结果数据并发送给所述查询方,以使所述查询方使用所述第一私钥对所述查询结果数据进行解密得到对应的明文数据。
10.一种计算机存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被机器执行时实现如权利要求1至8中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310111742.0A CN115828310B (zh) | 2023-02-14 | 2023-02-14 | 一种基于隐私计算的数据查询方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310111742.0A CN115828310B (zh) | 2023-02-14 | 2023-02-14 | 一种基于隐私计算的数据查询方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115828310A true CN115828310A (zh) | 2023-03-21 |
CN115828310B CN115828310B (zh) | 2023-06-09 |
Family
ID=85521305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310111742.0A Active CN115828310B (zh) | 2023-02-14 | 2023-02-14 | 一种基于隐私计算的数据查询方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115828310B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117614612A (zh) * | 2024-01-24 | 2024-02-27 | 蓝象智联(杭州)科技有限公司 | 一种保护隐私的多方数据统计方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105743888A (zh) * | 2016-01-22 | 2016-07-06 | 河南理工大学 | 一种基于关键字搜索的代理重加密方案 |
US20190042786A1 (en) * | 2017-01-20 | 2019-02-07 | Enveil, Inc. | Query Processing with Adaptive Risk Decisioning |
CN110933026A (zh) * | 2019-10-22 | 2020-03-27 | 东北大学 | 一种轻量级隐私保护的等值查询方法 |
CN111314077A (zh) * | 2020-04-16 | 2020-06-19 | 丝链(常州)控股有限公司 | 一种基于代理重加密的私有数据分发方法 |
CN114139204A (zh) * | 2021-12-03 | 2022-03-04 | 杭州安恒信息技术股份有限公司 | 一种匿踪查询方法、装置及介质 |
CN114528331A (zh) * | 2022-01-12 | 2022-05-24 | 盐城矩阵运营管理有限公司 | 基于区块链的数据查询方法及装置、介质、设备 |
CN114756886A (zh) * | 2022-06-13 | 2022-07-15 | 华控清交信息科技(北京)有限公司 | 一种匿踪查询方法、装置和用于匿踪查询的装置 |
-
2023
- 2023-02-14 CN CN202310111742.0A patent/CN115828310B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105743888A (zh) * | 2016-01-22 | 2016-07-06 | 河南理工大学 | 一种基于关键字搜索的代理重加密方案 |
US20190042786A1 (en) * | 2017-01-20 | 2019-02-07 | Enveil, Inc. | Query Processing with Adaptive Risk Decisioning |
CN110933026A (zh) * | 2019-10-22 | 2020-03-27 | 东北大学 | 一种轻量级隐私保护的等值查询方法 |
CN111314077A (zh) * | 2020-04-16 | 2020-06-19 | 丝链(常州)控股有限公司 | 一种基于代理重加密的私有数据分发方法 |
CN114139204A (zh) * | 2021-12-03 | 2022-03-04 | 杭州安恒信息技术股份有限公司 | 一种匿踪查询方法、装置及介质 |
CN114528331A (zh) * | 2022-01-12 | 2022-05-24 | 盐城矩阵运营管理有限公司 | 基于区块链的数据查询方法及装置、介质、设备 |
CN114756886A (zh) * | 2022-06-13 | 2022-07-15 | 华控清交信息科技(北京)有限公司 | 一种匿踪查询方法、装置和用于匿踪查询的装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117614612A (zh) * | 2024-01-24 | 2024-02-27 | 蓝象智联(杭州)科技有限公司 | 一种保护隐私的多方数据统计方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115828310B (zh) | 2023-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5361920B2 (ja) | ファイルサーバシステム | |
JP6363032B2 (ja) | 鍵付替え方向制御システムおよび鍵付替え方向制御方法 | |
US20140098960A1 (en) | Ciphertext Processing Method, Apparatus, and System | |
CN104735070B (zh) | 一种通用的异构加密云间的数据共享方法 | |
CN110880972A (zh) | 一种基于安全多方计算的区块链密钥管理系统 | |
US9148449B2 (en) | Efficient encryption, escrow and digital signatures | |
WO2019223624A1 (zh) | 密钥分发方法及终端设备 | |
US7894608B2 (en) | Secure approach to send data from one system to another | |
US20180278417A1 (en) | Apparatus and method for generating key, and apparatus and method for encryption | |
CN103607278A (zh) | 一种安全的数据云存储方法 | |
US20180083947A1 (en) | Stateless Server-Based Encryption Associated With A Distribution List | |
JPWO2014010202A1 (ja) | 暗号化統計処理システム、復号システム、鍵生成装置、プロキシ装置、暗号化統計データ生成装置、暗号化統計処理方法、および、暗号化統計処理プログラム | |
Reshma et al. | Pairing-free CP-ABE based cryptography combined with steganography for multimedia applications | |
CN115828310B (zh) | 一种基于隐私计算的数据查询方法、装置及存储介质 | |
CN111953487B (zh) | 一种密钥管理系统 | |
WO2022239129A1 (ja) | 鍵交換システム、機器、鍵交換方法、及びプログラム | |
Mora-Afonso et al. | Strong authentication on smart wireless devices | |
WO2022244079A1 (ja) | 暗号文変換システム、変換鍵生成方法、及び、変換鍵生成プログラム | |
US11843686B2 (en) | Multi-party cryptographic systems and methods | |
CN113507468A (zh) | 一种基于区块链技术的加密方法、解密方法及授权方法 | |
KR20170107818A (ko) | 사용자 단말 및 속성 재암호 기반의 사용자 단말 데이터 공유 방법 | |
CN105791301A (zh) | 一种面向多用户组群信密分离的密钥分发管理方法 | |
US11539679B1 (en) | Systems and methods for providing a quantum-proof key exchange | |
JP6711522B2 (ja) | 通信システム、通信装置、及び通信方法 | |
Alvila | A performance evaluation of post-quantum cryptography in the signal protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |