基于同态加密的数据处理方法、系统及相关设备与流程

文档序号:34229780发布日期:2023-05-24 12:16阅读:52来源:国知局
基于同态加密的数据处理方法、系统及相关设备与流程

本发明涉及数据加密处理,尤其涉及的是一种基于同态加密的数据处理方法、系统及相关设备。


背景技术:

1、随着科学技术的发展,对于数据的处理越来越受到重视,同时,对于数据处理过程中的安全性要求也越来越高。为了提高数据处理效率或者降低对数据持有端的算力要求,可以将数据持有端的数据上传到云端服务器进行对应的数据处理。

2、现有技术中,为了提高数据处理过程中的安全性,对涉及用户隐私的数据进行保护,通常在数据持有端对数据进行加密,然后将加密后的数据传输给云端服务器,云端服务器对加密后的数据进行解密获得明文数据,然后对明文数据进行对应的处理(例如排序)后将处理结果加密后返回给数据持有端。现有技术的问题在于,仅对数据传输的过程进行了加密保护,在云端服务器中进行数据排序等处理时仍然使用的是明文数据,即云端服务器可以获取真实的用户数据,不利于提高数据的安全性,不利于对数据进行隐私保护。

3、因此,现有技术还有待改进和发展。


技术实现思路

1、本发明的主要目的在于提供一种基于同态加密的数据处理方法、系统及相关设备,旨在解决现有技术中进行数据处理时在数据持有端对数据进行加密,然后将加密后的数据传输给云端服务器,云端服务器对加密后的数据进行解密获得明文数据,然后对明文数据进行对应的处理的方案不利于提高数据的安全性,不利于对数据进行隐私保护的问题。

2、为了实现上述目的,本发明第一方面提供一种基于同态加密的数据处理方法,其中,上述基于同态加密的数据处理方法包括:

3、通过数据持有端对待排序数据进行同态加密获得加密数据;

4、通过上述数据持有端向服务器发送上述加密数据,以触发上述服务器根据上述加密数据进行排序处理获得排序加密结果并向上述数据持有端返回上述排序加密结果;

5、通过上述数据持有端接收的上述排序加密结果获取上述待排序数据对应的目标排序结果。

6、可选的,上述通过数据持有端对待排序数据进行同态加密获得加密数据,包括:

7、通过上述数据持有端采集获取待排序数据,其中,上述待排序数据包括多个待排序数值;

8、根据上述待排序数值的数据位宽获取上述待排序数据对应的分解基和分层处理层数,其中,上述分解基是对各上述待排序数值进行分解时的数据进制;

9、根据上述分解基和上述分层处理层数分别对各上述待排序数值进行分解,获取各上述待排序数值对应的分解向量;

10、根据上述分解向量,通过同态加密获得上述加密数据。

11、可选的,上述加密数据包括行重复加密矩阵和列重复加密矩阵,上述根据上述分解向量,通过同态加密获得上述加密数据,包括:

12、根据上述分解向量构建上述待排序数据对应的行重复编码矩阵和列重复编码矩阵,其中,上述行重复编码矩阵由目标数目个相同的行构成,上述行重复编码矩阵的一行中的元素分别为各上述分解向量,上述目标数目为上述分解向量的个数,上述列重复编码矩阵由目标数目个相同的列构成,上述列重复编码矩阵的一列中的元素分别为各上述分解向量;

13、通过上述数据持有端对上述行重复编码矩阵进行同态加密获得上述行重复加密矩阵,对上述列重复加密矩阵进行同态加密获得上述列重复加密矩阵。

14、可选的,上述通过上述数据持有端对上述行重复编码矩阵进行同态加密获得上述行重复加密矩阵,对上述列重复加密矩阵进行同态加密获得上述列重复加密矩阵,包括:

15、通过上述数据持有端生成公钥、私钥和评估密钥,其中,上述私钥用于供上述数据持有端进行数据解密,上述评估密钥用于供上述服务器对上述加密数据进行数据计算;

16、通过上述数据持有端根据上述公钥对上述行重复编码矩阵进行同态加密获得上述行重复加密矩阵;

17、通过上述数据持有端根据上述公钥对上述列重复加密矩阵进行同态加密获得上述列重复加密矩阵。

18、可选的,上述通过上述数据持有端向服务器发送上述加密数据,以触发上述服务器根据上述加密数据进行排序处理获得排序加密结果并向上述数据持有端返回上述排序加密结果,包括:

19、通过上述数据持有端向上述服务器发送上述评估密钥、上述行重复加密矩阵和上述列重复加密矩阵,以触发上述服务器根据上述评估密钥、上述行重复加密矩阵和上述列重复加密矩阵进行排序处理获得排序加密结果并向上述数据持有端返回上述排序加密结果。

20、可选的,上述服务器根据如下步骤进行排序处理:

21、根据上述评估密钥计算上述行重复加密矩阵和上述列重复加密矩阵对应的差值矩阵;

22、根据上述差值矩阵进行内插多项式获得比较矩阵;

23、根据上述比较矩阵进行多个分解层上的旋转倍增运算获得上述待排序数据对应的排序矩阵,并将上述排序矩阵作为上述排序加密结果。

24、可选的,上述通过上述数据持有端接收的上述排序加密结果获取上述待排序数据对应的目标排序结果,包括:

25、通过上述数据持有端根据上述私钥对上述排序加密结果进行解密并获取各上述待排序数值对应的汉明重量;

26、通过上述数据持有端根据各上述汉明重量确定每个排序位置对应的待排序数值,获得上述目标排序结果。

27、本发明第二方面提供一种基于同态加密的数据处理系统,其中,上述基于同态加密的数据处理系统包括:

28、数据加密模块,用于通过数据持有端对待排序数据进行同态加密获得加密数据;

29、加密数据处理模块,用于通过上述数据持有端向服务器发送上述加密数据,以触发上述服务器根据上述加密数据进行排序处理获得排序加密结果并向上述数据持有端返回上述排序加密结果;

30、数据排序模块,用于通过上述数据持有端接收的上述排序加密结果获取上述待排序数据对应的目标排序结果。

31、本发明第三方面提供一种智能终端,上述智能终端包括存储器、处理器以及存储在上述存储器上并可在上述处理器上运行的基于同态加密的数据处理程序,上述基于同态加密的数据处理程序被上述处理器执行时实现上述任意一种基于同态加密的数据处理方法的步骤。

32、本发明第四方面提供一种计算机可读存储介质,上述计算机可读存储介质上存储有基于同态加密的数据处理程序,上述基于同态加密的数据处理程序被处理器执行时实现上述任意一种基于同态加密的数据处理方法的步骤。

33、由上可见,本发明方案中,通过数据持有端对待排序数据进行同态加密获得加密数据;通过上述数据持有端向服务器发送上述加密数据,以触发上述服务器根据上述加密数据进行排序处理获得排序加密结果并向上述数据持有端返回上述排序加密结果;通过上述数据持有端接收的上述排序加密结果获取上述待排序数据对应的目标排序结果。

34、与现有技术中相比,本发明方案中,通过数据持有端对待排序数据进行同态加密获得加密数据并发送到服务器之后,在服务器中并不会进行解密,而是直接对加密数据进行排序处理获得排序加密结果。因为数据持有端对待排序数据进行的是同态加密,所以服务器对加密数据进行的排序同样可以映射到明文数据(即待排序数据)上,实现对应的排序。同时,在服务器中进行数据处理时,使用的都是加密后的数据,即服务器并不会获取对应的明文数据,即使服务器被入侵也不会造成明文数据的泄露,有利于提高数据处理过程中数据的安全性,且有利于对数据进行隐私保护。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1