论文部分内容阅读
随着云计算、大数据技术的发展,互联网产生的数据呈爆发式增长。企业和政府机构拥有的数据越来越多,他们开始重视数据价值的挖掘和应用,于是以电子方式存储的海量数据的安全问题越来越重要。 一方面,虽然密码学是确保数据安全的有效手段之一,但将传统密码机制直接应用于海量数据,尚无理论依据和实践经验。如果使用不恰当的算法加密大数据可能存在未知的安全隐患。另一方面,数据爆炸式的增长,对传统的数据加密方法带来了更加严峻的挑战。由于存储和计算资源的限制,传统的单机计算已不能满足海量数据处理的需要。目前,用于存储和处理海量数据的云计算平台已日趋成熟。因此利用当前成熟的云平台,设计海量数据的加密方案,具有十分重要的学术意义和实用价值。 本文基于当前广泛使用的Hadoop海量数据处理与计算平台,提出了一种针对大规模数据集加密的排列算法,并由此设计了具体的加密方案。 本文所做的主要工作体现在如下三个方面: ①深入研究和分析当前大数据安全的研究现状和Hadoop海量数据处理与计算平台,在此基础上阐述本课题的主要研究内容和研究意义。 ②根据现有的一种针对数字图像的排列算法,对其存在的不足进行改进,由此提出了一种可用于大规模数据集的分组排列算法。该排列算法在分组加密的过程中对加密后的密文数据进行位置的重新排列,将影响扩散到其它分组。为了实现优异的全局扩散效果,通过多轮迭代的方式,使更多的密文受到影响。理论分析和实验表明本文提出的排列算法,对数据规模为2m≤N<2m+1的数据集,经过m+2轮加密便能达到优异的扩散性能。 ③设计了一种基于排列算法的分组加密过程。搭建了Hadoop云平台,然后利用提出的排列算法,设计迭代式的MapReduce程序对两组数据进行了实验。实验表明,该分组加密过程,不仅达到了优异的全局扩散性,而且在现有的Hadoop云平台上切实可行。