APP下载

基于同态加密的多方数据安全计算平台的研究与设计

2021-10-23薛文轩孔欣怡魏昭晖

新型工业化 2021年7期
关键词:同态数据源解密

薛文轩,孔欣怡,魏昭晖

(南京工程学院,江苏 南京 211100)

0 引言

基于同态加密的安全多方计算是将多方数据源做加密处理后而进行协同计算技术。用户发起数据计算请求后,服务器向数据源请求获取相应数据,数据源确定并查询到服务器期待的多个数据后,通过加密模块的加密处理,返回相应的多个暗文,服务器使用数据计算端中相应的同态加密计算模型进行业务计算,并利用数据源的数据加密模块对密文结果进行解密处理,最终返回给用户期待的正确数据。与传统的数据计算方法相比,基于同态加密的多方数据计算具有更高的安全性和隐私保护能力,使用方法灵活,方便政府、医疗机构、金融机构在保护用户数据安全的基础之上进行数据的计算、分析和处理,在云计算领域有着广阔的应用前景[1-2]。

1 多方数据安全计算平台的模块设计

本平台通过同态加密相关算法、多方安全计算技术、web网页开发技术,服务器构架等技术的结合,开发出了一款基于同态加密算法及多方计算技术、能够进行涉及多方数据源安全计算的数据计算及模型管理平台[3-4]。

该平台利用同态加密算法的同态性(即加密数据计算结果与解密数据计算结果的一致性)、多方安全计算的理念和模型、基于B/S架构的WEB开发技术、服务器的构架等技术手段,实现了在请求数据来自一方或多方数据源的情形下,数据的同态加密计算及计算模型的管理,满足了用户个人数据的加密输出、与其他各方数据源交互时的同态加密计算、用户期待数据的解密输入等数据处理业务,在保证用户个人隐私

数据绝对安全性的同时,完成与多方数据源之间的交互和计算。

通过平台需求分析和现有方案的研究学习,确定了本平台的三个模块(数据加密端、核心计算端、管理端)。系统模块设计如图1所示:

图1 系统模块设计

2 平台的研究思路与技术路线

2.1 平台研究思路

针对本次项目研究,研究团队积极提取并采纳同态加密和多方计算领域较为优秀的一些解决方案和实操技术,同时努力融入本团队具有创新元素的一些研究成果[5-6]。

首先,团队队员们进行一次全面且充分的研究背景和研究现状的调研,从而产生了两个作用,其一是让团队对于安全多方计算和同态加密这些技术的提出、发展及现有的成果有一个更深刻的认识和理解,对于该项目能有一个更高层次的规划;其二,在调查的过程中,团队发现并整理出了一些研究方法和现有技术,这也为后续的研究和开发过程中遇到的问题,提供了很多可以借鉴的解决思路和方法。

其次,本团队确定了整个平台的设计和实现技术(RSA算法、BGN算法、BGV算法),针对平台的详细设计进行相应的开发和研究,并基于调研成果,对碰到的实际问题进行了适当的调整。

最后,团队将实现的产品部署实施,并根据实际效果及反馈意见,进行了进一步地调整和优化,努力向实用性、安全性、操作性、美观性的最佳结合靠拢。

平台的研究思路如图2所示(总体上分为确定研究目标、具体实现过程、研究结果及反馈三个过程,其中具体实现过程、研究结果及反馈两个模块相互反馈、交替进行)。

图2 研究思路

2.2 技术路线

项目的技术路线将主要将针对同态加密和多方计算。同态加密算法及多方计算的研究开展基于其运作所需的三类函数,进而分为三个部分的研究,即加密解密函数研究、评估函数研究、密钥生成函数研究[7]。

(1)加密解密函数研究。将细分为两个部分的研究和实现——Encrypt()及Decrypt(),Encrypt函数为加密函数,该函数由数据源运行,用Key对用户数据Data进行加密;Decrypt函数为解密函数,该函数亦由数据源运行,用于得到核心计算端处理的结果f(Data)。研究过程中团队结合了现有的较为成熟的同态加密算法方案,如:Paillier、RSA、Affine等,吸取这些方案各自的优势,分析他们的劣势和原理,实现了这些方案的有机结合。

(2)评估函数研究。Evaluate函数为评估函数,该函数由数据源运行,在根据不同计算模型的数据处理方法f下,对密文进行操作,使得结果相当于用户用密钥Key对f(Data)进行加密。

现有的方案有限且都有较为明显的优势和劣势。Fully Homomorp hic Encryp tion——这一方案支持任意给定的f函数,只要这个f函数可以通过算法描述,就可以被实现,但是计算开销极大,效率不理想;Somew hat Homomorphic Encryption——只支持一些特定的f函数,但开销较小,容易实现。

团队深入分析两项目的实现机理,将两个方案优势相结合,实现了支持大多数f函数且效率相对较高的评估函数。

(3)密钥生成函数研究。Key Gen函数由数据源运行,用于产生加密数据Data所用的密钥Key,同时还需要一些公开常数。针对这部分的研究和实施,本团队计划采用现有的技术方案,如:Paillier、RSA、Affine等,将其整合运用。

