当前位置:文档之家› 云计算中一种安全有效的数据存储方案

云计算中一种安全有效的数据存储方案

云计算中一种安全有效的数据存储方案 摘 要: 引入可信的第三方TPA,基于RSA算法、Hash函数和DES算法,为云计算提出一种能为数据提供机密性和完整性的安全存储方案SCBRHD。该方案利用RSA算法、Hash函数及DES算法进行加密来确保数据的机密性和存储安全。数据通过二次加密存储在云服务器,加密、解密和认证只涉及终端用户和TPA。给出了方案的架构模型和算法流程,并在Linux平台的Cloudsim云计算仿真环境下对其进行仿真分析,验证其有效性。

关键词: 云计算; 机密性; 完整性; 存储安全; 加密解密 中图分类号:TP393 文献标志码:A 文章编号:1006-8228(2016)06-43-05 Abstract: In this paper, with the introduction of trusted third party TPA(Third Party Auditor), the SCBRHD scheme is proposed to provide cloud computing with a security data storage of confidentiality and integrity. The scheme uses RSA encryption algorithm, Hash function and DES algorithm to ensure the confidentiality and security of data storage. The data is stored into the cloud server after twice encrypting; the encryption, decryption and authentication only involve the end-user and TPA. The architecture and algorithm of the scheme are also given, and the scheme is simulated in Linux Cloudsim cloud computing environment to verify its validity. Key words: cloud computing; confidentiality; integrality; storage security; encryption and decryption 0 引言 云计算是一种新出现的技术,通过互联网提供各种硬件、软件和应用服务[1]。由于其资源利用率高、大容量的存储空间、超强的处理能力等特性,使其成为未来的主流计算模式。但由于云计算的开放性特点,通过互联网为终端用户提供各种服务,所以存在潜在的安全隐患,数据的隐私保护和安全存储问题成为云计算推广的巨大障碍[2]。据调查,74%的IT行业行政主管和办公室人员因为安全和隐私风险不希望把他们的信息存储在云服务器上。因此,需要新的服务体系结构来处理终端用户在云服务器上存储数据的安全问题。为云计算建立安全的数据存储方案,成为云计算为终端用户提供可靠服务的一个重要问题[3]。 针对当前云计算存在的安全风险,不少学者对云计算的数据安全存储和隐私保护问题进行了研究。Choudhury等人[4]提出一种认证框架,在用户访问云服务器之前其合法性被强制验证,通过提供管理认证,在用户和云服务器之间建立会话。通过评估,该方案可以抵制各种攻击如人为攻击、重放攻击和拒绝服务攻击等。XiaoChun YIN等人[5]基于PKI体系,利用椭圆曲线密码原理(Elliptic Curve Cryptography,ECC),为云计算提出一种安全的数据存储方案。 本文引入可信的第三方TPA,基于RSA算法、Hash函数和DES算法,为云计算提出一种能为数据提供机密性和完整性的安全存储方案SCBRHD。给出了方案的架构模型和算法流程,并在Linux下的云计算模拟仿真环境Cloudsim对其进行仿真分析,验证其有效性。 1 参与者及相关加密算法介绍 1.1 参与者及相关符号说明 本文提出的SCBRHD,提供安全的数据存储,涉及到三个参与者,分别是终端用户(End-User,EU)、可信第三方(Third Party Auditor,TPA)和云服务器(Cloud Service,CS)。这些参与者及其角色描述如表1。 1.2 相关加密算法介绍 RSA算法:RSA是一种公钥加密算法。RSA可用于密钥交换、数字签名或数据块加密。RSA用一个可变大小的加密块和一个可变大小的密钥进行加密。在SCBRHD中,RSA用来生成终端用户和TPA的对应密钥,这些密钥用来对文件进行加密和解密。 Hash函数:Hash函数运算可以把任意长度的消息生成固定长度的摘要。对每一个消息,Hash函数都能产生一个较短而固定长度的摘要,且都是独一无二的。这对Hash函数安全性方面的主要要求是单向函数(不可逆的),且他们不能产生冲突。在SCBRHD中,通过Hash函数校验,能维持数据的完整性。 DES算法:DES即数据加密标准,是一种对称密钥块密码,为64位块大小和56位的密钥。在加密端,DES利用64位的普通文本产生64位的密码文本,在解密端,DES利用64位密码文本产生64位的块文本。在SCBRHD方案中,TPA利用DES算法来为EU的文件提供更可靠的安全服务。TPA在往云服务器发送文件之前执行DES算法。利用DES算法,可以为用户提供更安全的数据。 2 SCBRHD的架构模型和算法流程 本文提出的SCBRHD方案,利用RSA算法、Hash函数和DES算法及相关加密工具来为云计算提供安全的数据存储服务。在SCBRHD中,EU和TPA分别有两个密钥,即公钥和私钥。SCBRHD对数据进行两次加密,首先通过EU私钥进行加密,再由TPA公钥进行加密,这为EU提供数据的机密性。该方案利用RSA算法和DES算法来执行加密和解密,进行数据认证,通过计算Hash摘要,进行比较,确保数据的安全性。该方案的框架模型结构图如图1所示。 SCBRHD方案涉及以下操作。 ⑴ 密钥产生:终端用户EU和可信第三方TPA分别利用RSA算法为自己产生一对密钥。其中TPA的私钥为pk1,EU的私钥为pk2;TPA的公钥为d1,EU的公钥为d2。 ⑵ 密钥共享:TPA密钥集合{pk1,d1}在TPA上,EU的密钥集合为{pk2,d2},在EU上。TPA使用安全信道和EU共享器公钥d1。 ⑶ 加密:首先,EU利用其公钥d2对数据文件F进行加密E(F,d2),然后进行Hash运算,生成Hash摘要H(E(F,d2)),接着,用TPA公钥d1对E(F,d2)进行二次加密E(E(F,d2),d1)。之后,Hash摘要H(E(F,d2))再次由d1加密E(H(E(F,d2)),d1)。此时,这两个包为E(E(F,d2),d1)|E(H(E(F,d2)),d1),被附加在数据上发往TPA。 TPA存储数据的Hash摘要,以确保数据的完整性。TPA用其私钥对接收到的E(E(F,d2),d1)进行解密,得到E(F,d2)。接着,TPA通过DES算法产生一个随机密钥k对E(F,d2)进行加密,然后将再次加密后的数据发往CS。这样,数据的安全性得到进一步保障,而产生的随机密钥由TPA存储,用于将来解密。 ⑷ 解密:当要求验证数据文件的正确性时,经DES加密后存储在云服务器上的数据文件{Encrypt(E(F,d2))}发送到TPA。TPA首先通过自己存储的DES随机密钥K对数据进行解密;然后TPA生成从CS中获得加密文件的Hash摘要;接着,TPA对数据文件原始加密的Hash摘要进行解密,并将其与新生成的Hash摘要相比较,若一致,说明数据文件没有被修改过,是安全的。这样,可以确定EU请求的数据文件是否正确。传送到EU的数据文件是由其公钥加密,所以也只有EU能解密。EU接收到加密文件后,用其自身的私钥解密,从而可以读取数据文件。 图2给出EU、TPA和CS之间对数据文件进行加密、存储到云服务器的过程,以及EU读取数据时TPA对数据文件的校验认证、解密,EU的解密过程。 SCBRHD方案涉及的算法对应三个参与者交互的过程,可以细分为三个算法。算法1给出数据由EU存储到CS的加密过程。算法2进行验证,给出TPA验证数据完整性的过程。算法3给出文件恢复过程,指数据从CS通过TPA,然后到EU的过程。 3 安全性分析及性能分析 3.1 安全性分析 本文提出的SCBRHD方案,数据通过强有力的加密算法进行加密,并由Hash摘要进行验证,对非授权用户是保密的。因此数据的机密性和完整性就可以得到保证。以下是对SCBRHD方案的安全性分析。 数据的正确性和完整性:在SCBRHD中,只有EU能够对从可信第三方TPA接收到的数据进行解密。因为该数据是由EU的公钥d2加密,所以,只有其对应的私钥pk2可以解密,而私钥只有EU知道,因此数据的正确性得到保证。当EU想读取存储在CS上的数据时,TPA要求对来自CS的数据执行数据完整性验证,这保证了数据的完整性。 鉴定认证:EU利用自己的密钥标记Hash摘要,其他人无法对其标记,因此TPA很容易找出发送消息者进行鉴定。如果其他任何人从CS下载该数据文件,通过任何方式执行修改后再上传到CS,而上传的时候需要EU的私钥pk2对文件进行标记,因此,TPA很容易识别一个用户是否合法。 数据机密性:数据在可信第三方TPA和云服务器CS之间加密和编码,避免了云服务器知道文件的内容,保证了文件的隐私和机密性。数据只以密文形式在网络上传输,所以入侵者无法从传输的文件中知道文件的具体信息。在SCBRHD中,CS只存储加密的数据文件,不参与加密解密,所以CS无法得到文件的任何信息,能确保数据的机密性。 预防网络攻击:EU必须通过互联网才能将数据存储到CS上,EU通过互联网可以从CS中访问自己的数据,这就有被入侵者攻击的危险。但在SCBRHD中,传输的数据是通过不对称加密和使用一次Hash摘要。传输的数据包含加密的Hash摘要,而入侵者无论扮演何种角色都难以解密。若有人对数据和Hash摘要进行修改,TPA很容易就能证实,最终将

相关主题