加密存储(精选5篇)
加密存储 篇1
0 引言
云计算[1]是近几年最热门的互联网技术,同时也是发展最为迅速的互联网服务模式。随着云计算重心的迁移以及大数据的兴起,存储即服务(Storage-as-a-Service,Saa S)作为云计算的支撑技术迅速发展,同时单独的云存储服务(cloud storage)在商业上也得到广泛的应用,比如Drop Box、Google Drive等。
云存储服务的推广,业界很快发现围绕个人数据的可用性和安全性是云存储服务推广的最大障碍。用户对于云存储服务提供商的可用保障和安全保障能力心怀疑虑,从而阻碍了用户将更多的数据和业务转移到云平台上。
如今现有的加密云存储系统,主要有如下几类:使用用户私钥加密数据,但这样无法消除重复数据,对于不同用户的相同文件,因为私钥不同, 加密出来的文件不一样, 例如E (Ka, f )→Ca≠Cb←E(Kb, f ),当Ka≠Kb。也有使用系统分配密钥加密文件的,这样做到了消除重复数据,但是众多客户端使用相同密钥,难以抵抗伪造客户端的攻击。对此,文献[2]设计了一套能消除重复数据的加密云存储系统。系统中使用消息自加密确保存储系统中没有重复数据;使用带认证的加密协议确保密钥的安全签发与传输;使用高级加密算法确保数据的安全性。本文在介绍该系统的基础上,通过在系统中加入RS纠删码提出了一套可消除重复数据的加密云存储系统,分析了数据的安全性和完整性保护性能。
1 系统概述
如图1 所示,文献[2]提出的系统由代理服务器、密钥服务器、存储服务器组成。代理服务器主要负责数据资源计算部分以及用户请求的处理;密钥服务器主要负责分发文件加密密钥;存储服务器主要负责数据在冗余备份条件下的存储。其运作流程如下:
用户(User)通过终端将数据文件f (file)上传至该系统。代理服务器(Proxy Server)可以视为存储服务器的客户端,收到文件后计算出文件f的信息摘要h =H( f),然后通过OPRF协议[3],和密钥服务器(Key Server)通信获取文件加密密钥K =Hmac(Ks,H(f ))。本次通信结束,密钥服务器没有得知需要加密的消息h ,而代理服务器也不曾拥有密钥服务器的密钥,同时若两条消息相同h1=h2,则能通过HMAC算法保证在同一个密钥Ks下生成的消息摘要是相同的
接下来,代理服务器使用K为密钥加密文件得到加密后的文件Cf=E(K, f ),然后使用用户私钥Ku加密文件密钥K得到加密后的文件密钥Cu=E(Ku, K) 。代理服务器首先会查询存储服务器上是否已经存在文件Cf,若是存在则无需再次存储Cf,只需要存储用户对应的文件密钥Cu;若是不存在,则代理服务器将Cf和Cu作为一组用户数据送到存储服务器(Storage Server)上,由于Cu只是文件密钥加密文件,数据长度有限,故直接以3 备份方式存在数据库中;而Cf是加密后的用户数据,大小和用户上传文件直接正相关,是占据存储空间的主要部分,故使用纠删码(Erasure Code)中性能稳定的RS码编码后存储,编码后不仅能均衡单个存储节点存储压力和网络通信负担,还能使数据有一定的容灾能力。如图中采用的RS编码生成2 个数据块(D1, D2) 和1个编码块(C1) ,3 块分别存储于不同存储节点,单一节点上的数据损坏或者丢失并不会影响用户数据的完整性。
若用户想要获取云存储端的个人数据,则代理服务器发送获取用户文件的命令到存储端,存储服务器则从各个节点读取数据,通过RS译码还原出加密文件密钥Cu=RS(D1,D2,C1),然后将加密文件Cf和加密文件密钥Cu一起返回代理服务器;代理服务器使用用户私钥Ku解密加密文件密钥Cu得到文件密钥K =D(Ku,Cu),再使用K解密文件Cf得到文件f =D(K ,Cf);最后将解密后完整的文件f发送至用户。
2 数据的隐私性分析
在分析数据隐私之前,先介绍下MLE (Message-Locked Encryption)[4],简单来说即利用消息M本身产生密钥K ,比如使用常用的MD5、SHA得到K =H(M) ,然后使用该密钥加密消息本身生成密文C=E(K,M)。使用MLE能和不加密的系统一样,很容易实现消除重复数据,因为对应已经指定的消息M生成的密钥K是一定的;但是当用户文件集比较小的时候,攻击者可以通过暴力破解加密文件,造成用户隐私泄漏。而在本系统中,特地设立密钥服务器来加强MLE中的K ,通过散列消息认证码K =Hmac(Ks,H(M ) )使得文件摘要变得不可预测,同时结合OPRF协议[3]将服务器密钥Ks和消息摘要H(M) 泄漏概率降至最低。而在系统其它过程中只要用户私钥没有被窃取,攻击者即使拿到了加密文件,也面临的是破解AES加密的问题,就现在来说几乎是不可能的。
3 数据的容灾性分析
在设计的系统中,容灾性是由冗余备份所提供的。而本系统中冗余备份是由RS编码实现,而RS编码的纠错性能早已有深入的研究[5]:将k个源数据包冗余编码为n(n>k) 个编码包,只要有还有k个完整的包就能恢复出完整的源数据。假设使用RS(n,k,t) 编码,那么码率为r =k/ n ,假设存储中单位长度的数据(数据块)出错概率为p且互不影响,令q =1-p ,原数据长为k个单位长度,那么能顺利将数据读取出来的概率为∑ti=0Cniqn -ipi。对比数据存储时未处理、3 备份和RS(15,8,3)编码,得到下表:
从上表容易看出,当数据块出错概率为p =1 /100 时,RS编码冗余备份可以在更高的恢复概率下降低3备份所造成的存储空间浪费。
4 结束语
如何确保云存储系统中数据的安全性和隐私性是云计算面临的难题。本文介绍一种基于摘要算法、加密算法、加密协议的能消除重复数据的加密云存储系统:针对重复数据过多,使用MLE的方式消除重复数据;然后通过设立一个密钥服务器,并利用OPRF协议通信来弥补MLE的缺陷,更好的保护用户隐私的安全。最后使用纠删码对用户数据进行备份,提高存储效率的同时提升数据的容灾能力。适合部署在如今纷杂的个人云存储平台上。
参考文献
[1]Peter Mell,Timothy Grance.NIST Special Publica-tion 800 -145:The NIST Definition of Cloud Computing-[S].Natio nal Institute of Standards and Technol ogy,Se-ptember 2011.
[2]Keelveedhi S,Bellare M,Ristenpart T.Dup LESS:ser-ver-a ided encryption for deduplicated storage[C].Pres-ented as part of the 22nd USENIX Security Symposium(USENIX Securit y 13).2013.
[3]C AMENISCH,J.,N EVEN,G.,AND SHELAT,A.Simul-atableadaptive oblivious transfer[J].In EUROCRYPT 2007(B arcelona,Spain,May 20–24,2007),M.Naor,Ed.,vol.4515of LNCS,Springer,Berlin,Germany,pp.573–590.
[4]Bellare M,Keelveedhi S,Ristenpart T.Messageloc-ked e ncryption and secure deduplication[M].Advances in Cryptology–EUROCRYPT 2013.Springer Berlin Heidel-berg,2013.
[5]Peterson W W,Weldon E J.Error-correcting codes[M].MIT press,1972.
加密存储 篇2
关键词:实时动态密钥,加密存储网,方案设计
1. 前言
随着计算机技术和网络技术的不断发展, 人们对信息和网络的依存度越来越高, 网络信息安全的问题也逐渐成为人们为之头疼的事情。网络数据的安全存储是保证信息机密性的重要应用, 网络安全主要是针对网络物理信道和传输协议的安全, 除此之外还有网络上的各种信息存储资源等。目前, 网络上所容纳的信息资源都具有拍字节, 不同的数据可以来自不同的数据源, 例如有来自半结构数据、无结构数据等。这些结构数据可以包含各种机密记录, 因此, 为了保存这些数据, 就必须拥有一个足够大容量的存储空间, 同时也需要一个良好的安全保密措施。为了保密这些数据的安全, 加密的方法就得到了引入和发展。
加密算法主要存在于标准实现, 例如DES、3DES, 还有一些网络安全协议和光纤通道的安全协议等。在进行加密处理的时候, 密钥的执行需要由某种安全加密策略生成加密器来确定, 在这一过程中, 为了维护加密操作的整个安全性, 就必须完全控制密钥生成的处理, 并放置到安全的地方, 从而形成有效的密钥数据管理措施。数据加密通过对明文进行复杂的加密操作, 以达到无法发现明文和密文之间、密文和密钥之间的内在关系。另一方面, DBMS要完成对数据库文件的管理和使用, 具有能够识别部分数据的条件。据此, 只能对数据库中的数据进行部分加密。其中, 索引字段是不能加密的, 因为数据库文件一般都会建立一些索引, 以方便查询, 它们的建立和应用必须是明文状态下的, 否则的话将失去索引的作用。其次, 关系运算的比较字段是不能加密的, DBMS要组织和完成关系运算, 参加并、差、积、商、投影、选择和连接等操作的数据一般都要经过条件筛选, 这种条件选择项必须是明文, 否则DBMS将无法进行比较筛选。
2. 存储网的加密
在整个的数据存储中, 一些静态的数据加密可以应用到数据中心的不同层次和级别上, 例如, 通过主机的之行来加密, 通过光纤信道的交换加密, 以及对应用软件的加密等实现数据的安全性等。
(1) 主机执行加密。在这过程中, 主机加密被附加在主机上的加密卡或者磁盘中, 由HBA的芯片在执行, 数据在离开主机前加密, 这样主机与磁盘阵列的信道就可能会是安全的, HBA加密是建立在HBA芯片基础上的硬件加密, 因此不会冲击硬件CPU的性能。
(2) 光纤信道的交换加密。光纤信道的交换加密是发生在阵列中的, 然后再由路由传到磁盘阵列上, 其最大的优点就是可以节约应用于加密的成本消耗。
(3) 应用软件的加密。应用软件的加密是被嵌入到了某个硬件中, 这种硬件通常从交换阵列到路由再到磁盘的数据传输通道。
在大规模的、高性能的存储系统中, 要求实现可扩展和高性能的存储安全技术, 是推动加密存储技术发展的动力。存储网的加密存储安全主要包括认证服务、数据加密存储以及安全管理等。其中, 访问控制服务是实现用户进行身份认证的过程, 其功能主要有:用户可以对经管员或文件所有者授权的文件进行操作;管理者也可对一些必要的管理进行操作, 例如一些用户管理、数据的备份等, 相反, 对于那些不能访问的用户加密的数据则不能进行操作。
3. 实时动态密钥的加密存储及其方案
3.1 加密存储的内容
加密存储是对指定的目录和文件所进行的加密, 在加密之后由进行保存的过程。它从整体上实现了敏感数据的存储和传输后的机密保护。加密存储的一个特点就是进行必要的安全维护, 比如, 采用用户帐户注册和注销, 对用户进行授权, 特殊情况对用户的权利进行收回等。安全日志的审计是用户记录系统与安全相关的活动事件, 通过密钥存储, 为系统管理员对必要的审计信息进行监督和管理。
3.2 双层密钥的获取结构
这种结构所获取的多是在帐户口令和主密钥之间存在的两级关系的映衬, 前一级是利用各帐户口令, 进行秘密信息获取的逻辑隐射;后一级是采用主密获取密钥的隐射。在这种处理方法中, 磁盘的主密钥和用户的口令是相互分离的, 磁盘的密钥所容纳的口令不会收到任何信息的影响, 为整个帐户的进入、密钥的恢复提供了基础的要素保障。
3.3 实时加密存储动态的密钥管理
一般来说, 要想进入到加密存储实时密钥管理的正常状态, 用户在登陆后, 第一步就是要获得磁盘的主密钥, 其方案系统的整个结构包括注册后的帐号, 注册的口令, 还有时间序数等。把这些结构组合起来, 就构成了一个逻辑的开关函数。整个函数所生成的磁盘密钥种子进入磁盘, 然后再次预设加密的模块检测, 防止用户在进行身份认证的时候发生错误。
3.4 实时动态的密钥计算设计方法。
实时动态密钥是指在每次的区域里进行写操作时, 如果时间允许, 再进行一次密钥, 在进行读操作时, 保持不变, 用读加密的操作来进行正常的运转, 然后取得一次加密的效果。整个磁盘的主密钥是由系统管理员来设置一个参数, 获得一组模块的素数之和, 没一个身份所对应的口令, 其时间序数可选择的ID, 为登陆者的身份, 而PW则是登陆的口令, 在通过加密密钥的验证处理之后, 得到的相应的密文, 会在磁盘上注入, 等到密钥建立以后, 用户可向系统管理员申请注册帐户和口令。登陆的用户获取了密钥之后, 再通过密钥验证数据, 就可判断出是否验证错误。
3.5 方案分析
首先, 对加密存储进行安全性的分析。安全性是针对外部攻击者和内部攻击者而提出来的。外部攻击是不是指没有帐户的用户攻击, 其主要攻击方还是扫描磁盘, 进而从磁盘中获得主密钥。
其次, 内部攻击者, 作为有账户的攻击者, 其主要攻击方法是通过口令攻击和假冒帐号攻击来实现的。在这种攻击中, 其必须获得磁盘的主密钥, 必须使用帐户和口令, 通过口令的检测。另外, 在无法证明攻击者能够借助自己的口令生成其他帐户口令的时候, 攻击者从口令获得的其他用户的口令概率不会高于猜测口令的概率。
从以上分析可以看出, 磁盘读取数据和写入数据的时间与调密码算法所花费的时间相比, 对整个加密系统来说, 都是一致的, 只是所需的额外的增加是在用户注册的设置逻辑口上的时间耗费。磁盘加密时所获得的磁盘主密钥是决定其他性能的关键因素。
4. 结束语
实时动态密钥的加密存储不仅对理论上的密码算法提出了要求, 而且还对实际应用上的获取和保存密钥提出了更多的要求。实时动态密钥加密存储是一项综合技术, 它具有强大的功能特效, 对整个网络的安全和信息安全有着非常重要的作用。
参考文献
[1]袁征, 温巧燕, 刁俊峰.基于水印和密码技术的数字版权保护模式[J].北京邮电大学学报, 2006, (05) .
[2]林琳, 罗安.基于网络安全的数据加密技术的研究[J].现代电子技术, 2004.
[3]张磊, 王丽娜, 王德军.一种网页防篡改的系统模型[J].武汉大学学报 (理学版) , 2009, (01) .
[4]林海元, 吕丽民.基于无损压缩算法的文件加密标记的实现[J].浙江工业大学学报, 2010, (04) .
[5]张蓉, 刘启茂.基于Lotus/Notes Domino的Web站点的设计与实现[J].计算机与数字工程, 2002, (06) .
加密存储 篇3
云存储基于云计算进行扩充和发展, 其核心就是实现海量的数据存储和管理。云存储利用各种网络存储设备以及相关应用软件, 通过集群应用、网络技术和分布式文件系统等实现海量数据存储和业务访问[1]。
云存储可以使用户通过任何网络设备、在任意时间、任意地点接入到云, 从而达到快速访问数据的目的。云存储方便、灵活、价格低廉, 在很多领域云存储都可以满足大规模数据存储的需求, 因此被企业和个人广泛使用。然而云存储中的数据安全问题成为用户关注的焦点, 即如何保护敏感数据的机密性以及如何保护合法用户的访问。其中, 访问控制和授权则成为现阶段实现安全地访问云存储的关键技术以及主要内容。在访问控制中, Thomas首次提出了两种传统的访问控制, 即自主访问控制以及强制访问控制[2], 但是, 这两种访问控制并没有适应分布式环境。基于角色的访问控制在1996年被Sandu等人提出[3], 该访问控制借助引入的一个“角色”, 从而可以实现“用户-角色-权限”模式。然而, 这几种类型的访问控制模型都只能解决数据的相对完整以及数据的合法访问, 它并不能保证在通信过程中数据是否被非法拦截。Fuzzy IBE加密方法被Amit Sahai和Brent Waters提出, 在该加密方法中, 属性加密的概念被首次提出。直到2006年KP-ABE的概念被Sahai和Brent Waters首次提出, 通过这种加密方法可以更好地加密解密数据。论文首先研究了属性加密以及访问控制, 使用基于角色的访问控制方法以及属性加密技术提出了基于属性加密的云存储访问控制系统, 该访问控制系统在实现合法访问的同时, 能够有效确保数据的完整性和机密性。
2 云存储的相关知识
2.1 在云存储中基于角色的访问控制模型
使用基于角色的访问控制模型 (Role-Based Access Control, RBAC) 提出基于属性加密的云存储访问控制系统。基于角色的访问控制模型RBAC的核心技术是采用传统的访问控制方法分离主体、客体。主体以及客体并不直接被赋予某种访问权限, 而是将访问权限分配给某一个角色, 继而, 当用户被确定为某个角色时, 用户也就会具有这个角色所被赋予的所有权利。
2.2 基于属性的加密算法
将基于身份的加密 (Identity Based Encryption, IBE) 进一步延伸扩展就得到基于属性的加密 (Attribute Based Encryption, ABE) [4]。基于属性的加密体制包括两种, 分别是基于密文策略的属性加密系统 (Ciphertext-Policy ABE, CP-ABE) 以及基于密钥策略的属性加密体制 (Key-Policy ABE, KP-ABE) [5]。在基于密钥策略的属性加密体制中, 一组属性可以和密文相关联, 用决策树来约束解密密钥。用户如果想要得到解密密钥, 前提条件是用户属性和访问控制策略树得以匹配。对加密的明文没有任何控制。基于密钥策略的属性加密在大规模网络环境中的密钥管理非常适用。基于密文策略的属性加密中, 访问控制策略树与密文、解密密钥一起被描述为一组属性约束。云计算资源具有高开放性、高集中性以及易扩展的特性, 比较基于密文策略的属性加密体制以及基于密钥策略的属性加密体制这两种体制, 前者则要更适合于云存储系统, 密钥管理也会更容易、更快捷。
3 云存储访问控制系统解决方案
3.1 系统数据类别
由于在实际系统中不需要加密全部数据, 并且为了有效提高加密技术的效率, 考虑将云存储环境中的数据分为非敏感数据以及敏感数据这两类。例如, 在档案管理系统中的图片、公告和视频等可以被用户共享而不需要加密的数据, 就被叫做非敏感数据;档案管理系统中的合同、档案等关键数据则被叫做敏感数据, 对于这类敏感数据则需要使用加密技术加密。
3.2 属性加密机制
云存储环境中数据加密访问控制的难点是对密钥的管理, 如果在访问控制中仅用对称加密并不能保证秘钥的安全, 相反, 如果使用非对称加密则能够使系统的安全性得以提升, 非对称加密算法比对称加密算法要相对复杂, 但是在直接加密数据文件时算法的效率很低。试图在云存储环境中实现数据加密的高效访问控制, 必须保证密钥以及数据被安全有效的加密。系统采用属性加密机制在访问控制中的优势, 并且结合高效的对称加密算法完成加密, 最终实现多用户安全、高效地访问云数据。云存储中基于属性加密的数据访问控制架构如图1所示。
3.3 系统框架
论文描述的基于属性加密的云存储访问控制系统由四个模块构成, 分别是基于角色的访问控制模块、云存储模块、主信息管理模块以及基于属性的加密解密模块。基于属性加密的云存储访问控制系统如图2所示。
在基于属性加密的云存储访问控制系统中, 用户会首先发出需要进行资源访问的请求, 当基于角色的访问控制模块收到该请求后, 将对用户身份进行验证, 如果用户身份验证失败, 则给用户返回失败消息, 结束该访问请求;如果用户身份验证成功, 就需要进一步查看资源, 确定该资源的类型。如果请求的资源是非敏感数据, 即未加密数据, 则基于角色的访问控制模块将给用户分配具备一定权限的角色, 然后转向云存储模块使用数据。相反, 如果用户请求了一个敏感资源即敏感数据时, 则需要从主模块中寻找适合的用户属性, 如果用户属性与资源访问控制策略一致, 就会依照基于属性加密解密模块完成明文的加密或密文的解密。每个模块的内容详细介绍如下:
(1) 基于角色的访问控制模块
基于角色的访问控制模块的作用是验证用户信息以及访问控制非敏感数据。如果用户请求访问资源, 基于角色的访问控制模块将给云授权中心上传该用户信息, 由云授权中心审核用户信息, 如果用户信息满足系统的安全规则, 访问控制模块将进一步确定所需访问资源的类型;如果访问的是非敏感数据, 则访问控制模块授予用户所需的角色, 然后将相应的访问权限赋予用户角色。此后, 用户就可以直接把数据提交给云存储模块并访问资源。如果访问的是敏感数据, 用户相关信息会被直接传递给加密和解密模块。
(2) 主信息模块
主信息模块的主要任务是保存用户属性的相关信息、对称加密 (Data Encryption Standard, DES) 算法生成的对称密钥以及私钥。
(3) 云存储模块
云存储模块的主要任务是保存在访问控制模块中的没有加密的明文以及加密后的密文。
(4) 属性加密和解密模块
属性加密和解密模块由三个功能构成, 分别是对称加密和解密功能, 属性加密功能以及解密功能。“对称加密解密功能”使用对称加密算法生成对称密钥, 使用该对称密钥加密明文以及解密密文, “属性加密功能”使用基于密文策略的属性加密算法加密对称密钥, 获得加密后的对称密钥, 然后将该对称秘钥存储在信息管理模块的主体中。“属性解密功能”在加密后根据用户的身份信息搜索用户的私钥和对称密钥, 运行基于密文策略的属性加密算法解密加密后的对称密钥后获得对称密钥。
属性加密和解密模块使用对称加密算法实现数据加密, 其复杂性低于非对称加密算法, 加密效率高, 但密钥是不安全的, 基于此, 再通过基于密文策略的属性加密算法加密该不安全的对称密钥, 基于密文策略的属性加密算法的优点是非常适合解密分布式环境中的非固定信息, 在加密时加秘方根本不需要了解解密方, 解密时要求解密方按照加密方的规则对密文进行解密得到明文。
基于密文策略的属性加密算法包括以下四个部分:
(1) 系统初始化:选取随机算法的输入消息I, 设置一个素数q, 密钥分发中心KDC中取Uj∈U, 并设置属性Aj, 每一个KDC包含两个随机指数Xi, Yi∈Zq, KDC的私钥是, 公钥是。
(2) 密钥生成:利用Ks=Key Gen (KS, A) , 以及用户U属性生成用户的私钥
(3) 加密:选择一个随机数s∈Zq, 一个随机向量v∈Zqh, h是访问树的叶节点的数量, 矩阵W的行, 性别 (民族) , 籍贯, 单位+职称 (职务) , 研究方向为 (或从事) 。是r, 得到密文
4 系统实施及安全分析
4.1 系统实施
基于属性加密的访问控制系统平台是Linux ubuntu 12.04, 实验环境安装工作站为VMware8, 并安装Hadoop0.20.0, 使用My Eclipse10开发环境。
系统拓扑图如图3所示。
基于属性加密的访问控制系统主要包括身份验证服务器以及若干个存储节点。其中, 身份验证服务器需要对用户的身份进行验证以及对非敏感数据的访问, 这两项控制主要通过基于角色的访问控制, 用户根据属性验证生成策略, 确定是否是一个授权用户访问数据资源, 如果用户属性和访问策略一致, 那么用户将被授权允许访问, 否则提示未经授权的响应信息。访问控制系统的存储节点通过对称加密算法对敏感数据进行加密或解密, 使用基于密文策略的属性加密算法加密和解密密钥, 并完成云环境中的数据存储。
4.2 系统分析
通过仿真实验来验证基于属性的加密算法的访问控制, 实验结果如图4和图5中, 很明显, DES加密和解密的性能比基于密文策略的属性加密体制强。当使用DES对称加密算法加密系统中的敏感数据时, 能够确保数据的完整性以及机密性, 对称加密算法的高效特点, 即使系统性能下降, 但是也在用户许可接收的范围, 此后, 通过基于密文策略的属性加密DES对称密钥, 以保证密钥的机密性。
5结论
针对云存储环境中数据安全问题, 论文首先研究了属性加密以及访问控制, 利用基于角色的访问控制技术以及属性加密技术提出了基于属性加密的云存储访问控制系统, 该访问控制系统在实现合法访问的同时, 能够有效确保数据的完整性和机密性。最后通过仿真实验证明了访问控制系统的可靠。
摘要:云存储技术迅猛发展的同时也引起诸多安全问题, 在云存储环境中, 数据被外包给云服务器而处于用户控制之外, 如何实施新颖可信的访问控制技术就变得非常关键。作为一类新兴的公钥加密技术, 基于属性的加密算法以其灵活性被广泛应用在云存储访问控制方案的设计中。文章提出了一种基于属性加密的云存储访问控制方案, 方案可以实现安全的云存储, 系统采用基于角色的访问控制技术实现身份验证、对属性的加密/解密以及对非敏感数据的访问。最后通过仿真实验证明该方案是一种可以保证数据完整性和机密性的云存储访问控制。
关键词:云存储,数据安全,访问控制模块,属性加密算法
参考文献
[1]李乔, 郑啸.云计算研究现状综述[J].计算机科学, 2011, 38 (4) :32-37.
[2]孙国梓, 董宇, 李云.基于CP-ABE算法的云存储数据访问控制[J].通信学报, 2011, 32 (7) :147.
[3]傅颖勋, 罗圣美, 舒继武.安全云存储系统与关键技术综述[J].计算机研究与发展, 2013, 50 (1) :136.
[4]牛德华, 马建峰, 马卓, 等.基于属性的安全增强云存储访问控制方案[J].通信学报, 2013, 34 (Z1) :276.
加密存储 篇4
在传统模式下, 用户若要使用数据文档, 首先要从本地传统数据存储介质中读取出数据。存储于本地的数据文档主要是通过用户设置的账号和密码来确保其安全, 同时这种数据文档存储方式受到本地存储空间的限制, 在现有数据文档量急剧增加的趋势下, 非常不利于大数据的存储。随着网络技术的发展, 尤其是云计算的日趋成熟, 本地数据文档可上传到云服务器中进行存储, 云计算环境下基于虚拟化[1]的存储技术由此产生。
1 云计算概述
云计算[2]是使计算分布在大量的分布式计算机上, 而非本地计算机或远程服务器中。云环境下数据中心的运行将与互联网更相似, 这使得用户能将资源切换到需要的应用上, 根据需求访问计算机和存储系统。大数据必然无法用单台的计算机进行处理, 必须采用分布式计算架构。其特色在于对海量数据的挖掘, 但必须依托云计算分布式处理、分布式数据库、云存储和虚拟化技术。
2 虚拟化及存储虚拟化
虚拟化是指计算机元件在虚拟平台上运行, 提供的是对简化计算机资源的管理, 同时对已有资源作进一步优化。虚拟化的存储是通过将多个存储单元通过一定的技术进行集中管理, 而这种集中式的存储管理是通过存储池技术实现的, 该技术将提供区别于以往物理存储的大容量高速存储系统。
存储虚拟化则是将现实中的物理存储实体与处于云计算环境中的逻辑存储单元相互分离, 服务器将只分配逻辑卷进行数据文档的存储, 用户不再将其数据文档存储于具体的物理存储实体上。
随着网络技术的不断发展, 通过云计算环境中存储的虚拟化, 将计算机网络中的各个存储单元加以整合, 通过虚拟存储池进行集中化管理, 按照用户的实际需求建立相关虚拟卷, 将虚拟卷的可读写权限分配给云计算环境中的服务器使用, 既能实现统一管理又能实现存储的充分利用。
3 云计算环境下存储虚拟化的特点
云计算环境下存储虚拟化的特点如下:
(1) 集中化管理。云计算环境下的存储虚拟化通过集中化管理, 在提高存储效率的同时可极大降低使用成本。
(2) 通用性较好。云计算环境下存储虚拟化的通用性较好, 打破了存储供应商之间的界线, 对于用户来说其产品使用的选择面更为广泛。
(3) 对用户透明。云计算环境下的虚拟化存储对于用户是透明的, 用户数据文档的存储不在本地的物理存储介质上完成, 在使用过程中也不需要考虑存储容量等问题, 虚拟化的存储空间将提供近似于无限的存储空间以满足用户日益增长的数据文档存储要求, 但必须注意数据文档存储的安全性问题。
(4) 数据安全要求高。通过各种数据文档加密软件的使用, 对降低数据泄露风险能起到一定的作用, 但不可否认的是, 数据泄露远非简单的加密所能解决。云计算环境下虚拟化存储效率的提高和数据被泄露风险的增大是并存的, 用户对于非存储在本地的数据安全提出了更高的要求。
4 云计算环境下存储虚拟化的文档加密
传统的数据文档加密均采用透明加密方式[3], 对不同类型的所有数据进行强制加密, 这往往是在数据的流转过程中进行。而在其它过程中, 为了减少系统资源的消耗, 一般不使用加密, 因此其性能无法保障。
云计算环境下, 加密软件只是数据泄露防护的核心构件之一, 将所有的重任都寄托于数据加密软件, 远远达不到云环境下的安全要求。加密软件无法承担数据泄露所带来的危害, 加密软件对数据文档的加密作为第一层次防护, 只是安全管理的开始而不是结束。对于云环境下文档数据的加密, 其发展趋势主要为两个方面。
4.1 智能动态化的加解密
加密软件的加密方式可分为自动加密方式和手动加密方式。对于手动加密方式, 用户的主观性比较强, 文档内容是否需要加密是根据文档的所有者来进行判断, 在此过程中文档所有者即用户的主观性所占比重很大。而对于自动加密方式, 加密系统能自动识别出文档的具体内容并根据内容来判断该文档是否需要加密。
强制性的加密软件是根据文档的文件类型来进行加密, 它会将该类型的所有文档都进行加密而不去管该文档是否需要加密。这将导致在加密过程中消耗过多的系统资源以及在往外发送时接受者又需花费很多的系统资源来进行解密工作, 而其中有很多文档是不需要加密和解密的。
在云计算环境下, 采用手动加密方式对数据文档进行加密显然不合适, 因为云计算环境下无法保证文档在加密前不被泄露出去;强制加密方式将极大消耗云存储的性能, 该类方式也不适用云环境下的加解密。而通过自动判断文档的内容来进行加解密则是比较理想的方式, 加密软件将自动判断文档并对其中需要加密的文档进行加解密操作, 可显著提高云存储的效率。
4.2 将文档加密集成到数据泄露防护体系中
早期的加密软件是尽可能从文档的源头上加以控制, 对其进行加密从而防止数据泄密。在云计算环境下, 广泛使用基于文档特征匹配以及基于文档行为识别的内容来进行数据加密, 因而不能再使用以前的数据管理方式, 有必要采用分层架构的多重防护来对云环境下的数据文档进行加密, 而这整个过程将持续作用于文档的创建、使用、流转、存储和销毁的整个周期中, 同时加密必须结合数据的身份认证等多个功能。
随着云计算环境下虚拟存储技术[4]的广泛应用, 数据将从物理性的存储环境转换为虚拟化的存储环境[5], 进一步改变传统的数据文档存储方式, 数据文档将按照虚拟存储的逻辑方式更加透明地存储于云平台中, 完全实现数据文档资源的存储自动化。
在云计算的虚拟化存储中, 加密软件将使用B/S模式来进行架构, 加密过程不在物理位置上完成而是在云环境中完成, 而这将极大减少物理主机的系统资源消耗。虚拟化的存储将对现有的加密软件带来巨大的改变, 主机等终端将不再存储数据文档, 这些数据文档存储在云环境中的虚拟存储中, 本地物理主机等终端只是云环境中虚拟存储位置的一个指向。
云计算环境下的网络虚拟化将使得数据文档的存储方式发生巨大变化, 部署于各处服务器的虚拟化[6]将使数据文档的存储位置变得更加隐蔽, 但也正是这种隐蔽对数据文档的加密提出了更高的要求。
5 结语
随着网络技术的不断发展, 云计算环境下数据文档的存储趋向于虚拟化存储, 传统的数据加密软件将不再适用。而数据泄露防护技术将提供一整套完整的数据加密管理过程, 通过智能化的数据文档识别技术, 自动化地识别出需要加密的数据文档, 并在识别的基础上对需要加密的数据文档进行自动加密。该过程对于用户来说是透明的, 也不会消耗用户的物理系统资源。云计算环境下的数据泄露防护能够对存储在虚拟存储上的数据文档进行高效管理, 并有效防止数据文档的非法获取和非法泄露。
参考文献
[1]金海.计算系统虚拟化——原理与应用[M].北京:清华大学出版社, 2008.
[2]王金波, 金涬, 何乐, 等.虚拟化与云计算[M].北京:电子工业出版社, 2010.
[3]李迈勇.网络安全:加密原理算法与协议[M].北京:清华大学出版社, 2007.
[4]郭玉东, 尹青.基于对象的网络存储[M].北京:电子工业出版社, 2007.
[5]云百科.服务器虚拟化[EB/OL].http://www.zdnet.com.cn/wiki-server_virtualization.
加密存储 篇5
关键词:云存储,隐藏访问结构,属性撤销,隐私保护,微型
0 引言
随着云存储应用的快速发展,数据的安全性问题越来越受到人们的关注,密码技术则是网络安全中心行之有效的一种方式。
近年来,大量的基于属性的加密(Attribute-Based Encryption,ABE)方案不断出现,用于研究并解决各自领域中的问题。文献[1]提出了第一个有关ABE的密钥撤销方案,但用户需要与授权中心频繁地进行交互来维护密钥。文献[2]把代理重加密技术加入密文策略的基于属性的加密(Ciphertext-Policy Attribute-Based Encryption:CP-ABE)方案中,通过撤销用户私钥和撤销系统公钥的方式来撤销用户属性,缺点是撤销成本太高。文献[3]提出了一个可以隐藏访问结构的加密方案,实现了同时保护消息内容和访问结构私密性的功能。众所周知,微型设备(ID卡、电子护照等)通常只具有有限的存储容量,这个缺点限制了它的发展。文献[4,5]提出了固定密钥长度的解决方案,文献[4]设计的访问结构属性集必须和用户的属性集完全一致才可以解密,文献[5]运用简单的哈希和异或的方法解决了这一难题。
本文在云环境下构造了一个支持访问结构隐藏、用户属性可撤销、密钥长度固定的基于属性的加密方案。在方案中,授权中心通过代理重加密机制在确保系统安全性、实现用户属性撤销的同时,也降低了用户的计算量。为了达到访问结构隐藏的目的,结合了文献[6]中双系统密码技术提出了一个完全隐藏访问结构的方法。因为该方案中设计的密钥是独立于属性数量的,所以它更好地适用于微型存储设备上。
1 方案构造
1.1 系统模型
该方案整体模型如图1所示,系统由授权中心、数据拥有者、数据使用者、云端服务器几部分组成。
授权中心:安全可信任的认证机构,负责Setup和Key Gen算法的调用。
数据拥有者:数据明文的所有者,制定指定的访问结构P,负责调用Encrypt算法对明文M进行加密并隐藏其访问结构P,生成密文C,并将C发送到云端服务器实现对数据的存储与共享。
数据使用者:使用共享数据的用户,使用从权威中心获取的密钥skA解密从云端服务器上下载的密文C,从而得到明文数据。
云端服务器:云服务提供商,安全可靠的存储机构,负责各类机密信息的存储、管理、传输等。
1.2 访问结构
设U={A1,A2,…,An}是集合中所有的属性,用下标i来表示属性值Ai。设A是一位用户的属性集,定义A奂{A1,A2,…,An}。本文所表示的属性A具有n位,定义为:ai=1:Ai∈A;ai=0:Ai埸A。例如,令n=4,A=1011,该属性集包含属性{A1,A3,A4},用|A|来表示A中的属性个数,其中与门的访问结构由属性{A1,A2,…,An}来控制。设访问结构P表示为n位长的b1b2b3…bn,定义为:bi=1:Ai∈P;bi=0:Ai埸P,|P|用来表示P中的属性个数。在本文的其他部分,属性集A和访问结构P都由n位字符串来表示。
定义1:如果对于所有的i从1~n,满足ai≥bi,则P⊆A(P属于A,即属性集A=a1a2…an满足访问结构P=b1b2…bn)。
1.3 算法构成
在本节中,构造了一个有关固定长度密钥且支持属性撤销,访问结构隐藏的CP-ABE方案,这个关于属性集A的解密密钥是独立于A中的属性数的。
(1)Setup:输入一个安全参数λ和一组全局属性U={A1,A2,…,An},选择一个配对组BG={G1,G2,GT,p,e}和两个随机生成元g∈G1,h∈G2,双线性映射e是G1×G2→GT的一个映射,计算e(g,h),算法如下:选择一个随机数α∈Zp,对于所有的i=1,2,…,n,计算:vi=gai,hi=hai。选择4个哈希函数:H1,H4:{0,1}*→Zp*,H2:{0,1}*→{0,1}la,H3:{0,1}*→{0,1}lm。其中la表示一个随机字符串的长度,lm表示的是明文(数据)的长度。
输出参数(MPK,MSK)为:MSK=(a,g),MPK=(vi,h,hi,e(g,h),BG,H1,H2,H3,H4)。令版本号初始化ver=1,授权中心保存(ver,MSK),而(ver,MPK)是公开的。
(2)Encrypt:使用选择密文攻击的安全性加密,定义为输入明文M,访问结构P,公共参数MPK,算法计算如下:选择随机数σ∈{0,1}lσ,分别计算:fi是xi的系数。隐藏P:Ai∈P时,令Ei=H1(i),时,选择随机数t∈Zp且t≠i,令Ei=H1(t)。输出M密文(ver是当前版本号):
(3)Key Gen:输入A,(MPK,MSK),密钥的生成方式:A=a1a2…an是属性集,计算选择一个随机数s∈Zp,对属性集A生成解密密钥,ver是当前版本号。
(4)Re Key Gen:输入一个新属性集A′⊂U和MPK,计算如下:当Ai∈A′,选择t′i,ti∈Zp,计算rki=t′i/ti,否则令rki=1,得:输出代理重加密密钥rk=(ver,RK),ver是当前版本号,系统版本号加1。
(5)Re Encrypt:输入密文C,rk,计算:检查密文C中的版本号与重加密密钥rk中是否相同,若不同则直接输出C。若版本号相同,则计算C1′=C1RK。输出更新后的密文:
(6)Re Key:输入skA,rk,计算如下:检查skA中的版本号与rk中是否相同,不同则直接输出skA。若版本号相同,计算:输出新密钥
(7)Decrypt:解密之前判断C中的版本号是否与skA中的版本号一致,若不一致,数据使用者向授权中心请求更新密钥,再进行解密工作。若一致则直接进行解密,解密的主要工作是计算e(g,h)r,它被用于计算提取明文M的σ。该解密算法定义如下:判断A=a1a2…an是否满足访问结构P。当时,需计算H1(t)是否等于Ei,相等则终止。否则,计算ci,其中i=1,2,…,n,ci=ai-bi∈{0,1}。设F(x,A,P)定义如下:
其中Fi∈Zp是xi的系数,Fi≠0,计算:
其中当访问结构中属性发生撤销时:
计算:
最后输出明文
2 效率分析
本节将本文的方案与之前的CP-ABE方案作比较,并说明本方案的优势。表1从访问结构、属性撤销等方面将本文方案与其他已有方案作对比。
从表1可以看出,本文采用了最常用的“与门”访问结构,而且实现了属性撤销及访问结构的隐藏。
为方便进一步的比较,做如下定义:|P|表示访问策略的属性数量,|G|表示G1、G2的大小,|GT|来表示GT的大小,li表示第i个属性的取值个数。表2将本方案与其他方案的密钥与密文长度做对比。
表2中可以看出本文密文的大小小于文献[3],而和文献[2]相比在访问结构属性很少的情况下密文差别不大,但当访问结构属性增多时,n-|P|的值会减小,密文长度上的优势会越来越明显。而在密钥长度上来看,本方案中的密钥长度是独立于属性数量,远小于文献[2,3]中的密钥大小,且随着用户属性数量增多,因为定长密钥,占用更少的空间,相较与其他方案更加适用于存储空间有限的微型设备上。
另外为比较加解密过程中的时间消耗,需要做如下定义:|A|表示一个用户的属性数量,G表示G1、G2计算量,GT表示GT的计算量,p表示双线性对运算。表3比较各方案的加解密时间。
计算效率上本文也堪比其他的CP-ABE方案,表3可以看出本方案为每一个属性集所生成的解密密钥仅仅消耗两点乘运算,比文献[2,3]中线性大小解密密钥加密更具有优势,因为f(x,P)是(n-|P|)次多项式,本方案的加密花费大约2(n-|P|)点乘法,而F(x,A,P)是(|A|-|P|)次多项式,解密成本大约2(|A|-|P|)点乘法和3组配对计算,这些相比于文献[2,3]的线性次数增加具有很大优势。
3 仿真实验
下面将从实验仿真出发将本文算法与上述两个方案对比,本实验的运行环境为:内存,操作系统为Windows 7旗舰版(32位)。实验主要目的是验证其加解密的效果,不计实际应用中的传输延迟。
实验仿真结果如图2、图3所示,结果符合第2节的分析部分,由于3种方案都采用“与门”访问结构,因此其表达能力相同,而属性撤销操作只涉及部分乘法,因而在此不做过多比较。在实验初始环节中,其加密时间相较其他两个方案略有优势,而随着属性个数的增加,其优势将逐渐突出;而在解密的过程中,本方案在属性个数较小的情况下略显颓势,但随着属性个数增加,虽然本方案的时间也有小幅度的上涨,但是其他两个方案的解密时间增长更快,且幅度大超本文描述的方案。
而本文时间效率相较其他方案较好的原因就在于其采用了定长密钥的方式,从而使得双线性配对的次数不随属性个数的增加而线性增长,虽然在属性个数较少的情况下本方案的加解密时间略长,但是现实场景中属性个数会非常多,因此可忽略;另外除双线性配对以外的其他操作也较少,所以本方案相较其他两个方案具有明显的优势。
4 结束语
本文通过引用版本号标记法、代理重加密技术,实现了对属性的撤销,并且在此基础上隐藏了访问结构,提升了数据访问灵活性的同时也增加了对数据的隐私保护。同时,文中独立于属性数量的解密密钥的实现,使得此方案可以更好地应用在微型设备上,解决了存储空间受限的难题,且通过与其他文献的对比,也证明了此方案在加解密的效率上的优势。下一步研究重点在访问结构的改变和多授权中心的分布式应用上,使之更好地适用于云计算的访问控制环境中。
参考文献
[1]PIRRETTI M,TRAYNOR P,MCDANIEL P,et al.Secure attribute-based systems[C].Proc of ACM Conference on Computer and Communications.Amsterdam,Netherlands:IOSPress,2010.
[2]YU S,WANG C,REN K.Attribute based data sharing with attribute revocation[C].5th ACM Symposium on Infor mation,2010:261-270.
[3]NISHIDE T,YONEYAMA K,OHTA K.Attribute-based encryption with partially hidden encryptor-specified access structures[C].In 6th International Conference ACNS.NY,USA:Springer Berlin Heidelberg,2008.
[4]EMURA K,MIYAJI A,NOMURA A,et al.A ciphertextpolicy attribute-based encryption scheme with constant ciphertext length[C].In 5thInternational Conference.Xi′an,China:Springer Berlin Heidelberg,2009.
[5]GUO F,MU Y,SUSILO D,et al.CP-ABE with constantsize keys for lightweight devices[J].IEEE Transactions on Information Forensics and Security,2014,9(5):763-771.