平台的技术路线如图3所示:

图3 技术路线

3 同态加密模块的研究与设计

同态加密是基于数学难题的计算复杂性理论的密码学技术。对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的。

在本平台中,用户向服务器发起数据请求后,服务器向数据源转发数据请求,数据源确定并查询到用户期待的多个数据后,通过数据源内部的数据加密端的加密处理,返回相应的多个暗文数据(即加密数据,且这些数据间相互独立、不产生联系),服务器调用本项目核心计算端中相应的风控模型,进行同态加密计算,计算结束后,通过数据加密端的解密处理,最终返回给用户期待的正确数据(此时该数据为明文数据)。

以本平台的个人授额评估运算模型为例,个人授额评估运算模型的明文计算公式如下:

Math.max(Math.min(Math.max(X×0.8×Y×15)×10×150000)×50000)

X:个人公积金月缴额

Y:个人社保缴费基数

假设当前用户查询请求所涉及的数据为X和Y,核心计算端中的个人授额评估模型的输入项X,Y需为加密后的密文数据,且X,Y均来自同一个数据源(政府端),则一次用户查询授额评估结果的请求及响应流程如下。

假设某用户(Client)发起个人授额评估结果查询,服务器(Server)从政府数据源(Government)拿到相关的密文数据,并基于密文数据做上述公式的计算。最终,服务器将密文运算结果解密后,返回给用户期待的正确明文计算结果。个人授额评估运算模型如图4所示:(图中[X],[Y],[Z]分别为X,Y,Z加密后的数据,Z为最终的授权评估数据)。

图4 个人授额评估运算模型

4 安全多方计算模型的研究与设计

安全多方计算允许多个数据所有者在互不信任的情况下进行协同计算,输出计算结果,并保证任何一方均无法得到除应得的计算结果之外的其他任何信息。即该技术可以获取数据使用价值,却不泄露原始数据内容[8]。

在本项目中,多方计算主要运用场景为:当用户的请求内容包含了多个数据间的运算,且这些数据独立地分布于多个数据源中(即这些被请求的数据分布于多个政府端的服务器之中)。此时以上同态加密算法模型将不能独立地完成多个数据源之前的协同计算,因而必须引入多方安全计算。

多方计算模型中,多个数据源都需要提供数据给服务器进行计算,此时加密数据的计算结果将会涉及数据源之间如何统一加密及解密方式的问题,其他流程则类似于以上同态加密流程,下面举例说明平台所采用的的2个解决方案:

4.1 安全多方计算模型之方案一

此时,以本平台的个人信用分运算模型为例,个人信用分运算模型的明文计算公式如下:

M:个人贷款月缴额

N:个人贷款缴费基数

此时,唯一不同在于请求的两个数据M、N分别属于的两个不同且独立的数据源(假设这两个数据源分别为政府端A,政府端B),则会出现数据加密及解密方式如何统一的问题。

思路一:政府端A和政府端B传输数据前进行通信沟通,确定好统一的加密解密方式,服务器接收到政府端A、政府端B的数据X,Y,调用风控模型中相关的计算公式进行相应的密文计算,最后返回给数据源中的任意一个(即政府端A和政府端B中两者任意一端)请求解密,最后返回给调用者期待的明文数据。安全多方计算模型方案一如图5所示:(图中[M],[N],[Z]分别为M,N,Z加密后的数据,Z为最终的明文结果)。

图5 安全多方计算模型方案一

4.2 安全多方计算模型之方案二

政府端A和政府端B发送加密数据,同时,必须附带发送数据使用的加密算法对应的密钥(即政府端A必须发送[X]及其密钥,政府端B必须发送[Y]及其密钥),服务器接收了来自政府端A和政府端B对应的数据和密钥后,对收到数据使用对应的密钥进行解密,并调用相应的明文计算模型进行计算,计算出明文数据后直接返回给调用者。安全多方计算模型方案二如图6所示:(图中[X],[Y],分别为X,Y加密后的数据,Z为最终的明文结果)。

图6 安全多方计算模型方案二

5 结语

本文提出设计的基于同态加密的安全多方计算平台,通过同态加密算法与安全多方计算模型,实现了安全性更高、屏蔽隐私数据能力更强的数据计算。用户操作便捷,数据保密效果良好,计算效率相对于传统的安全多方计算方案有了大幅提升。此外,由于该平台研究并引入了BGN、BGV等全同态加密算法,计算业务不再拘泥于纯加法和纯乘法运算,而可进行有限次的混合运算,这将使得该平台在云计算和隐私计算领域拥有更大范围的应用场景。

猜你喜欢

同态数据源解密
炫词解密
解密“一包三改”
关于半模同态的分解*
拉回和推出的若干注记
炫词解密
Web 大数据系统数据源选择*
基于不同网络数据源的期刊评价研究
一种基于LWE的同态加密方案
HES:一种更小公钥的同态加密算法
基于真值发现的冲突数据源质量评价算法