CN111464282B - 基于同态加密的数据处理方法和装置 - Google Patents
基于同态加密的数据处理方法和装置 Download PDFInfo
- Publication number
- CN111464282B CN111464282B CN201910046844.2A CN201910046844A CN111464282B CN 111464282 B CN111464282 B CN 111464282B CN 201910046844 A CN201910046844 A CN 201910046844A CN 111464282 B CN111464282 B CN 111464282B
- Authority
- CN
- China
- Prior art keywords
- data processing
- data
- homomorphic encryption
- ciphertext
- encryption algorithm
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 35
- 238000012545 processing Methods 0.000 claims abstract description 185
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 80
- 230000006870 function Effects 0.000 claims abstract description 30
- 238000000034 method Methods 0.000 claims abstract description 30
- 230000004044 response Effects 0.000 claims abstract description 21
- 230000002776 aggregation Effects 0.000 claims description 17
- 238000004220 aggregation Methods 0.000 claims description 17
- 230000001186 cumulative effect Effects 0.000 claims description 9
- 238000001914 filtration Methods 0.000 claims description 9
- -1 (i)-F Chemical class 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 6
- 238000012935 Averaging Methods 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 241000153282 Theope Species 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 241001441724 Tetraodontidae Species 0.000 description 3
- 238000003491 array Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 235000018087 Spondias lutea Nutrition 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提出一种基于同态加密的数据处理方法和装置,其中,方法包括:从客户端获取数据的处理请求;其中,处理请求用于请求对存储的数据项执行数据处理操作;根据执行数据处理操作所需的运算,对运算对应的数据项的密文执行数据处理操作,得到加密结果;其中,密文,是客户端采用数据处理操作对应的同态加密算法,对数据项进行加密得到;生成并发送携带加密结果的处理响应。该方法能够实现在服务器侧提供加密数据的查询和分析等处理功能,并且,由于密文为客户端加密处理后得到的,服务器无法查看用户的隐私数据,可以避免用户的隐私数据被泄露。
Description
技术领域
本申请涉及信息处理技术领域,尤其涉及一种基于同态加密的数据处理方法和装置。
背景技术
目前,企业可以收集大量数据,并利用服务器资源对上述数据进行分析,但是,对于一些敏感数据,若未对其进行加密处理,当服务器出现安全漏洞时,则可能导致企业的敏感数据泄漏,并且,服务器可以获取用户的隐私数据,当用户的隐私数据加密存储在服务器后,服务器无法实现提供对加密的隐私数据的分析和查询功能。
现有技术中,为避免上述隐私数据或者敏感数据被泄露,服务器可以主动对上传的数据进行加密处理,并且,加密密钥由服务器进行管理,在数据处理时,大数据分析工具可以对数据进行解密并计算,之后再进行加密处理。
然而,这种由服务器管理加密密钥的方式,虽然在服务器被攻击时,可以降低用户的隐私数据被泄露的风险,但是,服务器仍可以看到用户的相关数据,从而无法保证用户的隐私数据不被泄露。
发明内容
本申请提出一种基于同态加密的数据处理方法和装置,以实现在服务器侧提供加密数据的查询和处理功能,解决了大数据场景下如何实现对加密数据进行计算的难题,可以提升用户对服务器的信赖度。并且,由于密文为客户端加密处理后得到的,服务器无法查看用户的隐私数据,可以避免用户的隐私数据被泄露。此外,由于密文为加密的,即使服务器被攻破,也无法泄露用户的隐私数据,可以进一步保证服务器中存储的数据的安全性,用于解决现有技术中服务器无法保证用户的隐私数据不被泄露的技术问题。
本申请第一方面实施例提出了一种基于同态加密的数据处理方法,包括:
从客户端获取数据的处理请求;其中,所述处理请求用于请求对存储的数据项执行数据处理操作;
根据执行所述数据处理操作所需的运算,对所述运算对应的所述数据项的密文执行所述数据处理操作,得到加密结果;其中,所述密文,是所述客户端采用所述数据处理操作对应的同态加密算法,对所述数据项进行加密得到;
生成并发送携带所述加密结果的处理响应。
本申请实施例的基于同态加密的数据处理方法,通过从客户端获取数据的处理请求,其中,处理请求用于请求对存储的数据项执行数据处理操作,之后,根据执行数据处理操作所需的运算,对运算对应的数据项的密文执行数据处理操作,得到加密结果,其中,密文是客户端采用数据处理操作对应的同态加密算法对数据项进行加密得到,最后,生成并发送携带加密结果的处理响应。由此,可以实现在服务器侧提供加密数据的查询和分析等处理功能,解决了大数据场景下如何实现对加密数据进行计算的难题,可以提升用户对服务器的信赖度。并且,由于密文为客户端加密处理后得到的,服务器无法查看用户的隐私数据,可以避免用户的隐私数据被泄露。此外,由于密文为加密的,即使服务器被攻破,也无法泄露用户的隐私数据,可以进一步保证服务器中存储的数据的安全性。
本申请第二方面实施例提出了一种基于同态加密的数据处理装置,包括:
获取模块,用于从客户端获取数据的处理请求;其中,所述处理请求用于请求对存储的数据项项执行数据处理操作;
处理模块,用于根据执行所述数据处理操作所需的运算,对所述运算对应的所述数据项的密文执行所述数据处理操作,得到加密结果;其中,所述密文,是所述客户端采用所述数据处理操作对应的同态加密算法,对所述数据项进行加密得到;
响应模块,用于生成并发送携带所述加密结果的处理响应。
本申请实施例的基于同态加密的数据处理装置,通过从客户端获取数据的处理请求,其中,处理请求用于请求对存储的数据项执行数据处理操作,之后,根据执行数据处理操作所需的运算,对运算对应的数据项的密文执行数据处理操作,得到加密结果,其中,密文是客户端采用数据处理操作对应的同态加密算法对数据项进行加密得到,最后,生成并发送携带加密结果的处理响应。由此,可以实现在服务器侧提供加密数据的查询和分析等处理功能,解决了大数据场景下如何实现对加密数据进行计算的难题,可以提升用户对服务器的信赖度。并且,由于密文为客户端加密处理后得到的,服务器无法查看用户的隐私数据,可以避免用户的隐私数据被泄露。此外,由于密文为加密的,即使服务器被攻破,也无法泄露用户的隐私数据,可以进一步保证服务器中存储的数据的安全性。
本申请第三方面实施例提出了一种计算机设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如本申请前述实施例提出的基于同态加密的数据处理方法。
本申请第四方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请前述实施例提出的基于同态加密的数据处理方法。
本申请第五方面实施例提出了一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,执行如本申请前述实施例提出的基于同态加密的数据处理方法。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例一所提供的基于同态加密的数据处理方法的流程示意图;
图2为本申请实施例的数据处理流程示意图;
图3为本申请实施例二所提供的基于同态加密的数据处理方法的流程示意图;
图4为本申请实施例三所提供的基于同态加密的数据处理方法的流程示意图;
图5为本申请实施例四所提供的基于同态加密的数据处理装置的结构示意图;
图6为本申请实施例五所提供的基于同态加密的数据处理装置的结构示意图;
图7示出了适于用来实现本申请实施方式的示例性计算机设备的框图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
本申请主要针对现有技术中服务器无法保证用户的隐私数据不被泄露的技术问题,提出一种基于同态加密的数据处理方法。
本申请实施例的基于同态加密的数据处理方法,通过从客户端获取数据的处理请求,其中,处理请求用于请求对存储的数据项执行数据处理操作,之后,根据执行数据处理操作所需的运算,对运算对应的数据项的密文执行数据处理操作,得到加密结果,其中,密文是客户端采用数据处理操作对应的同态加密算法对数据项进行加密得到,最后,生成并发送携带加密结果的处理响应。由此,可以实现在服务器侧提供加密数据的查询和分析等处理功能,解决了大数据场景下如何实现对加密数据进行计算的难题,可以提升用户对服务器的信赖度。并且,由于密文为客户端加密处理后得到的,服务器无法查看用户的隐私数据,可以避免用户的隐私数据被泄露。此外,由于密文为加密的,即使服务器被攻破,也无法泄露用户的隐私数据,可以进一步保证服务器中存储的数据的安全性。
下面参考附图描述本申请实施例的基于同态加密的数据处理方法和装置。在具体描述本发明实施例之前,为了便于理解,首先对常用技术词进行介绍:
同态加密,包括加法同态、减法同态、乘法同态、混合乘法同态、除法同态、代数同态以及算术同态。
其中,加法同态,是指:存在一个有效算法⊕,使得E(x+y)=E(x)⊕E(y)或者x+y=D(E(x)⊕E(y))成立,并且该算法不泄漏x和y,则称E为加法同态。
减法同态,是指:若存在一个有效算法○-,使得E(x-y)=E(x)○-E(y)或者x-y=D(E(x)○-E(y))成立,并且该算法不泄漏x和y,则称E为减法同态。
乘法同态,是指:若存在一个有效算法,使得E(x×y)=E(x)E(y)或者xy=D(E(x)E(y))成立,并且不泄漏x和y,则称E为乘法同态。
混合乘法同态,是指:若存在一个有效算法,使得E(x×y)=E(x)y或者xy=D(E(x)y)成立,并且该算法不泄漏x,则称E为混合乘法同态。
除法同态,是指:若存在一个有效算法○/,使得E(x/y)=E(x)○/E(y)或者x/y=D(E(x)○/E(y))成立,并且该算法不泄漏x和y,则称E为除法同态。
代数同态,是指:如果E既是加法同态又是乘法同态,则称E为代数同态。
算术同态,如果E同时为加法同态、减法同态、乘法同态和除法同态,则称E为算数同态。
图1为本申请实施例一所提供的基于同态加密的数据处理方法的流程示意图。
本申请实施例的该基于同态加密的数据处理方法可以应用于服务器中。
如图1所示,该基于同态加密的数据处理方法包括以下步骤:
步骤101,从客户端获取数据的处理请求;其中,处理请求用于请求对存储的数据项执行数据处理操作。
本申请实施例中,客户端是指运行在计算机设备中,与服务器相对应,为用户提供本地服务的程序。数据处理操作是指对存储的数据进行的一系列操作,包括查询操作、分析操作等。这些数据处理操作涉及的运算可以包括过滤运算、排序运算、求交运算、聚合运算等等。
其中,计算机设备可以为个人电脑(PersonalComputer,简称PC)、云端设备、移动设备等,移动设备例如可以为手机、平板电脑、个人数字助理、穿戴式设备、车载设备等具有各种操作系统、触摸屏和/或显示屏的硬件设备。
本申请实施例中,客户端中可以提供有各数据处理操作对应的功能选项,当客户端通过侦听方式,探测到用户触发了相应的功能选项后,可以生成对应的处理请求,并将上述处理请求发送至服务器端,相应的,服务器可以接收上述处理请求。其中,处理请求用于请求对存储的数据项执行数据处理操作。
步骤102,根据执行数据处理操作所需的运算,对运算对应的数据项的密文执行数据处理操作,得到加密结果;其中,密文,是客户端采用数据处理操作对应的同态加密算法,对数据项进行加密得到。
本申请实施例中,为了避免用户的隐私数据被泄露,可以通过客户端对数据进行加密处理,并将加密处理后的数据上传至服务器,由此,服务器无法查看用户的隐私数据,可以避免用户的隐私数据被泄露,并且,即使服务器被攻破,也无法泄露用户的隐私数据,可以进一步保证服务器中存储的数据的安全性。
也就是说,本申请中,客户端可以提供对数据进行加密和解密的功能,客户端在将数据发送至服务器端进行保存前,可以对数据进行加密处理。例如,数据可以用数组进行表示,该数组可以包括多个数据项,可以采用同态加密算法,对数组中的各数据项进行加密处理,得到对应的各密文。而后,客户端可以将各密文保存至服务器端,由此,在服务器端保存加密后的各密文,可以避免用户的敏感数据或者隐私数据被泄露。
本申请实施例中,数据处理操作涉及不同运算时,对应的同态加密算法可以不同,例如,聚合运算对应的同态加密算法可以不同于求交运算对应的同态加密算法,从而客户端采用运算对应的同态加密算法,对数据项进行加密处理得到的密文也是不同的。因此,为了保证服务器可以响应于上述处理请求,本申请中,在服务器获取到处理请求后,可以对处理请求进行解析,确定对存储的数据项执行的数据处理操作,而后可以确定执行上述数据处理操作所需的运算,并确定运算对应的数据项的密文,从而,可以对运算对应的数据项的密文执行上述数据处理操作,得到加密结果。
举例而言,当数据处理操作涉及数值运算,比如聚合运算中的加法时,服务器在接收到上述处理请求后,可以确定执行加法运算,并确定客户端上传的采用加法运算对应的同态加密算法,对数据项进行加密得到的密文,从而可以对上述密文执行加法运算的运算规则,得到密文结果。
步骤103,生成并发送携带加密结果的处理响应。
本申请实施例中,在服务器得到加密结果后,可以生成携带加密结果的处理响应,并向客户端发送该携带加密结果的处理响应,从而当客户端接收到该处理响应后,可以采用上述同态加密算法对应的解密算法,对上述加密结果进行解密,得到所需数据。
作为一种示例,参见图2,服务器提供数据存储功能,并且服务器中的spark计算引擎可以提供数据查询和计算功能,客户端提供加密、解密和请求任务提供功能。
企业的数据提供者,可以通过客户端对数据进行加密,而后将加密的数据存储到服务器中;企业的数据分析人员,可以向服务器发送联机分析处理(On-Line AnalyticalProcessing,简称OLAP)查询任务;服务器在接收到该OLAP查询任务后,可以通过spark计算引擎对数据进行查询分析,并向客户端返回任务执行结果,从而数据分析人员可以解密数据得到最终结果。在整个处理过程中,数据均为加密的,一方面,服务器无法查看用户的隐私数据,另一方面,即使服务器被攻破,也无法泄露用户的隐私数据。
本申请实施例的基于同态加密的数据处理方法,通过从客户端获取数据的处理请求,其中,处理请求用于请求对存储的数据项执行数据处理操作,之后,根据执行数据处理操作所需的运算,对运算对应的数据项的密文执行数据处理操作,得到加密结果,其中,密文是客户端采用数据处理操作对应的同态加密算法对数据项进行加密得到,最后,生成并发送携带加密结果的处理响应。由此,可以实现在服务器侧提供加密数据的查询和分析等处理功能,解决了大数据场景下如何实现对加密数据进行计算的难题,可以提升用户对服务器的信赖度。并且,由于密文为客户端加密处理后得到的,服务器无法查看用户的隐私数据,可以避免用户的隐私数据被泄露。此外,由于密文为加密的,即使服务器被攻破,也无法泄露用户的隐私数据,可以进一步保证服务器中存储的数据的安全性。
作为一种可能的实现方式,上述实施例中的同态加密算法具体可以指部分同态加密算法,即每种同态加密算法仅能适用于部分类型的运算,每种同态加密算法仅能适用于对应的数据处理操作,因此,本申请中,为了实现服务器能够执行各种类型的数据处理操作,客户端可以预先采用各种同态加密算法,对各数据项进行加密处理,得到各密文。下面结合图3,对上述过程进行详细说明。
图3为本申请实施例二所提供的基于同态加密的数据处理方法的流程示意图。
如图3所示,该基于同态加密的数据处理方法可以包括以下步骤:
步骤201,针对每一个字段,存储多个加密序列;其中,每一个加密序列包含的各密文,是客户端采用多种同态加密算法中的一种对相应字段包含的各数据项进行加密得到,每一种同态加密算法适用于对应的运算。
需要说明的是,每种同态加密算法仅能适用于部分类型的运算,即每种同态加密算法仅能适用于对应的数据处理操作,因此,本申请中,为了实现服务器能够执行各种类型的数据处理操作,针对客户端上传至服务器中的每个字段,客户端可以采用各种同态加密算法,对每个字段包含的各数据项进行加密处理,得到各种同态加密算法对应的加密序列中的各密文。其中,每种同态加密算法适用于对应的运算,例如,Blowfish同态加密算法适用于等值运算或求交运算,Paillier同态加密算法适用于数值运算,mOPE同态加密算法适用于求交运算、排序运算和比较运算,WDDS同态加密算法适用于文本运算。
本申请实施例中,针对客户端上传至服务器中每一个字段,当客户端根据不同同态加密算法,生成对应的加密序列后,可以将各加密序列保存至服务器中。
步骤202,当从客户端获取数据的处理请求后,根据执行数据处理操作所需的运算,对运算对应的数据项的密文执行数据处理操作,得到加密结果;其中,密文,是客户端采用数据处理操作对应的同态加密算法,对数据项进行加密得到。
步骤203,生成并发送携带加密结果的处理响应。
步骤202至203的执行过程,可以参见上述实施例中步骤101至103的执行过程,在此不做赘述。
本申请实施例的基于同态加密的数据处理方法,通过针对每一个字段,存储多个加密序列;其中,每一个加密序列包含的各密文,是客户端采用多种同态加密算法中的一种对相应字段包含的各数据项进行加密得到,每一种同态加密算法适用于对应的运算。由此,可以保证服务器能够执行各种类型的数据处理操作,提升该方法的适用性。
作为一种可能的实现方式,上述实施例中,运算可以为过滤运算、排序运算、求交运算、聚合运算等等,其中,过滤运算可以包括比较运算、等值运算、逻辑运算中的与、或、非等等,排序运算包括比较运算,求交运算包括范围求交运算、等值运算等等,聚合运算包括求和、求均值、求方差等等。
针对步骤201,对于过滤运算、排序运算、求交运算,客户端可以采用现有技术中的同态加密算法,对各数据项的取值进行加密得到密文,而对于聚合运算,其对应的同态加密算法可以采用以下公式对第i个数据项Di的取值m进行加密得到密文:
Enck(m,i)=(m-Fk(i)+Fk(i-1))mod n;(1)
其中,Fk=H(i||k)mod n;(2)
i表示数据项Di的标识,用于唯一标识对应的数据项Di,i的取值集合为{i};i||k表示采用客户端的私钥k对i采用散列函数H进行加密,mod表示取模,n是采用私钥k对应的共享密钥K将{i}集合中的元素映射至的有限域Z时,根据Z的取值范围{0,1,……,n-1}确定的。
加密后的密文可以用(c,S)元组表示,其中,c表示有限域Z中的一个元素,c的取值为Enck(m,i),S表示c的累积集合,所述累积集合为{i}的子集[i,-(i-1)]。
当客户端进行解密处理时,(c,S)元组可以采用以下公式进行解密:
Deck(c,S)=(c+∑(Fk(i)-Fk(i-1)))mod n;(3)
其中,∑(Fk(i)-Fk(i-1))表示,对S表示的累积集合[i,-(i-1)]中的元素计算Fk(i),以及-Fk(i-1)之和。
作为一种示例,聚合运算可以为求和、求均值、求方差等等,假设上述实施例中步骤102或者202中的运算为加法运算,比如计算服务器存储的第1行至最后一行数据的加法运算,则服务器可以读取第一行数据q,并记录当前密文值c=cq,S为{q-1,-q};当读取到第二行数据q+1时,运算c=c+cq+1(累加),S变为:S∪{q,-(q+1)}={q-1,-q}∪{q-1,-(q+1)}={q-1,-(q+1)};当读取到第i行数据时,运算c=c+ci(累加),S变为:S∪{i,-(i+1)}={q-1,-(i+1)};当最后一行数据读取并处理后,可以得到计算后的加密结果为:c和S({q-1,-p})。
客户端在接收到处理响应后,可以对加密结果进行解密处理,得到的最终结果为:Deck(c,S)=(c+Fk(q-1)-Fk(p))。
针对步骤102或者202,当数据处理操作涉及为加法运算时,执行数据处理操作所需的运算为加法运算,服务器可以采用以下运算规则,对(c1,S1)元组和(c2,S2)元组表示的不同密文进行加法运算,得到加密结果:
(c1,S1)⊕(c2,S2)=((c1+c2)mod n,S1∪S2);(4)
可以理解的是,密文还可以直接用c进行表示,当数据处理操作涉及为加法运算时,服务器对密文c1和c2进行加法运算,得到加密结果后,客户端对加密结果进行解密后得到的数据应为:
Deck(c1⊕c2)=Deck(Enck(mi,i1)⊕Enck(m2,i2))=(m1+m2)mod n;(5)
即解密后的得到的数据与原文是相同的。
作为一种可能的实现方式,参见图4,在图1和图3所示实施例的基础上,步骤102或者202具体可以包括以下子步骤:
步骤301,当采用钩子函数探测到将处理请求指示的数据处理操作解析为物理计划时,将物理计划替换为设定的方法类。
本申请实施例中,服务器中存储的数据在处理时,例如从某一列中找出最大值,并非将该列的所有数据进行比较,确定最大值,而是将请求或指令进行解析,确定物理计划,例如找出最大值为一个任务,物理计划可以为将任务进行分解后,每一步需执行的步骤,即物理计划为服务器实际可执行的最小单元。例如,先找到该列的第一个值,而后将该列的第二个值与第一个值进行比较,若第二个值大于第一个值,则将第二个值进行存储,而后判断第三个值是否大于第二个值,若是,则将第三个值进行存储,以此类推,可以确定该列中的最大值。
可以理解的是,服务器中存储的为加密后的密文,当对密文进行运算时,例如,采用上述公式(4)中的加法运算,对两个密文进行运算时,由于并非直接对c1和c2进行加法运算,还要对S1和S2进行求并运算,因此,公式(4)并非常规的加法运算,服务器无法实现直接对密文进行加法运算。因此,本申请中,可以通过设置钩子函数,当钩子函数触发后,可以执行设定的方法类,其中,设定的方法类具体为用于实现本申请中的各运算对应逻辑的物理计划,例如对密文执行加法运算时,方法类已配置好将c1和c2相加,以及S1与S2求并这一步骤。
具体地,当采用钩子函数探测到将上述处理请求指示的数据处理操作解析为物理计划时,可以将物理计划替换为设定的方法类,从而后续步骤中可以执行上述方法类,以得到加密结果。
步骤302,执行方法类,以将数据处理操作涉及的数据项,根据数据处理操作所需执行的运算,查询数据项的密文,对密文执行运算对应的运算规则得到加密结果。
本申请实施例中,可以执行上述方法类,得到加密结果,即将数据处理操作涉及的数据项,根据数据处理操作所需执行的运算,查询数据项的密文,对密文执行运算对应的运算规则得到加密结果。
一种示例,当数据处理操作为查询操作,该查询操作需要执行过滤运算中的大于或小于,则可以将OPE列作为运算对象进行运算,运算规则为x<y,OPEk(x)<OPEk(y),或者,当数据处理操作为查询操作,该查询操作需要执行过滤运算中的等值运算时,则可以采用Blowfish算法加密列,判断加密列的值是否相等。
另一种示例,与过滤运算类似,当查询操作涉及的运算为求交运算中的范围求交运算时,可以使用OPE列作为运算对象进行运算。或者,当数据处理操作涉及求交运算中的等值运算时,仍然可以采用Blowfish算法加密列,判断加密列的值是否相等。
另一种示例,当数据处理操作涉及排序运算中的比较运算时,可以将OPE列作为运算对象进行运算,运算规则为:若OPEk(x)<OPEk(y),则顺序调整(从小到大),若OPEk(x)>OPEk(y),则逆序调整(由大到小)。
另一种示例,当数据处理操作涉及数值运算时,客户端可以采用Paillier列的部分同态加密算法,对数据信息进行加密,服务器可以直接对隐私数据进行相加运算和对公开数据进行乘除运算。或者,当数据处理操作涉及聚合运算时,对应的运算为求取最大值或者最小值时,可以将OPE列作为运算对象进行运算,当同列数据比较时,反复使用OPE算法选出当前数据最大列或最小列。或者,当数据处理操作涉及聚合运算时,包括求和、求均值、求方差等等,可以采用上述公式(1)至公式(5)进行计算,得到对(c,S)元组,从而可以对(c,S)元组进行求和、求均值、求方差等等,例如,当运算为加法运算时,可以采用公式(4)中的运算规则,对密文进行加法运算,最后,客户端可以采用对应的解密算法Deck(c,S),对加密结果进行解密处理,得到的最终结果。
本申请实施例的基于同态加密的数据处理方法,通过当采用钩子函数探测到将处理请求指示的数据处理操作解析为物理计划时,将物理计划替换为设定的方法类;执行方法类,以将数据处理操作涉及的数据项,根据数据处理操作所需执行的运算,查询数据项的密文,对密文执行运算对应的运算规则得到加密结果。本申请中,执行设定的方法类,可以实现对密文进行相应的运算,得到加密结果,由此,在保护用户隐私数据的同时,可以实现在服务器侧提供加密数据的查询和处理功能,解决了大数据场景下如何实现对加密数据进行计算的难题,可以提升用户对服务器的信赖度。
为了实现上述实施例,本申请还提出一种基于同态加密的数据处理装置。
图5为本申请实施例四所提供的基于同态加密的数据处理装置的结构示意图。
如图5所示,该基于同态加密的数据处理装置包括:获取模块101、处理模块102,以及响应模块103。
其中,获取模块101,用于从客户端获取数据的处理请求;其中,处理请求用于请求对存储的数据项执行数据处理操作。
处理模块102,用于根据执行数据处理操作所需的运算,对运算对应的数据项的密文执行数据处理操作,得到加密结果;其中,密文,是客户端采用数据处理操作对应的同态加密算法,对数据项进行加密得到。
响应模块103,用于生成并发送携带加密结果的处理响应。
进一步地,在本申请实施例的一种可能的实现方式中,参见图6,在图5所示实施例的基础上,该基于同态加密的数据处理装置还可以包括:存储模块104。
存储模块104,用于在根据执行数据处理操作所需的运算,对运算对应的数据项的密文执行数据处理操作,得到加密结果之前,针对每一个字段,存储多个加密序列;其中,每一个加密序列包含的各密文,是客户端采用多种同态加密算法中的一种对相应字段包含的各数据项进行加密得到,每一种同态加密算法适用于对应的运算。
作为一种可能的实现方式,运算包括聚合运算;聚合运算包括求和、求均值和/或求方差中的至少一个。
作为一种可能的实现方式,聚合运算对应的同态加密算法是采用以下公式对第i个数据项Di的取值m进行加密得到密文:
Enck(m,i)=(m-Fk(i)+Fk(i-1))mod n;
其中,Fk=H(i||k)mod n;
i的取值集合为{i};i||k表示采用客户端的私钥k对i采用散列函数H进行加密,mod表示取模,n是采用私钥k对应的共享密钥K将{i}集合中的元素映射至的有限域Z时,根据Z的取值范围{0,1,……,n-1}确定的。
作为一种可能的实现方式,密文表示为(c,S)元组;
其中,c取值为Enck(m,i);
S表示c的累积集合,累积集合为{i}的子集[i,-(i-1)]。
作为一种可能的实现方式,(c,S)元组采用以下公式解密:
Deck(c,S)=(c+∑(Fk(i)-Fk(i-1)))mod n;
其中,∑(Fk(i)-Fk(i-1))表示,对S表示的累积集合[i,-(i-1)]中的元素计算Fk(i),以及-Fk(i-1)之和。
作为一种可能的实现方式,对(c1,S1)元组和(c2,S2)元组表示的不同密文进行加法运算时,采用以下运算规则进行:
(c1,S1)⊕(c2,S2)=((c1+c2)mod n,S1∪S2)。
作为一种可能的实现方式,处理模块102,具体用于:当采用钩子函数探测到将处理请求指示的数据处理操作解析为物理计划时,将物理计划替换为设定的方法类;执行方法类,以将数据处理操作涉及的数据项,根据数据处理操作所需执行的运算,查询数据项的密文,对密文执行运算对应的运算规则得到加密结果。
需要说明的是,前述对基于同态加密的数据处理方法实施例的解释说明也适用于该实施例的基于同态加密的数据处理装置,此处不再赘述。
本申请实施例的基于同态加密的数据处理装置,通过从客户端获取数据的处理请求,其中,处理请求用于请求对存储的数据项执行数据处理操作,之后,根据执行数据处理操作所需的运算,对运算对应的数据项的密文执行数据处理操作,得到加密结果,其中,密文是客户端采用数据处理操作对应的同态加密算法对数据项进行加密得到,最后,生成并发送携带加密结果的处理响应。由此,可以实现在服务器侧提供加密数据的查询和分析等处理功能,解决了大数据场景下如何实现对加密数据进行计算的难题,可以提升用户对服务器的信赖度。并且,由于密文为客户端加密处理后得到的,服务器无法查看用户的隐私数据,可以避免用户的隐私数据被泄露。此外,由于密文为加密的,即使服务器被攻破,也无法泄露用户的隐私数据,可以进一步保证服务器中存储的数据的安全性。
为了实现上述实施例,本申请还提出一种计算机设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时,实现如本申请前述实施例提出的基于同态加密的数据处理方法。
为了实现上述实施例,本申请还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请前述实施例提出的基于同态加密的数据处理方法。
为了实现上述实施例,本申请还提出一种计算机程序产品,当计算机程序产品中的指令由处理器执行时,执行如本申请前述实施例提出的基于同态加密的数据处理方法。
图7示出了适于用来实现本申请实施方式的示例性计算机设备的框图。图7显示的计算机设备12仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图7所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图7未显示,通常称为“硬盘驱动器”)。尽管图7中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read OnlyMemory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read OnlyMemory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现前述实施例中提及的基于同态加密的数据处理方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (8)
1.一种基于同态加密的数据处理方法,其特征在于,所述方法包括以下步骤:
从客户端获取数据的处理请求;其中,所述处理请求用于请求对存储的数据项执行数据处理操作;
根据执行所述数据处理操作所需的运算,对所述运算对应的所述数据项的密文执行所述数据处理操作,得到加密结果;其中,所述密文,是所述客户端采用所述数据处理操作对应的同态加密算法,对所述数据项进行加密得到;
生成并发送携带所述加密结果的处理响应;
所述根据执行所述数据处理操作所需的运算,对所述运算对应的所述数据项的密文执行所述数据处理操作,得到加密结果之前,还包括:
针对每一个字段,存储多个加密序列;其中,每一个加密序列包含的各密文,是所述客户端采用多种同态加密算法中的一种对相应字段包含的各数据项进行加密得到,每一种同态加密算法适用于对应的运算;
其中,所述运算包括过滤运算、排序运算、求交运算、聚合运算;
所述多种同态加密算法包括:加法同态加密算法、减法同态加密算法、乘法同态加密算法、混合乘法同态加密算法、除法同态加密算法、代数同态加密算法以及算术同态加密算法;
所述聚合运算对应的同态加密算法是采用以下公式对第i个数据项Di的取值m进行加密得到密文:
Enck(m,i)=(m-Fk(i)+Fk(i-1))mod n;
其中,Fk=H(i||k)mod n;
i的取值集合为{i};i||k表示采用所述客户端的私钥k对i采用散列函数H进行加密,mod表示取模,n是采用所述私钥k对应的共享密钥K将{i}集合中的元素映射至的有限域Z时,根据Z的取值范围{0,1,……,n-1}确定的;
所述密文表示为(c,S)元组;
其中,c取值为Enck(m,i);
S表示c的累积集合,所述累积集合为{i}的子集[i,-(i-1)]。
2.根据权利要求1所述的数据处理方法,其特征在于,所述聚合运算包括求和、求均值和/或求方差中的至少一个。
3.根据权利要求2所述的数据处理方法,其特征在于,所述(c,S)元组采用以下公式解密:
Deck(c,S)=(c+∑(Fk(i)-Fk(i-1)))mod n;
其中,∑(Fk(i)-Fk(i-1))表示,对S表示的累积集合[i,-(i-1)]中的元素计算Fk(i),以及-Fk(i-1)之和。
4.根据权利要求2所述的数据处理方法,其特征在于,对(c1,S1)元组和(c2,S2)元组表示的不同密文进行加法运算时,采用以下运算规则进行:
(c1,S1)⊕(c2,S2)=((c1+c2)mod n,S1∪S2)。
5.根据权利要求1-4任一项所述的数据处理方法,其特征在于,所述根据执行所述数据处理操作所需的运算,对所述运算对应的所述数据项的密文执行所述数据处理操作,得到加密结果,包括:
当采用钩子函数探测到将所述处理请求指示的数据处理操作解析为物理计划时,将所述物理计划替换为设定的方法类;
执行所述方法类,以将所述数据处理操作涉及的数据项,根据所述数据处理操作所需执行的运算,查询所述数据项的密文,对所述密文执行所述运算对应的运算规则得到加密结果。
6.一种基于同态加密的数据处理装置,其特征在于,所述装置包括:
获取模块,用于从客户端获取数据的处理请求;其中,所述处理请求用于请求对存储的数据项执行数据处理操作;
处理模块,用于根据执行所述数据处理操作所需的运算,对所述运算对应的所述数据项的密文执行所述数据处理操作,得到加密结果;其中,所述密文,是所述客户端采用所述数据处理操作对应的同态加密算法,对所述数据项进行加密得到;
响应模块,用于生成并发送携带所述加密结果的处理响应;
存储模块,用于在根据执行数据处理操作所需的运算,对运算对应的数据项的密文执行数据处理操作,得到加密结果之前,针对每一个字段,存储多个加密序列;其中,每一个加密序列包含的各密文,是客户端采用多种同态加密算法中的一种对相应字段包含的各数据项进行加密得到,每一种同态加密算法适用于对应的运算;
其中,所述运算包括过滤运算、排序运算、求交运算、聚合运算;
所述多种同态加密算法包括:加法同态加密算法、减法同态加密算法、乘法同态加密算法、混合乘法同态加密算法、除法同态加密算法、代数同态加密算法以及算术同态加密算法;
所述聚合运算对应的同态加密算法是采用以下公式对第i个数据项Di的取值m进行加密得到密文:
Enck(m,i)=(m-Fk(i)+Fk(i-1))mod n;
其中,Fk=H(i||k)mod n;
i的取值集合为{i};i||k表示采用所述客户端的私钥k对i采用散列函数H进行加密,mod表示取模,n是采用所述私钥k对应的共享密钥K将{i}集合中的元素映射至的有限域Z时,根据Z的取值范围{0,1,……,n-1}确定的;
所述密文表示为(c,S)元组;
其中,c取值为Enck(m,i);
S表示c的累积集合,所述累积集合为{i}的子集[i,-(i-1)]。
7.一种计算机设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如权利要求1-5中任一所述的基于同态加密的数据处理方法。
8.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一所述的基于同态加密的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910046844.2A CN111464282B (zh) | 2019-01-18 | 2019-01-18 | 基于同态加密的数据处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910046844.2A CN111464282B (zh) | 2019-01-18 | 2019-01-18 | 基于同态加密的数据处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111464282A CN111464282A (zh) | 2020-07-28 |
CN111464282B true CN111464282B (zh) | 2024-04-26 |
Family
ID=71679747
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910046844.2A Active CN111464282B (zh) | 2019-01-18 | 2019-01-18 | 基于同态加密的数据处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111464282B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112241547B (zh) * | 2020-11-23 | 2023-06-06 | 中国联合网络通信集团有限公司 | 车辆数据加密分析方法、边缘服务器及存储介质 |
CN112615855B (zh) * | 2020-12-16 | 2022-08-02 | 深圳市中博科创信息技术有限公司 | 一种基于政务秒批平台的数据安全传输方法 |
CN112866223B (zh) * | 2021-01-12 | 2022-11-08 | 北京金山云网络技术有限公司 | 一种同态加密请求的路由方法和装置 |
CN113225345A (zh) * | 2021-04-30 | 2021-08-06 | 武汉天喻信息产业股份有限公司 | 一种具有隐私保护功能的数据处理方法、装置及系统 |
CN113157778B (zh) * | 2021-06-09 | 2021-09-24 | 富算科技(上海)有限公司 | 分布式数据仓库的可代理查询方法、系统、设备及介质 |
CN113821810B (zh) * | 2021-08-26 | 2024-03-08 | 上海赢科信息技术有限公司 | 数据处理方法及系统、存储介质及电子设备 |
CN114218322B (zh) * | 2021-12-13 | 2022-08-26 | 深圳市电子商务安全证书管理有限公司 | 基于密文传输的数据展示方法、装置、设备及介质 |
CN115801221A (zh) * | 2022-10-11 | 2023-03-14 | 阿里云计算有限公司 | 加速设备、计算系统及加速方法 |
CN116305187B (zh) * | 2023-01-14 | 2023-09-01 | 北京惠企易点通科技有限公司 | 一种基于混合加密的决策流模型计算方法及装置 |
CN116150795B (zh) * | 2023-04-17 | 2023-07-14 | 粤港澳大湾区数字经济研究院(福田) | 基于同态加密的数据处理方法、系统及相关设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104426973A (zh) * | 2013-09-03 | 2015-03-18 | 中国移动通信集团公司 | 一种云数据库加密方法、系统及装置 |
US9031229B1 (en) * | 2012-03-26 | 2015-05-12 | Newline Software, Inc. | Computer-implemented system and method for providing data privacy in a cloud using discrete homomorphic encryption |
CN107592195A (zh) * | 2017-09-12 | 2018-01-16 | 北京电子科技学院 | 一种准全同态密文数据操作方法和系统 |
CN109063496A (zh) * | 2018-07-26 | 2018-12-21 | 郑州云海信息技术有限公司 | 一种数据处理的方法及装置 |
CN109214201A (zh) * | 2018-08-31 | 2019-01-15 | 平安科技(深圳)有限公司 | 一种数据共享方法、终端设备及计算机可读存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8925075B2 (en) * | 2011-11-07 | 2014-12-30 | Parallels IP Holdings GmbH | Method for protecting data used in cloud computing with homomorphic encryption |
CN106160995B (zh) * | 2015-04-21 | 2019-04-16 | 郑珂威 | 基于系数映射变换的多项式完全同态加密方法及系统 |
US10454668B2 (en) * | 2015-11-09 | 2019-10-22 | Certsign Sa | Fully homomorphic encryption from monoid algebras |
US10693627B2 (en) * | 2017-01-20 | 2020-06-23 | Enveil, Inc. | Systems and methods for efficient fixed-base multi-precision exponentiation |
-
2019
- 2019-01-18 CN CN201910046844.2A patent/CN111464282B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9031229B1 (en) * | 2012-03-26 | 2015-05-12 | Newline Software, Inc. | Computer-implemented system and method for providing data privacy in a cloud using discrete homomorphic encryption |
CN104426973A (zh) * | 2013-09-03 | 2015-03-18 | 中国移动通信集团公司 | 一种云数据库加密方法、系统及装置 |
CN107592195A (zh) * | 2017-09-12 | 2018-01-16 | 北京电子科技学院 | 一种准全同态密文数据操作方法和系统 |
CN109063496A (zh) * | 2018-07-26 | 2018-12-21 | 郑州云海信息技术有限公司 | 一种数据处理的方法及装置 |
CN109214201A (zh) * | 2018-08-31 | 2019-01-15 | 平安科技(深圳)有限公司 | 一种数据共享方法、终端设备及计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
Arithmetic Operations on Encrypted Data using Fully Homomorphic Encryption;Shiji Mariam Mathew et al.;2017 14th IEEE India Council International Conference (INDICON);20181011;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111464282A (zh) | 2020-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111464282B (zh) | 基于同态加密的数据处理方法和装置 | |
US10728018B2 (en) | Secure probabilistic analytics using homomorphic encryption | |
CN108463827B (zh) | 用于检测敏感信息泄漏同时保护隐私的系统和方法 | |
US11381381B2 (en) | Privacy preserving oracle | |
WO2018082008A1 (en) | Secure distributed data processing | |
US11070357B2 (en) | Techniques for privacy-preserving data processing across multiple computing nodes | |
JP2010517448A (ja) | セキュアファイル暗号化 | |
CN112073444B (zh) | 数据集的处理方法、装置和服务器 | |
US20170083709A1 (en) | Replication of data encrypted using symmetric keys | |
CN114981793A (zh) | 模式的安全匹配和识别 | |
JP2006094241A (ja) | 暗号化装置、暗号化処理方法及びプログラム、並びに該暗号化装置を用いた情報保護システム | |
CN113810168A (zh) | 机器学习模型的训练方法、服务器及计算机设备 | |
CN114239019A (zh) | 保护隐私数据的共有数据数目确定方法、装置和系统 | |
CN114172663A (zh) | 基于区块链的业务确权方法及装置、存储介质和电子设备 | |
CN107133517B (zh) | 一种基于内存中数据加密和计算的数据还原方法 | |
US11018857B2 (en) | Encryption scheme using multiple parties | |
CN108921550B (zh) | 数字货币钱包的管理方法、装置、电子设备和存储介质 | |
Waziri et al. | Big data analytics and data security in the cloud via fully homomorphic encryption | |
WO2016209288A1 (en) | Sharing of community-based security information | |
CN114255529B (zh) | 门锁授权方法、装置、计算设备和计算机存储介质 | |
CN110417638B (zh) | 通信数据处理方法和装置、存储介质及电子装置 | |
US20230085239A1 (en) | Querying fully homomorphic encryption encrypted databases using client-side preprocessing or post-processing | |
US20240187264A1 (en) | Key derivation for account management | |
Tang et al. | Lightweight Privacy-Preserving Medical Diagnostic Scheme for Internet of Things Healthcare | |
Katambo | A protocol for secure distributed spatial searching using homomorphic encryption. |
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 |