1.本发明涉及数据安全保护技术领域,具体涉及一种同态计算方法及系统、同态加密、计算和服务设备。
背景技术:
2.随着互联网技术的高速发展,不断增加的数据量被传输、存储、计算。其中的很多数据是关键的、加密的、安全的或私有的。特别是私有的数据,还可能受机密性法律和法规的保护。用户一般都通过对数据进行加密保护,免受恶意内部人员、外部攻击者或意外暴露。在传统的加密机制下,数据在传输和存储的环节都可以实现加密保护。但涉及数据使用的环节中,密文数据往往需要解密后才能对数据进行加工,导致明文数据极容易受到攻击。学术和工业界一直为解决这一难题提出各种方案,如同态加密。同态加密(homomorphic encryption, he)是应用非常广的密码学工具,满足密文同态运算性质的加密算法,即数据经过同态加密之后,对密文进行特定的计算,得到的密文计算结果在进行对应的同态解密后的明文等同于对明文数据直接进行相同的计算,实现数据的“可算不可见”。因此被广泛应用在隐私保护的云服务计算、外包计算、联邦学习等场景中,是新兴隐私技术的一个方向。然而参与同态加密过程的往往是给定数域下的大整数,大整数需要进行较多的模幂运算以满足其密码学性质。大整数也可以称作高精度数,一般指其范围已经超出了基本数据类型能够表示的范围的数,同态加密中的大整数的位数能够达到1024比特或者2048比特,而大整数的模幂运算又需要将大整数自乘很多次,从而给计算效率带来挑战。目前,同态计算要求计算的全程需要在密文状态下完成,相比明文计算,密文计算速度下降3-6个量级,需要更大的算力资源支持同态计算。因此,如何提高同态加密下密文数乘运算的效率,以提高同态加密的适用性,是目前亟需解决的问题。
技术实现要素:
3.本技术主要解决的技术问题是如何提高同态计算的计算效率。
4.第一方面,一种实施例中提供一种同态计算系统,包括同态请求设备、同态计算设备和同态服务设备;所述同态计算系统用于对第一数据集和第二数据集进行同态加密计算,以获取第三数据集;所述同态服务设备用于生成第一加密密钥;所述同态请求设备和所述同态服务设备用于共同依据所述第一加密密钥以第一加密方式对所述第一数据集进行加密,以使得所述同态请求设备获取第一加密数据集;所述同态服务设备还用于依据所述第一加密密钥以第一加密方式对所述第二数据集进行加密,并将获取的第二加密数据集发送给所述同态计算设备;所述同态请求设备还用于生成同态私钥和同态公钥,并依据所述同态公钥或同态私钥与所述第一加密数据集获取第一同态加密数据集,并将所述同态公钥和所述第一同态加密数据集发送给所述同态计算设备;
所述同态计算设备用于依据所述同态公钥对第一同态加密数据集和第二加密数据集进行同态计算,以获取第二同态加密数据集,并将获取的所述第二同态加密数据集发送给所述同态请求设备;所述同态请求设备还用于依据所述同态私钥和所述第二同态加密数据集获取所述第三数据集。
5.一实施例中,所述同态请求设备和所述同态服务设备用于共同依据所述第一加密密钥以第一加密方式对所述第一数据集进行加密,以使得所述同态请求设备获取第一加密数据集,包括:所述同态请求设备用于将所述第一数据集以第二加密方式进行加密,以获取中转加密数据集,并将获取的所述中转加密数据集发送给所述同态服务设备;所述同态服务设备用于依据所述第一加密密钥将所述中转加密数据集以所述第一加密方式进行加密,以获取第三加密数据集,并将获取的第三加密数据集发送给所述同态请求设备;所述同态请求设备还用于以第一解密方式对所述第三加密数据集进行解密,以获取第一加密数据集;其中,所述第一解密方式是所述第二加密方式的解密过程,所述第一加密数据集为所述第一数据集以所述第一加密方式加密后获取的数据。
6.一实施例中,所述第二加密方式为盲化计算;所述第一解密方式为去盲化计算。
7.一实施例中,所述同态请求设备用于将所述第一数据集以第二加密方式进行加密,以获取中转加密数据集,包括:所述同态请求设备生成随机参数,并依据所述随机参数对所述第一数据集进行盲化计算,以获取所述中转加密数据集。
8.一实施例中,所述第一加密密钥为对称密钥或非对称密钥。
9.一实施例中,所述第一加密方式为不经意伪随机函数协议。
10.第二方面,一种实施例中提供一种同态请求设备,所述同态请求设备用于将第一数据集以第二加密方式进行加密,以获取中转加密数据集,并将获取的所述中转加密数据集发送给同态服务设备;所述同态请求设备还用于以第一解密方式对第三加密数据集进行解密,以获取第一加密数据集;其中,所述第一解密方式是所述第二加密方式的解密过程,所述第三加密数据集是由所述同态服务设备依据第一加密密钥将所述中转加密数据集以所述第一加密方式进行加密获取;所述同态请求设备还用于生成同态私钥和同态公钥,并依据所述同态公钥或同态私钥和所述第一加密数据集获取第一同态加密数据集,并将所述同态公钥和所述第一同态加密数据集发送给同态计算设备;所述同态请求设备还用于获取第二同态加密数据集;所述第二同态加密数据集为所述同态计算设备依据所述同态公钥对第一同态加密数据集和第二加密数据集进行同态计算获取;其中,所述第二加密数据集为依据第一加密密钥对第二数据集以第一加密方式进行加密获取;所述同态私钥用于所述同态请求设备依据所述第二同态加密数据集获取第三数据集;所述第三数据集为第一数据集和第二数据集进行同态加密计算获取的数据。
11.第三方面,一种实施例中提供一种同态计算设备,所述同态计算设备用于接收第一同态加密数据集、同态公钥和第二加密数据集,并依据所述同态公钥对获取的所述第一同态加密数据集和所述第二加密数据集进行同态计算,并将同态计算获取的第二同态加密数据集发送给同态请求设备;所述第一同态加密数据集和所述同态公钥的获取方法包括:所述同态请求设备和同态服务设备共同依据第一加密密钥以第一加密方式对第一数据集进行加密,以使得所述同态请求设备获取第一加密数据集;所述同态请求设备生成同态私钥和同态公钥,并依据所述同态公钥或同态私钥和所述第一加密数据集获取第一同态加密数据集,并将所述同态公钥和所述第一同态加密数据集发送给所述同态计算设备;所述第二加密数据集的获取方法包括:所述同态服务设备依据所述第一加密密钥以第一加密方式对第二数据集进行加密,并将获取的第二加密数据集发送给所述同态计算设备;其中,所述第一加密密钥由所述同态服务设备生成。
12.第四方面,一种实施例中提供一种同态服务设备,所述同态服务设备用于生成第一加密密钥,并依据所述第一加密密钥将中转加密数据集以第一加密方式进行加密,以获取第三加密数据集,并将获取的第三加密数据集发送给同态请求设备;其中,所述中转加密数据集为所述同态请求设备将第一数据集以第二加密方式进行加密获取;所述同态服务设备还用于依据所述第一加密密钥以第一加密方式对第二数据集进行加密,并将获取的第二加密数据集发送给同态计算设备;其中,所述同态计算设备用于依据同态公钥对第一同态加密数据集和第二加密数据集进行同态计算,以获取第二同态加密数据集,并将获取的所述第二同态加密数据集发送给所述同态请求设备;所述同态公钥为所述同态请求设备生成,所述同态请求设备还用于生成同态私钥;所述第一同态加密数据集的获取方法包括:所述同态请求设备以第一解密方式对所述第三加密数据集进行解密,以获取第一加密数据集;所述同态请求设备再依据同态公钥或同态私钥和第一加密数据集获取第一同态加密数据集。
13.第五方面,一种实施例中提供一种同态计算方法,用于如第一方面所述的同态计算系统,所述同态计算方法包括:所述同态服务设备生成第一加密密钥;所述同态请求设备和所述同态服务设备共同依据所述第一加密密钥以第一加密方式对第一数据集进行加密,以使得所述同态请求设备获取第一加密数据集;所述同态服务设备依据所述第一加密密钥以第一加密方式对第二数据集进行加密,并将获取的第二加密数据集发送给所述同态计算设备;所述同态请求设备生成同态私钥和同态公钥,并依据所述同态公钥或同态私钥和所述第一加密数据集获取第一同态加密数据集,并将所述同态公钥和所述第一同态加密数据集发送给所述同态计算设备;所述同态计算设备依据所述同态公钥对第一同态加密数据集和第二加密数据集
进行同态计算,以获取第二同态加密数据集,并将获取的所述第二同态加密数据集发送给所述同态请求设备;其中,所述同态私钥用于所述同态请求设备依据所述第二同态加密数据集获取所述第三数据集。
14.上述实施例中公开的同态计算系统,由于采用三方协同方式对第一数据集和第二数据集进行同态加密计算,并采用指定同态计算设备执行同态计算,使得同态加密的计算效率得到更高。
附图说明
15.图1为一种实施例中同态计算系统的结构框图;图2为一种实施例中同态计算系统的结构连接示意图;图3为另一种实施例中同态计算方法的流程示意图。
具体实施方式
16.下面通过具体实施方式结合附图对本发明作进一步详细说明。其中不同实施方式中类似元件采用了相关联的类似的元件标号。在以下的实施方式中,很多细节描述是为了使得本技术能被更好的理解。然而,本领域技术人员可以毫不费力的认识到,其中部分特征在不同情况下是可以省略的,或者可以由其他元件、材料、方法所替代。在某些情况下,本技术相关的一些操作并没有在说明书中显示或者描述,这是为了避免本技术的核心部分被过多的描述所淹没,而对于本领域技术人员而言,详细描述这些相关操作并不是必要的,他们根据说明书中的描述以及本领域的一般技术知识即可完整了解相关操作。
17.另外,说明书中所描述的特点、操作或者特征可以以任意适当的方式结合形成各种实施方式。同时,方法描述中的各步骤或者动作也可以按照本领域技术人员所能显而易见的方式进行顺序调换或调整。因此,说明书和附图中的各种顺序只是为了清楚描述某一个实施例,并不意味着是必须的顺序,除非另有说明其中某个顺序是必须遵循的。
18.本文中为部件所编序号本身,例如“第一”、“第二”等,仅用于区分所描述的对象,不具有任何顺序或技术含义。而本技术所说“连接”、“联接”,如无特别说明,均包括直接和间接连接(联接)。
19.在现有技术中,同态加密在应用时一般包括客户端和服务端,服务端包括数据集x,客户端包括数据集y,客户端需要结合数据集x和数据集y做特定计算。由客户端生成同态私钥skb和公钥pkb,使用公钥pkb或私钥skb同态加密数据集y得到enc(y),并把公钥pkb和加密数据集enc(y)发送给服务端。服务端对数据集x和加密数据集enc(y)进行同态计算,得到加密结果并发送回给客户端,客户端用私钥skb解密得到计算结果。在该同态加密的方案中,同态计算主要都在服务端完成,就需要服务端部署巨大的计算资源,其计算成本高昂。而且每一个服务端都需要单独部署,灵活性差。
20.在本技术实施例中公开的同态计算系统,包括同态请求设备、同态计算设备和同态服务设备,由于采用三方协同方式对第一数据集和第二数据集进行同态加密计算,并采用指定的同态计算设备执行同态计算,使得同态加密的计算效率得到更高。
21.实施例一请参考图1,为一种实施例中同态计算系统的结构框图,该同态计算系统用于对第
一数据集和第二数据集进行同态加密计算,以获取第三数据集。同态计算系统包括同态请求设备100、同态计算设备300和同态服务设备200。同态服务设备200用于生成第一加密密钥。同态请求设备100和同态服务设备200用于共同依据第一加密密钥以第一加密方式对第一数据集进行加密,以使得同态请求设备100获取第一加密数据集。同态服务设备200还用于依据第一加密密钥以第一加密方式对第二数据集进行加密,并将获取的第二加密数据集发送给同态计算设备300。同态请求设备100还用于生成同态私钥和同态公钥,并依据同态公钥或同态私钥和第一加密数据集获取第一同态加密数据集,并将同态公钥和第一同态加密数据集发送给同态计算设备300。同态计算设备300用于依据同态公钥对第一同态加密数据集和第二加密数据集进行同态计算,以获取第二同态加密数据集,并将获取的第二同态加密数据集发送给同态请求设备100。其中,同态私钥用于同态请求设备100依据第二同态加密数据集获取第三数据集。
22.请参考图2,为一种实施例中同态计算系统的结构连接示意图,一实施例中,同态请求设备100和同态服务设备200共同依据第一加密密钥以第一加密方式对第一数据集进行加密,以使得同态请求设备100获取第一加密数据集的方法包括:同态请求设备100将第一数据集以第二加密方式进行加密,以获取中转加密数据集,并将获取的中转加密数据集发送给同态服务设备200。
23.同态服务设备200用于依据第一加密密钥将中转加密数据集以第一加密方式进行加密,以获取第三加密数据集,并将获取的第三加密数据集发送给同态请求设备100。同态请求设备100还用于以第一解密方式对第三加密数据集进行解密,以获取第一加密数据集。其中,第一解密方式是第二加密方式的解密过程,第一加密数据集为第一数据集以第一加密方式加密后获取的数据。
24.一实施例中,第二加密方式为盲化计算。一实施例中,第一解密方式为去盲化计算。一实施例中,同态请求设备100还用于将第一数据集以第二加密方式进行加密,以获取中转加密数据集,包括:同态请求设备100生成随机参数,并依据随机参数对第一数据集进行盲化计算,以获取中转加密数据集。
25.同态请求设备100依据随机参数对第三加密数据集进行去盲化计算,以获取第一加密数据集。
26.一实施例中,第一加密密钥为对称密钥或非对称密钥。一实施例中,第一加密方式为不经意伪随机函数协议。
27.一实施例中,同态服务设备200获取第二加密数据集的方法包括:同态服务设备200生成第一对称密钥,并依据第一对称密钥和一个预设的伪随机函数将第二数据集转码成第二加密数据集。
28.一实施例中,同态服务设备200获取第三加密数据集的方法包括:同态服务设备200依据第一对称密钥和伪随机函数将中转加密数据集转码成第三加密数据集。
29.本技术一实施例中还公开了一种同态请求设备,该同态请求设备用于将第一数据集以第二加密方式进行加密,以获取中转加密数据集,并将获取的中转加密数据集发送给同态服务设备。同态请求设备还用于以第一解密方式对第三加密数据集进行解密,以获取
第一加密数据集;其中,第一解密方式是第二加密方式的解密过程,第三加密数据集是由同态服务设备依据第一加密密钥将中转加密数据集以第一加密方式进行加密获取。同态请求设备还用于生成同态私钥和同态公钥,并依据同态公钥或同态私钥和第一加密数据集获取第一同态加密数据集,并将同态公钥和第一同态加密数据集发送给同态计算设备。同态请求设备还用于获取第二同态加密数据集,该第二同态加密数据集为同态计算设备依据同态公钥对第一同态加密数据集和第二加密数据集进行同态计算获取。其中,第二加密数据集为依据第一加密密钥对第二数据集以第一加密方式进行加密获取,同态私钥用于同态请求设备依据第二同态加密数据集获取第三数据集。
30.本技术一实施例中还公开了一种同态计算设备,该同态计算设备用于接收第一同态加密数据集、同态公钥和第二加密数据集,并依据同态公钥对获取的第一同态加密数据集和第二加密数据集进行同态计算,并将同态计算获取的第二同态加密数据集发送给同态请求设备。其中,第一同态加密数据集和同态公钥的获取方法包括:同态请求设备和同态服务设备共同依据第一加密密钥以第一加密方式对第一数据集进行加密,以使得同态请求设备获取第一加密数据集。同态请求设备生成同态私钥和同态公钥,并依据同态公钥或同态私钥和第一加密数据集获取第一同态加密数据集,并将同态公钥和第一同态加密数据集发送给同态计算设备。
31.第二加密数据集的获取方法包括:同态服务设备依据第一加密密钥以第一加密方式对第二数据集进行加密,并将获取的第二加密数据集发送给同态计算设备。其中,第一加密密钥由同态服务设备生成。
32.本技术一实施例中还公开了一种同态服务设备,该同态服务设备用于生成第一加密密钥,并依据第一加密密钥将中转加密数据集以第一加密方式进行加密,以获取第三加密数据集,并将获取的第三加密数据集发送给同态请求设备。其中,中转加密数据集为同态请求设备将第一数据集以第二加密方式进行加密获取。同态服务设备还用于依据第一加密密钥以第一加密方式对第二数据集进行加密,并将获取的第二加密数据集发送给同态计算设备。其中,同态计算设备用于依据同态公钥对第一同态加密数据集和第二加密数据集进行同态计算,以获取第二同态加密数据集,并将获取的第二同态加密数据集发送给同态请求设备,同态公钥为同态请求设备生成。
33.第一同态加密数据集的获取方法包括:同态请求设备以第一解密方式对第三加密数据集进行解密,以获取第一加密数据集;所述同态请求设备再依据同态公钥或同态私钥和第一加密数据集获取第一同态加密数据集。
34.在本技术实施例中公开了一种同态计算系统,包括同态请求设备、同态计算设备和同态服务设备。首先同态服务设备生成第一加密密钥,同态请求设备和同态服务设备依据第一密钥对第一数据集以第一加密方式进行加密获取第一加密数据集,同态服务设备依据第一密钥对第二数据集以第一加密方式进行加密获取第二加密数据集;然后,同态请求设备生成同态私钥和同态公钥,再由同态请求设备依据同态公钥或同态私钥和第一加密数据集以获取第一同态加密数据集;最后由同态计算设备依据进行。由于采用三方协同方式进行同态加密计算,并采用指定的同态计算设备执行同态计算,使得同态计算效率更高。
35.实施例二请参考图3,为一种实施例中同态计算方法的流程示意图,该同态计算方法用于如实施例一中所述的同态计算系统,包括:步骤1.获取第一加密数据集。
36.同态服务设备生成第一加密密钥。同态请求设备和同态服务设备共同依据第一加密密钥以第一加密方式对第一数据集进行加密,以使得同态请求设备获取第一加密数据集。
37.步骤2.获取第二加密数据集。
38.同态服务设备依据第一加密密钥以第一加密方式对第二数据集进行加密,并将获取的第二加密数据集发送给同态计算设备。
39.步骤3.获取同态公钥、同态私钥和第一同态加密数据集。
40.同态请求设备生成同态私钥和同态公钥,并依据同态公钥或同态私钥和第一加密数据集获取第一同态加密数据集,并将同态公钥和第一同态加密数据集发送给同态计算设备。
41.步骤4.获取第二同态加密数据集。
42.同态计算设备依据同态公钥对第一同态加密数据集和第二加密数据集进行同态计算,以获取第二同态加密数据集,并将获取的第二同态加密数据集发送给同态请求设备。其中,同态私钥用于同态请求设备依据第二同态加密数据集获取第三数据集。
43.本技术公开的同态计算方法实现了三方在互相无法得到任意其它一方的数据明文信息情况下,同态服务设备(服务端)完成对同态请求设备(客户端)发出数据进行转码,同态计算端(计算端)完成对同态请求设备(客户端)和同态服务设备(服务端)两方数据的同态计算,同态计算的结果只发给同态请求设备(客户端),从而实现同态请求设备(客户端)和同态服务设备(服务端)两方数据的同态外包计算。该同态计算方法与现有技术相比具有:1).实现三方的协同计算架构,将算力要求高的部分委托外包到第三方完成,降低服务端的部署成本;2).执行同态计算的第三方可同时为多个客户端和服务端服务,实现算力资源的最大化利用。
44.下面以一具体实施例描述本技术公开的同态计算方法,具体步骤包括:(1)服务端准备服务数据集x;(2)服务端生成对称密钥ka,并使用密钥ka和伪随机函数f()将数据集x转码成数据集x';(3)服务端把数据集x'传输给计算端,密钥ka始终保存在服务端;(4)客户端准备请求数据集y的客户端;(5)客户端生成随机数r,对数据集y进行盲化计算得到盲化数据集yr;(6)客户端把盲化数据集yr发送给服务端,请求服务端的伪随机函数f()服务,得到数据集yr';(7)服务端数据集yr'发送给客户端;(8)客户端对数据集yr'进行去盲化计算,得到数据集y';
(9)客户端生成同态私钥skb和公钥pkb,并用公钥pkb或私钥skb同态加密数据集y'得到加密数据集enc(y');(10)客户端把公钥pkb和加密数据集enc(y')发送给计算端,私钥skb始终保存在客户端;(11)计算端对数据集x'和加密数据集enc(y')进行同态计算,得到加密结果;(12)计算端把加密结果发送回给客户端;(13)客户端用私钥skb解密加密结果得到明文结果。
45.上述实施例中的同态计算方法是基于伪随机函数和同态加密实现的三方协同计算架构、三方协同计算架构中服务端通过伪随意函数转码的步骤和三方协同计算架构中客户端通过不经意(如盲化-去盲化)方法请求服务端伪随机函数的步骤。一实施例中,客户端请求伪随机函数的方法包括但不限于diffie
–
hellman(dh)协议,不经意传输协议等。一实施例中,三方协同计算架构中服务端将转码后数据传输到计算端的步骤。一实施例中,三方协同计算架构中客户端通过同态加密把转码后数据加密转输到计算端的步骤。一实施例中,三方协同计算架构中计算端执行同态计算及相关预处理的步骤。
46.本领域技术人员可以理解,上述实施方式中各种方法的全部或部分功能可以通过硬件的方式实现,也可以通过计算机程序的方式实现。当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器、随机存储器、磁盘、光盘、硬盘等,通过计算机执行该程序以实现上述功能。例如,将程序存储在设备的存储器中,当通过处理器执行存储器中程序,即可实现上述全部或部分功能。另外,当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序也可以存储在服务器、另一计算机、磁盘、光盘、闪存盘或移动硬盘等存储介质中,通过下载或复制保存到本地设备的存储器中,或对本地设备的系统进行版本更新,当通过处理器执行存储器中的程序时,即可实现上述实施方式中全部或部分功能。
47.以上应用了具体个例对本发明进行阐述,只是用于帮助理解本发明,并不用以限制本发明。对于本发明所属技术领域的技术人员,依据本发明的思想,还可以做出若干简单推演、变形或替换。
技术特征:
1.一种同态计算系统,其特征在于,包括同态请求设备、同态计算设备和同态服务设备;所述同态计算系统用于对第一数据集和第二数据集进行同态加密计算,以获取第三数据集;所述同态服务设备用于生成第一加密密钥;所述同态请求设备和所述同态服务设备用于共同依据所述第一加密密钥以第一加密方式对所述第一数据集进行加密,以使得所述同态请求设备获取第一加密数据集;所述同态服务设备还用于依据所述第一加密密钥以第一加密方式对所述第二数据集进行加密,并将获取的第二加密数据集发送给所述同态计算设备;所述同态请求设备还用于生成同态私钥和同态公钥,并依据所述同态公钥或同态私钥与所述第一加密数据集获取第一同态加密数据集,并将所述同态公钥和所述第一同态加密数据集发送给所述同态计算设备;所述同态计算设备用于依据所述同态公钥对第一同态加密数据集和第二加密数据集进行同态计算,以获取第二同态加密数据集,并将获取的所述第二同态加密数据集发送给所述同态请求设备;所述同态请求设备还用于依据所述同态私钥和所述第二同态加密数据集获取所述第三数据集。2.如权利要求1所述的同态计算系统,其特征在于,所述同态请求设备和所述同态服务设备用于共同依据所述第一加密密钥以第一加密方式对所述第一数据集进行加密,以使得所述同态请求设备获取第一加密数据集,包括:所述同态请求设备用于将所述第一数据集以第二加密方式进行加密,以获取中转加密数据集,并将获取的所述中转加密数据集发送给所述同态服务设备;所述同态服务设备用于依据所述第一加密密钥将所述中转加密数据集以所述第一加密方式进行加密,以获取第三加密数据集,并将获取的第三加密数据集发送给所述同态请求设备;所述同态请求设备还用于以第一解密方式对所述第三加密数据集进行解密,以获取第一加密数据集;其中,所述第一解密方式是所述第二加密方式的解密过程,所述第一加密数据集为所述第一数据集以所述第一加密方式加密后获取的数据。3.如权利要求2所述的同态计算系统,其特征在于,所述第二加密方式为盲化计算;所述第一解密方式为去盲化计算。4.如权利要求3所述的同态计算系统,其特征在于,所述同态请求设备用于将所述第一数据集以第二加密方式进行加密,以获取中转加密数据集,包括:所述同态请求设备生成随机参数,并依据所述随机参数对所述第一数据集进行盲化计算,以获取所述中转加密数据集。5.如权利要求1所述的同态计算系统,其特征在于,所述第一加密密钥为对称密钥或非对称密钥。6.如权利要求1所述的同态计算系统,其特征在于,所述第一加密方式为不经意伪随机函数协议。7.一种同态请求设备,其特征在于,所述同态请求设备用于将第一数据集以第二加密方式进行加密,以获取中转加密数据集,并将获取的所述中转加密数据集发送给同态服务
设备;所述同态请求设备还用于以第一解密方式对第三加密数据集进行解密,以获取第一加密数据集;其中,所述第一解密方式是所述第二加密方式的解密过程,所述第三加密数据集是由所述同态服务设备依据第一加密密钥将所述中转加密数据集以所述第一加密方式进行加密获取;所述同态请求设备还用于生成同态私钥和同态公钥,并依据所述同态公钥或同态私钥和所述第一加密数据集获取第一同态加密数据集,并将所述同态公钥和所述第一同态加密数据集发送给同态计算设备;所述同态请求设备还用于获取第二同态加密数据集;所述第二同态加密数据集为所述同态计算设备依据所述同态公钥对第一同态加密数据集和第二加密数据集进行同态计算获取;其中,所述第二加密数据集为依据第一加密密钥对第二数据集以第一加密方式进行加密获取;所述同态私钥用于所述同态请求设备依据所述第二同态加密数据集获取第三数据集;所述第三数据集为第一数据集和第二数据集进行同态加密计算获取的数据。8.一种同态计算设备,其特征在于,所述同态计算设备用于接收第一同态加密数据集、同态公钥和第二加密数据集,并依据所述同态公钥对获取的所述第一同态加密数据集和所述第二加密数据集进行同态计算,并将同态计算获取的第二同态加密数据集发送给同态请求设备;所述第一同态加密数据集和所述同态公钥的获取方法包括:所述同态请求设备和同态服务设备共同依据第一加密密钥以第一加密方式对第一数据集进行加密,以使得所述同态请求设备获取第一加密数据集;所述同态请求设备生成同态私钥和同态公钥,并依据所述同态公钥或同态私钥和所述第一加密数据集获取第一同态加密数据集,并将所述同态公钥和所述第一同态加密数据集发送给所述同态计算设备;所述第二加密数据集的获取方法包括:所述同态服务设备依据所述第一加密密钥以第一加密方式对第二数据集进行加密,并将获取的第二加密数据集发送给所述同态计算设备;其中,所述第一加密密钥由所述同态服务设备生成。9.一种同态服务设备,其特征在于,所述同态服务设备用于生成第一加密密钥,并依据所述第一加密密钥将中转加密数据集以第一加密方式进行加密,以获取第三加密数据集,并将获取的第三加密数据集发送给同态请求设备;其中,所述中转加密数据集为所述同态请求设备将第一数据集以第二加密方式进行加密获取;所述同态服务设备还用于依据所述第一加密密钥以第一加密方式对第二数据集进行加密,并将获取的第二加密数据集发送给同态计算设备;其中,所述同态计算设备用于依据同态公钥对第一同态加密数据集和第二加密数据集进行同态计算,以获取第二同态加密数据集,并将获取的所述第二同态加密数据集发送给所述同态请求设备;所述同态公钥为所述同态请求设备生成,所述同态请求设备还用于生成同态私钥;所述第一同态加密数据集的获取方法包括:所述同态请求设备以第一解密方式对所述第三加密数据集进行解密,以获取第一加密
数据集;所述同态请求设备再依据同态公钥或同态私钥和第一加密数据集获取第一同态加密数据集。10.一种同态计算方法,其特征在于,用于如权利要求1至6中任一项所述的同态计算系统,所述同态计算方法包括:所述同态服务设备生成第一加密密钥;所述同态请求设备和所述同态服务设备共同依据所述第一加密密钥以第一加密方式对第一数据集进行加密,以使得所述同态请求设备获取第一加密数据集;所述同态服务设备依据所述第一加密密钥以第一加密方式对第二数据集进行加密,并将获取的第二加密数据集发送给所述同态计算设备;所述同态请求设备生成同态私钥和同态公钥,并依据所述同态公钥或同态私钥和所述第一加密数据集获取第一同态加密数据集,并将所述同态公钥和所述第一同态加密数据集发送给所述同态计算设备;所述同态计算设备依据所述同态公钥对第一同态加密数据集和第二加密数据集进行同态计算,以获取第二同态加密数据集,并将获取的所述第二同态加密数据集发送给所述同态请求设备;其中,所述同态私钥用于所述同态请求设备依据所述第二同态加密数据集获取所述第三数据集。
技术总结
本申请公开了一种同态计算方法及系统、同态请求、计算和服务设备,首先同态服务设备生成第一加密密钥,同态请求设备和同态服务设备共同依据第一密钥对第一数据集以第一加密方式获取第一加密数据集,同态服务设备依据第一密钥对第二数据集以第一加密方式获取第二加密数据集;再由同态请求设备生成同态私钥和公钥,依据同态公钥或同态私钥与第一加密数据集以获取第一同态加密数据集;同态计算设备依据同态公钥对第一同态加密数据集和第二加密数据集进行同态计算获取第二同态加密数据集。最后同态请求设备依据同态私钥和第二同态加密数据集获取第三数据集。由于采用三方协同方式,并采用指定的同态计算设备执行同态计算,使得同态计算效率更高。使得同态计算效率更高。使得同态计算效率更高。
技术研发人员:黄泽强 陈思 樊俊锋
受保护的技术使用者:深圳市纽创信安科技开发有限公司
技术研发日:2022.01.30
技术公布日:2022/5/25
转载请注明原文地址:https://tc.8miu.com/read-23146.html