凡是环境下,云环境的数据中间保留有大年夜量的私密数据,这些数据常常代表了用户的核心竞争力,如用户的客户信息、财务信息、关头营业流程等。在云计较模式下,用户将数据经由过程收集传递到云计较办事供给商进行措置时,面对着几个方面的标题问题:一是若何确保用户的数据在收集传输过程中不被盗取;二是若何包管云计较办事供给商在获得数据时不将用户首要数据泄漏出往;三是在云计较办事供给商处存储时。若何包管拜候用户颠末严格的权限认证并且是合法的数据拜候,并包管用户在任甚么时辰候都可以安然拜候到本身的数据。
从上面阐发可以得出结论,包管云环境中数据传输的安然是云环境数据安然的首要环节。对用户数据进行加密是最底子的解决编制。
1 同态加密手艺
同态手艺是在两个调集之间传递的同时保留对应关系的手艺。在第一个调集上的把持成果保留在第二个调集响应的成员中。
图1 系统架构
假定P和C是两个调集,P1,P2∈P,t是两个调集之间的一个转换关系,t'是t的逆转换关系,调集之间的把持
公式中引进了一个降噪算法r,将带噪音的密文转换成一个降噪的响应密文。
在进一步描述同态加密的概念之前,先论证一个很是简单的代数同态加密。当然这个概念合用于所有的同态加密,可是这个例子旨在直不雅的揭示一个加密是若何生效的。
假定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 结论
本文提出了一种操纵同态加密手艺加密数据,然后在加密数据上履行加密把持, 最掉队行数据传输的方案。同其他解决方案比拟,代码和措置的数据完全保留在密空间中,进步了云环境数据传输的靠得住性和安然性。