1云安全相关技术 1。1数据加密技术 针对数据存储及传输的安全问题,目前大多数云服务商还是采用传统的数据加密方式保护用户数据的传输及存储安全。例如亚马逊的简单存储服务要求用户在上传数据之前自行加密数据。传统的数据存储和传输方法。涉及数据交换的主体有云服务器、数据拥有者和普通用户,主要由以下几个步骤完成: 数据拥有者在本地加密数据之后上传至云服务器进行存储;普通用户注册成为数据拥有者的合法用户;数据拥有者分发数据加密密钥给注册用户;注册用户访问云端数据;使用从数据拥有者处获得加密密钥下载并解密所需数据;数据拥有者可直接下载自己已上传至云端的数据。存在的安全隐患:在传统的数据存储和传输方法中,如果注册用户发生变化,数据拥有者需要更新数据密钥以便分发给最新注册的用户,并及时删除原用户信息;在数据拥有者传输密钥给注册用户时,面临着密钥在不安全信道被截取和篡改的威胁。这些不安全隐患都表明传统的数据存储和传输方法不再适应于云存储安全。 目前主流的数据加密技术包括对称加密和非对称加密。主流的对称加密算法包括DES、3DES、IDEA、AES、RC4、RC6等,主流的非对称加密算法包括RSA、DSA、ECC等。虽然这些主流的加密技术能够在一定程度上保护用户的数据机密性和完整性,但运用在云安全中其效率方面还有待进一步提高。另一方面,这些加密操作都是在云端完成的,用户很难做到完全信任云服务商不会泄露自己上传的隐私数据,这也是导致大部分用户对云存储持怀疑态度的原因。 1。2CPABE算法 CPABE是将用户的身份表示为一个属性集合,而加密数据则与访问控制结构相关联,用户访问数据取决于用户的属性集是否满足访问控制结构的要求。与传统的公钥加密相比,CPABE不需要关注信息共享体中成员的规模和身份信息,具有高效性、抗串联性和策略表示灵活性等优点,使其拥有更强的访问控制能力。 1。2。1CPABE算法结构 CPABE算法中相关术语定义如下:定义1属性:设A{P1,P2,,Pn}为所有属性的集合,则每个用户的属性集Au是A的一个非空子集,Au{P1,P2,,Pn}。定义2访问结构:访问结构T是全集{P1,P2,,Pn}的一个非空子集,T2{P1,P2,,Pn}。T代表一个属性判断条件,即在T中的属性集合称为授权集,不在T中的属性集合称为非授权集。定义3访问树:用来描述一个访问结构,树的每个叶节点代表一个属性项,每个内部节点代表一个关系函数,关系函数可以是与、或以及至少满足等。例如,假设属性集合A{现居地:北京,现居地:广州,职业:老师,学历:博士};用户1的属性集Au1{现居地:北京,职业:老师,学历:硕士};用户2的属性集Au2{现居地:北京,职业:老师,学历:博士};用户3的属性集Au3{现居地:天津,职业:老师,学历:博士};访问结构T{{现居地:北京,职业:老师,学历:博士},{现居地:广州,职业:老师,学历:博士},{现居地:北京},{现居地:广州}}。根据CPABE算法机制,分别判断用户是否满足访问结构要求:用户1的{学历:硕士}属性不满足访问结构中的{职业:老师,学历:博士}的与操作;用户2满足访问结构要求,可以访问数据;用户3的属性{现居地:天津}不满足{现居地:北京,现居地:广州}的至少满足一个门限操作。 1。2。2CPABE算法实现步骤 CPABE算法主要包含四个步骤: Setup(Au),授权中心执行:当用户发送访问请求给云服务器时,由授权中心执行该算法,授权中心根据用户的属性Au判断当前用户需要获取的数据,输出系统公共参数PK和主密钥MK,即(PK,MK)Setup(Au)。 KeyGen(PK,MK,Au),授权中心执行:密钥生成算法以系统公共密钥PK、主密钥MK和用户属性集Au作为输入参数,输出对应于Au的解密密钥SK,即SKKeyGen(PK,MK,Au)。授权中心在用户发送请求时根据用户属性生成对应于当前用户的解密密钥SK,并通过安全信道发送给用户秘密保存。 Encrypt(PK,M,T),数据拥有者执行:根据授权中心生成的公共参数PK决定具体加密哪个数据,输入系统公共参数PK、数据拥有者的明文M以及访问结构T,加密之后得到密文C,即CEncrypt(PK,M,T),且该密文只有在满足访问结构的集合属性时才能被解密。 Decrypt(C,SK,PK),普通用户执行:它的输入参数是用访问结构T加密的密文C,以及对应于用户属性集Au的解密密钥SK和系统公共参数PK。如果用户属性集Au满足访问结构T,则输出明文M,即MDecrypt(C,SK,PK)。 CPABE加密机制所示,用户在本地使用对称加密算法对要上传到云端的数据进行加密。其生成的密钥由CPABE算法进行加密,用户密钥与用户属性集Au相关,只有Au满足访问结构T时才能解密密文。在云存储中,用户在上传数据之前对数据进行加密的密钥通过CPABE进行加密,在传输密钥过程中,即使密钥被黑客截取也无法破解密钥内容,因为只有满足访问控制集合中的属性才能解密密文。通过CPABE对密钥加密能够有效防止密钥被截取,其加密方式不会影响数据传输效率。 1。3数字信封技术 数字信封是一种综合利用了对称加密技术和非对称加密技术两者的优点进行信息安全传输的一种技术。数字信封既拥有对称加密技术的速度快、安全性高等优点,又发挥了非对称加密算法密钥管理方便的优点。 数字信封的功能类似于纸质信封,纸质信封保证了只有收件人才能阅读信的内容。数字信封则采用成熟的密码技术保证只有规定的接收方才能获取发送者的内容,发送者必须知道接收者的数字证书的公钥。 其执行步骤如下:明文M通过对称密钥K1进行加密,加密函数为Encrypt(K1,M),得到密文C;对称密钥K1通过接受者的公钥PK进行加密,加密函数为Encrypt(PK,K1),得到加密密钥K2;将密文C和加密密钥K2同时发送给接收者或上传至云服务器;接收者接收到密文和加密密钥之后对数据进行拆分,分为密文C和解密密钥K2;接收者通过私钥SK解密出加密密钥里面的对称密钥,其解密函数为Decrypt(SK,K2),得到对称密钥K1;使用对称密钥K1解密密文C,解密函数为Decrypt(K1,C),从而恢复出明文M。数字信封技术的加密过程类似于纸质信封中的信件封装,并指定了具体的收件人,解密过程类似于纸质信封中合法收件人才能拆封并阅读信件。整个信封传递过程都是处于保密状态,确保了数据的安全性。 2CPABE融合技术的云存储安全模型 安全模型主要解决用户数据在云端的上传和存储安全问题。它能够有效解决用户数据在上传中被截获和被篡改的安全问题及数据在云端存储被非授权用户和云服务提供商利用的问题。 2。1安全模型系统架构 新模型使用三层不同的安全系统架构。第一层通过短信校验码结合用户信息生成动态口令OTP对用户进行登录校验,有效阻止非授权用户的登录对云服务造成安全威胁。 第二层用户登录成功之后就能够上传数据至云端,在上传之前,用户可以根据安全模型提供的加密方法对数据加密,并使用CPABE算法对加密密钥加密,确保只有满足访问结构属性的用户才能解密数据。被加密的密钥和数据通过数字信封技术进行加密上传。其中本地加密数据的算法以AES算法为例。 第三层用户从云端下载数字信封封装的数据到本地,模型根据用户的登录信息及账户信息判断当前用户是否为合法用户。如果符合判断要求,则通过模型自动解密数字信封的加密密钥和密文,即根据CPABE的属性进行判断用户是否能够解密密钥,从而解密密文供用户使用。 安全模型在整个数据传输与存储过程中的作用相当于一个网关的作用,用户所有的数据都是经过该模型进行过滤之后再上传到云服务器或者从云服务器下载。模型主要完成以下安全任务: 数据未上传至云端之前对隐私数据加密;非授权用户从云存储服务器获得数据,只能看到加密形式的数据,无法解密密文数据;合法用户从云端获得数据,则在用户端自动解密供用户使用;阻止恶意用户访问服务器,同时检测恶意软件攻击。图7中为了更好地融合CPABE和信封融合技术,将经过CPABE加密的加密密钥和密文数据整合成一个数据包同时上传至云端。由于加密密钥和密文数据在数字信封里是属于分开存储的,所以不会造成加密之间的冲突,能够兼容不同的加密技术对数据进行加密,确保数据的机密性。 2。2登录动态口令OTP设计 模型中的动态口令OTP对用户的账户安全起着至关重要OTP总体设计架构图的作用,其主要实现方法是通过接收短信校验码,校验成功之后根据用户名、密码和短信校验码生成一个OTP。用户使用生成的OTP登录云服务器获取数据。短信校验码生成与使用场景是物理隔绝的,因此将校验码在通路上被截取的概率降至最低。 用户首先通过注册时的用户名和密码登录云服务器,登录成功之后,云服务器发送短信校验码到用户手机。用户使用接收到的短信校验码生成OTP,并将OTP存入到云服务器的临时数据库中,存储的时候根据用户信息相应存储。用户再使用用户名、密码及OTP获得云端的隐私数据并自动解密数据,在每次获取数据的时候都需要输入OTP,直到用户退出程序为止。用户再次登录云端服务器的时候需要再获得短信校验码生成OTP。 2。3用户与云服务器数据交互 用户在上传数据时需要通过CPABE密钥授权中心设置访问策略用于加密密钥;用户需要从云存储服务器下载数据时,需要通过CPABE密钥授权中心判断用户属性是否满足设置的访问策略。数据使用主流加密技术进行本地加密,在模型的第二层中为了确保数据的完整性,通过对数字信封的检验确定数据有没有被第三方篡改。在模型中数据的密钥是通过CPABE加密的,这是为了防止密钥在传输过程中被黑客截获,要想获得密钥必须要满足CPABE的访问结构。 3改进模型仿真实验及性能分析 为了评估本方案的效率和在云环境下的可行性,本文采用模拟的云环境进行仿真实验,同时参考文献所使用的实验方案进行验证。软硬件实验环境为:VmwareWorkstation虚拟机及搭建在该虚拟机上的RedHatEnterpriseLinux6。2操作系统,分布式系统基础架构Hadoop1。0。4,百度云,实验代码基于cpabe0。10库实现改进的CPABE方案。 3。1仿真模型及参数描述 本仿真实现由安全模型进行数据的上传和下载,并采用百 度云为云端服务器进行数据的存储。仿真模型的三层主要功能包括用户进行OTP登录校验、数据和密钥在传输过程中使用信封技术保证传输的安全性、使用CPABE进行密钥的加密传输。在上传时进行数据本地加密和下载时实现模型对数据的自动解密,提高系统的效率。 首先用户通过在百度云注册成功的用户名和密码登录仿真系统,登录校验成功之后服务器会发送短信校验码到注册时填写的手机上。获取到短信校验码之后填入仿真系统中,系统将根据用户名、密码和短信校验码生成动态口令OTP。OTP的展现形式为128bitMD5加密的文本内容,并被存储在临时数据库中,用户在使用OTP时需要和临时数据库存储的OTP进行比对校验。用户将使用此OTP获取云端的数据。 生成动态口令OTP之后即可进入系统进行文件的上传和下载。在进行文件上传的时候需要设置用户属性集合,用来实现CPABE对密钥的加密,属性集合将会保留在系统的数据库中。在上传数据之前,用户需要使用主流的加密算法对数据进行本地加密。本系统采用的主流算法有:AES、DES、3DES、RC4和RC6,用户根据需要进行加密算法的选择。在上传数据的时候需要输入OTP来验证是否为当前用户在操作,确保系统的安全性。 系统通过对接百度云的接口,可以在仿真系统中输入数据的网络地址。在进行文件下载的时候需要选择正确的解密方式,输入解密密钥和OTP,系统将会自动解密需要下载的数据供用户使用。 如仿真系统所示,当恶意用户访问云服务器时,OTP校验会阻止恶意用户的访问请求;假如恶意用户非法获得OTP,也会在校验用户属性的时候阻止恶意用户的访问。新模型使用三层不同的安全系统架构,安全有效地保护用户云端的隐私数据。 3。2改进CPABE模型性能分析 本文提出的安全模型是通过OTP校验、数字信封技术和CPABE算法保证数据的传输和存储安全。通过给定不同个数的属性来分析CPABE算法私钥生成的时间及其加密和解密同等大小的密钥的加密时间变化。在相同长度对称密钥的前提下,给定不同的属性策略中的属性个数,CPABE加密和解密时间对比。从中可以看出随着属性策略中的属性个数的增加,加密和解密时间都相应增加。改进CPABE模型安全性分析 本文改进的CPABE模型主要解决云端数据的存储和传输安全问题。下面对该模型的安全性进行分析: (1)OTP校验登录。用户需要通过OTP登录校验才能获得云端数据,阻止了非授权用户对系统的非法访问,确保云服务器的安全。 (2)端到端的加密。允许用户在客户端进行数据的加密解密,确保了数据在存储和传输中的机密性。 (3)数字信封技术。在传输过程中通过数字信封技术将加密密钥和密文一起上传至云端服务器,即使中途被黑客截取也无法获得明文数据,保证了数据的传输安全。 (4)加密密钥的安全管理。通过CPABE对密钥进行加密传输和存储,只有符合访问结构属性的用户才能得到其中的密钥,确保密钥不被非法用户获取。 4结语 针对云安全中数据传输和存储的安全问题,本文结合数字信封技术提出改进的基于CPABE云存储安全模型。在建立安全模型的基础上进行仿真实验,实现了对数据的上传、下载和传输功能,并实现在上传阶段对数据加密,下载阶段自动解密。通过对实验数据进行分析得出传统的AES适合用于本地数据的加密,即提高数据安全性能,又节省了加密时间。通过对改进的CPABE模型和CPABEWP方案进行时间性能比较得出改进的CPABE模型能够高效地保护云存储的安全。通过综合比较,本文提出的改进的CPABE和数字信封融合技术云存储安全模型能够很好地解决数据在云端传输和存储的安全问题,同时提高数据加密效率,有效保护云端数据的安全。