程晓荣 岳 娇 张 兰
(华北电力大学计算机系 河北 071003)
随着数据的产生,数据保护也因此诞生。许多数据信息都迁移到“云”中,云存储在为用户提供服务时,通常为用户数据提供加密的方式实现对数据的保护,如AES加密技术。云存储中,用户对数据仅拥有所有权而无管理权。目前,对于云存储服务商所提供的安全策略用户很难完全相信,为了实现对数据的保护,尤其是隐私性,用户大多采用本地加密的方法。加密算法的安全性主要依赖于密钥,如果需要对大量文件进行加密也会产生大量的密钥,对其的管理问题也不容忽视。本文从数据存储方面进行研究,给出了位拆分、位合并技术的规则,设计了HDFS中数据存储的策略。
主流的数据保护通常采用加密的方式,即对于数据的比特位采用移位和扩散的方式。本文也采用该思想,假设将一份文件拆分成两份,给出如下规则。
首先从文件中按顺序先读取两个字节的数据叫字节1和字节2,并将字节1、2分离出高、低四位,即字节1(高1、低1),字节 2(高 2、低 2);其次交换高、低四位的顺序,即字节 1(低1、高1),字节2(低2、高2),并将此时字节1的高四位和字节2的低四位相组合,组成一个新的字节1’,即(低1、高2),将此时字节1的低四位和字节2的高四位相组合,组成一个新的字节2’,即(低2、高1);最后将得到的字节1’、字节2’分别写入到文件1、2中,重复执行此过程直到文件读取完毕。
位合并技术实际上是位拆分技术的逆过程,假设按照上述拆分技术规则得到了文件1和文件2,按照如下过程进行位合并:分别读取上述两个文件各一个字节的数据,分别分离这两个字节的高、低四位,即假设读取的是上述位拆分技术拆分的数据,即字节1’(低1、高2),字节2’(低2、高1),此时将字节1’的高四位和字节2’的低四位组合成一个新的字节1,即字节1(低1、高1);将字节1’的低四位和字节2’的高四位组合成另外一个新的字节2.即字节2(低2、高2);然后分别交换字节1、2的高、低四位,此时字节1、2分别变为字节1(高1、低1),字节2(高2、低2);按照字节1在前,字节2在后的顺序将这两个字节写入到新文件里,重复执行直到文件1和文件2结束。
由于云存储提供商可以直接获取云端各类用户的数据,所以用户存储数据时为了不让云端知道,可以在客户端和 HDFS集群之间添加一个接口从而保护数据,该接口是位于客户端之上的。如图1所示。
图1 存储策略架构图
元数据(Metadata)是最小的数据单位,在云存储中元数据主要分为两种,即元数据文件和内存元数据,其能够维护HDFS(分布式文件系统)中文件和目录的信息。当客户端需要写入若干文件时,首先在接口中对文件进行拆分(按照之前提到的拆分规则),在拆分的过程中,生成相关的元数据信息,比如原文件名到拆分文件名的映射文件、拆分文件名到拆分文件元数据的映射文件、拆分文件元数据等。然后将拆分后的文件和相关元数据,按照原HDFS写入文件的方式一同上传至HDFS中,其中名字节点存储相关元数据,数据节点存储拆分的文件。
当客户端需要取某个文件时,首先从名字节点获取该文件所在的元数据信息,然后从数据节点读取该文件被拆分后的所有拆分文件,并在接口中对拆分文件进行位合并并缓存到客户端。
除了HDFS原有的元数据之外,又增加了两个映射文件和两类元数据。两个映射文件分别为 Origina1ToSp1itFi1eMap(原文件名到拆分文件名的映射文件)和 Sp1itToMetadataMap(拆分文件名到拆分文件元数据的映射文件)。两类元数据分别为Origina1Fi1eMetadata(原文件元数据)和Sp1itF1ieMetadata(拆分文件元数据)。这两类映射文件是为了在NameNode中查找原文件拆分后的拆分文件所必须的信息。在读取原文件时,首先在NameNode内查找原文件名到拆分文件名的映射文件,得到拆分文件名,然后查找拆分文件名到拆分文件元数据的映射文件,得到原文件被拆分后拆分文件的元数据,这样才能连接DataNode获取原文件被拆分后的各个拆分文件。
当C1ient端将所有原文件拆分得到拆分文件之后,会将生成的拆分文件元数据、原文件名到拆分文件名的映射文件、拆分文件名到拆分文件元数据的映射文件一起上传至 NameNode的内存中,拆分文件会被存储在DataNode。
现今云存储的技术发展地非常迅速,其数据安全问题开始越来越受到人们的重视,非常值得人们好好研究。本文从数据存储方向入手,分析了当前主流数据存储策略,利用移位和扩散的基本思想,给出了位拆分、位合并技术的规则,设计了HDFS中数据存储的策略,构建的策略能够不依赖于密钥就可以加密文件,无需管理密钥,能够保护数据的隐私。
[1]黄汝维,桂小林,余思,庄威.云环境中支持隐私保护的可计算加密方法[J].计算机学报.2011.
[2]毛剑,李坤,徐先栋.云计算环境下隐私保护方案[J].清华大学学报(自然科学版).2011.
[3]周静岚.云存储数据隐私保护机制的研究[D].南京邮电大学.2014.
[4]孙辛未,张伟,徐涛.面向云存储的高性能数据隐私保护方法[J].计算机科学.2014.
[5]Sugumaran,M.;Murugan,B.B.;Kamalraj,D.,"An Architecture for Data Security in Cloud Computing," Computing and Communication Technologies(WCCCT),2014 World Congress on,vol.,no.,pp.252,255,Feb.27 2014-March 1 2014.