`
jiezhu2007
  • 浏览: 245441 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
博客专栏
Cfa1f850-3fc3-3a36-9cd8-c3415c9610c6
hadoop技术学习
浏览量:144147
Group-logo
大数据产业分析
浏览量:2980
社区版块
存档分类
最新评论

同态加密技术

阅读更多

 

2016-03-12 朱洁 hadoop技术学习

最近领导安排研究下大数据的安全,计算机安全是个系统工程,分很多层面:

1)硬件安全

2)应用软件安全

3)操作系统安全

4)数据库系统安全

5)网络安全技术

 

涉及到具体的技术又有

1)密码技术

2)计算机病毒&防范

3)防火墙技术

4)黑客的攻击和防范

等等。

 

大数据技术除了传统的系统级别,软件级别的安全外,我觉得要重点关注数据的安全和隐私。

数据安全有一个很有意思的加密方法,这种方法叫同态同态加密。

 

同态加密是指2009年,IBM公司的克雷格·金特里(Craig Gentry)发表了一篇文章,公布了一项关于密码学的全新发现:一项真正的突破。他发现,对加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的。这听起来就像是不知道问题也能给出问题的答案一样。

 

记加密操作为 E,明文为 m,加密得 e,即 e = E(m),m = E'(e)。已知针对明文有操作 f,针对 E 可构造 F,使得 F(e) = E(f(m)),这样 E 就是一个针对 f 的同态加密算法。

 

假设 f 是个很复杂的操作,有了同态加密,我们就可以把加密得到的 e 交给第三方,第三方进行操作 F,我们拿回 F(e) 后,一解密,就得到了 f(m)。第三方替我们干了活,对 m 却仍一无所知,——多么融洽的关系啊。

 

找到这样的 E 并不容易,单纯从数学角度看,E(x) = x,就是同态的,但是可惜没有加密效果,说了等于白说。RSA 算法对于乘法操作是同态的,对应的操作 F 也是乘法,对别的比如加法就无法构造出对应的 F;而 Paillier 算法则是对加法同态的。如果一种加密算法,对于乘法和加法都能找到对应的操作,就称其为全同态加密算法。目前还没有真正可用的全同态加密算法,虽然 Craig Gentry 已经前进了一大步。

 

考虑一个匿名投票系统,投票方、计票方、宣布方三权分立,采用公钥加密,只有宣布方拥有私钥。投票方将加密的票送到计票方,计票方利用同态特性进行操作 F,得到汇总的结果,宣布方拿到该结果后解密之,即得总票数。宣布方不知道单独每张票的情况,从而实现了匿名;计票方解不出票面信息,于是可以防止计票方从中作梗。选择对加法同态的加密算法:投谁的票给谁记“1”,不投计“0”;也可选择对乘法同态的算法:投谁的票给谁记“N”,不投计“1”。大致原理如上所述,实现起来还有其它一些难点:1. 赞成/反对票加密出来的结果应该多种多样,以防计票方胡乱推测;2. 能在不解密的情况下对票的有效性进行校验,不能允许一个人一下子投 10000 票。

 

全同态加密的意义对于允许任意复杂的 f,都能构造出相应的 F。这样,就能得到一些匪夷所思的应用:我能解决你的问题,即使我并不知道你的问题。

 

当前同态加密最主要的问题是不太成熟,效率损失太大(损失10倍以上),未来成熟的话,应用前景很大。

 

 
 

微信扫一扫
关注该公众号

 

0
3
分享到:
评论

相关推荐

    全同态加密技术.rar

    《云环境下基于全同态加密的全域匿名化算法.pdf》可能探讨了一种新的匿名化策略,通过全同态加密技术,实现数据的匿名化处理,同时保持在云环境中的计算能力,以保护用户的隐私信息。 全同态加密技术的研究不断...

    同态加密技术及其在云计算隐私保护中的应用.pdf

    同态加密技术是一种能够在不解密数据的前提下对加密数据进行计算的加密方法,它允许用户在不暴露原始信息内容的情况下,对密文数据进行运算,并得到加密结果,这个加密结果在解密后与对明文数据进行同样运算的结果...

    基于Java实现的同态加密算法的实现

    在"基于同态加密技术的匿名电子投票系统"中,同态加密的应用是确保选票的隐私性和不可篡改性。选民的投票信息被加密后,即使在传输和统计过程中,也能保持匿名状态。计票过程可以对加密的选票进行操作,而不会暴露...

    基于同态加密技术的匿名电子投票系统源码.zip

    同态加密基于同态加密技术的匿名电子投票系统源码.zip 基于同态加密技术的匿名电子投票系统源码.zip基于同态加密技术的匿名电子投票系统源码.zip基于同态加密技术的匿名电子投票系统源码.zip基于同态加密技术的...

    C++的基于同态加密技术的匿名电子投票系统源码.zip

    同态加密C++的基于同态加密技术的匿名电子投票系统源码.zip C++的基于同态加密技术的匿名电子投票系统源码.zipC++的基于同态加密技术的匿名电子投票系统源码.zipC++的基于同态加密技术的匿名电子投票系统源码....

    在深度学习中用同态加密技术进行隐私保护

    ### 在深度学习中应用同态加密技术进行隐私保护 #### 研究背景与动机 随着人工智能技术尤其是深度学习的快速发展,数据驱动的学习方法已成为推动众多领域进步的关键力量。然而,这种进步的背后隐藏着一个不容忽视...

    关于同态加密技术发展初探的分析说明.zip

    同态加密技术是一种在加密数据上直接执行计算的高级加密技术,它允许用户对密文进行操作,而无需先解密。这种技术的核心优势在于它能够保护数据的隐私,同时保持计算过程的可行性,这对于云计算、大数据分析以及...

    基于同态加密技术的匿名电子投票系统

    同态加密技术是一种先进的加密方法,它允许对加密数据进行计算,而无需先解密。在基于同态加密的匿名电子投票系统中,这一特性被巧妙地应用来保护选民的隐私并确保投票的公正性。以下是这个系统的核心知识点: 1. ...

    HElib全同态加密库

    全同态加密(Fully Homomorphic Encryption,FHE)是一种先进的密码学技术,它允许在加密数据上进行任意复杂的计算,而无需先解密。这意味着,数据的拥有者可以将其加密并交给第三方处理,第三方可以在不解密的情况...

    CKKS全同态加密技术《Introduction to CKKS》

    内容概要:本文介绍了CKKS(Cheon-Kim-Kim-Song)同态加密技术的基本概念、关键算法和具体实现。 CKKS支持浮点数和近似计算,适用于多种安全计算场景。 文中详细解释了编码与解码过程、密文操作(如加法、乘法)、...

    基于同态加密技术的匿名电子投票选举系统设计源码

    该项目为基于同态加密技术的匿名电子投票选举系统,包含600个文件,涵盖263个Java源代码文件、85个JavaScript文件、77个HTML文件、47个CSS文件、33个XML文件、33个PNG图片文件、18个GIF图片文件、13个VM文件、4个EOT...

    HElib, 同态加密的实现.zip

    HElib, 同态加密的实现 HElibHElib是一个软件库,它实现同态加密( ) 。 currently的实现,以及对智能vercauteren的支持,主要集中在有效使用智能代码和 Gentry-Halevi-Smart封装技术的许多优化中。 有关这里库中一些...

    基于同态加密技术的实验室开放管理系统.pdf

    同态加密技术是一种允许用户在不解密密文的情况下直接对密文进行计算,得到加密结果,这个加密结果在解密后与对原始数据进行同样的计算结果一样。实验室开放管理系统是一个通过信息化手段,提高实验室内部管理效率,...

    全同态加密研究动态及其应用概述.pdf

    #### 一、全同态加密技术简介 全同态加密(Fully Homomorphic Encryption, FHE)是一种特殊的加密技术,它允许在加密数据上执行计算,并且能够在不解密的情况下得到计算结果的加密形式。这种特性使得全同态加密成为...

    基于同态加密的机器学习研究综述.pdf

    在此背景下,同态加密技术因其能够在保护数据隐私的同时实现对数据的有效处理,成为了解决机器学习隐私保护问题的关键技术之一。 #### 同态加密基本概念 同态加密(Homomorphic Encryption, HE)是一种特殊的加密...

    同态加密是什么-以及学习同态加密的意义

    同态加密技术的基础是能够确保数据在加密状态下仍然保持可用性的算法。这意味着,在数据被加密之后,我们不仅能够存储和传输这些数据,还能对它们执行运算,例如加法、乘法等,且最终结果在解密后是正确的。 #### 2...

    多方同态加密方案研究论文

    多方同态加密:多方同态加密是指在多方参与的计算中,使用同态加密技术来保护数据的隐私和安全。在这种方案中,每个参与方都可以将自己的数据加密,然后将加密后的数据共享给其他参与方。通过使用同态加密技术,参与...

    实数范围上的同态加密

    同态加密技术是一种允许对加密数据进行特定类型运算,并将运算结果保持为加密状态的技术,这样即使在数据未解密的情况下也能进行数据处理。同态加密在数据隐私保护和安全多方计算领域具有重要应用,如电子投票、安全...

Global site tag (gtag.js) - Google Analytics