论文部分内容阅读
云中充满了重要和敏感的数据信息,这些信息的泄露、破坏或窃取会造成不同程度的后果,保障云计算环境中数据的机密性和完整性是当下的研究热点。使用加密技术可以将明文信息转变为不具有实际意义的密文数据,密文数据的破解是一项耗时巨大且十分困难的工程,而且对于一些加密算法,目前还不存在可以攻破它们的攻击方法,因此加密技术可以提高云中数据的安全性。但是加密算法的计算复杂度普遍偏高,加解密大数据时的时间成本和计算成本都很高,因此,研究加解密速度快、安全性高且适用于云计算环境的加密算法,对保障云计算中数据的安全具有重要的意义和价值。本文的主要研究内容为如何利用云计算的计算资源丰富和支持虚拟化、并行化等优点,结合加密技术来提升云计算的安全性。通过对比分析,发现了对称密码体制中的AES密码算法相对来说更加适合加解密大数据,且易于并行化实现,因此选择AES密码算法作为研究面向云计算的数据加解密方案。考虑到传统的AES密码算法中的S盒具有迭代周期短、非线性性弱,以及密钥生成算法具有轮密钥和种子密钥相关性较强的缺点。基于AES改进算法的国内外研究现状,改进了 S盒的构造过程,并结合序列密码的优点改进了密钥流生成过程。通过分析改进AES加密算法的实验结果,发现了多次加密相同的明文数据时,每次加密使用的密钥流序列和输出的密文数据都不同,说明改进的AES密码算法达到了使用看似随机的固定密钥进行一次一密加密的效果。改进的加密方案兼具分组密码和序列密码体制的安全性,且生成密钥流的函数是一个逆向破解十分困难甚至不可能的单向函数,因此,改进的AES加密算法的安全性优于传统AES加密算法。为满足云计算中大数据加密的需求,本文设计了两套改进AES加密算法的并行化方案。第一套方案是基于多核计算机平台,创建多个计算进程,并行进行分组数据的加密运算,第二套方案是采用MapReduce并行模式,建立多个Map模块实现并行加密。在理想状态下,第一套方案的加速比向上接近于计算机核数,第二套方案的加速比近似等于处理器个数的三分之一。通过对加密用时、并行化加速比、CPU利用率等实验结果的对比分析,得到基于4核计算机的并行加密加速比达到了 3.49,基于8处理器Hadoop集群的并行加密加速比达到了 2.41,两者都非常接近于理想加速比。总结得到并行的改进AES加密算法具有加解密速度快,安全性高和资源利用率高的优点,更适合用云计算环境中数据的加解密。