首页 > 信息安全 > 正文

云环境数据在同态加密技术中传输的应用

2013-06-25 16:08:12  来源:e-works

摘要:在云计算模式下,用户将数据通过网络传递到云计算服务提供商进行处理时,面临着几个方面的问题:一是如何确保用户的数据在网络传输过程中不被窃取;
关键词: 同态加密技术 云环境

    通常情况下,云环境的数据中心保存有大量的私密数据,这些数据往往代表了用户的核心竞争力,如用户的客户信息、财务信息、关键业务流程等。在云计算模式下,用户将数据通过网络传递到云计算服务提供商进行处理时,面临着几个方面的问题:一是如何确保用户的数据在网络传输过程中不被窃取;二是如何保证云计算服务提供商在得到数据时不将用户重要数据泄露出去;三是在云计算服务提供商处存储时。如何保证访问用户经过严格的权限认证并且是合法的数据访问,并保证用户在任何时候都可以安全访问到自身的数据。


    从上面分析可以得出结论,保证云环境中数据传输的安全是云环境数据安全的重要环节。对用户数据进行加密是最根本的解决方法。
 

    1 同态加密技术


    同态技术是在两个集合之间传递的同时保存对应关系的技术。在第一个集合上的操作结果保存在第二个集合相应的成员中。

\

    图1 系统架构


    假设P和C是两个集合,P1,P2∈P,t是两个集合之间的一个转换关系,t'是t的逆转换关系,集合之间的操作


    公式中引入了一个降噪算法r,将带噪音的密文转换成一个降噪的相应密文。

\

    在进一步描述同态加密的概念之前,先论证一个非常简单的代数同态加密。虽然这个概念适用于所有的同态加密,但是这个例子旨在直观的展示一个加密是如何生效的。

[page]
    假设P∈N,P是一个比较大的质数,作为密钥。a和b是任意的两个整数,满足a'=a+(r*p),r∈N。r属于任意整数。


    这样就可以对a进行加密,明文a可以看做P对a'求模的余数。那加密后的加法就可以表示为:


    (a'+b')=(a+(r1*p))+(b+(r2*p)),


    这样当解密时P对a+b+(H1+H)*p 求模就是(a+b)的值。乘法可以表示为:


    (a'*b')=(a+(r1*p))*(b+(r2*b))


    a*b+a*(r2*p)+b*(r1*p)+(r1*r2)*p* p mod p=(a*b)


    例如:


    a=5,b=4,p=23,r1=6,r2=3


    a'=5+(6*23)=143;b'=4+(3*23)=73;


    a'+b'=216,216 mod 23=9;


    a'*b'=10439,10439 mod 23=20


    本文可以很容易的证明这个公式是不完整的。因为操作a、b两者的结果如果大于质数模型P,那两者之间的加密操作就失败了。因此两个干净的纯文本元素,中间结果的增长对每个模型都有一定意义上的“污染”,为了弥补这一点,完全同态加密方案必须定义一个中间结果的正常化,(Gentry称之为重加密)。在这里,正常化应该是可以最大减少对p求模后的余数的值,同时保留奇偶模型p,Gentry通过生成一个包含解密提示的公钥。这个提示允许同态加密的中间结果在加密域内。这意味着作为明文的参数始终是未知的。虽然在密文空间中有明文,这样通过重新加密明文生成新的降噪的密文是可能的。


    2 同态加密技术云环境数据传输中的应用


    本文提出了在不可信资源中使用一种基于全同态加密指令和数据的方法来确保数据在云环境中的传输安全。在定义了代数同态加密进行加密的基础上,提供一种系统架构。这种概念解决了加密地址和分支加密的存储访问问题。同其他方法相比,该系统支持动态参数和非线性程序。


    为了加密明文,将明文的比特位加密成密文,这些比特位包含在奇偶数求模余数的密文中,这可以很容易的将噪音降低到一个布尔代数。本文的系统的理论基础建立在如下两个定义之上。


    定义2 定义a 。b=(a+b)+(a*b)为OR操作


    系统利用Java和C语言实现,本系统易于集成到现有的应用程序中,满足特殊的需求。系统架构如图1所示,以操作系统为基础,在其上层建立一个同态加密实现依赖库的执行引擎,加密程序本身是独立于特定类型的加密,汇编模块和执行引擎使用相同的加密库。只要汇编模块和执行引擎使用相同的加密库,加密程序独立于特定的加密类型。在系统中定义了一个借接口,确保任何可用加密库的互操作性。加密库提供了类似encode/decode/recode的功能。


    其中,encode函数输入一个整数,生成一个取决于加密密钥的加密bit数组。decode函数输入为一个加密bit数组,利用密钥进行解码。recode函数是正常化的过程,利用公钥生成一个降噪的加密bit流。模块化的系统设计使得加密库可以快速更换,系统的效率提高成为可能。


    系统实现应用13位字长的小端格式内存,一个字包含8 bits和5 bits命令。这样处理器架构符合内存访问原则,数据和指令同时被加密,数据和指令合一在一个指令周期调用。如果一个内存位置被写入,只有数据部分被修改,指令部分不变。


    3 结论


    本文提出了一种利用同态加密技术加密数据,然后在加密数据上执行加密操作, 最后进行数据传输的方案。同其他解决方案相比,代码以及处理的数据完全保存在密空间中,提高了云环境数据传输的可靠性和安全性。


第三十八届CIO班招生
国际CIO认证培训
首席数据官(CDO)认证培训
责编:renjizhong

免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。