云存储中密文数据的客户端安全去重方案
2023-01-24朱丹
朱 丹
(金山职业技术学院,江苏 镇江 212200)
在云存储环境下,通过删除客户端数据,可以在本地检索到大量重复文件,有效节省存储空间和网络带宽。但是,客户端重复数据消除仍然面临许多安全挑战。首先,由于文件散列可以用作重复性测试的基础,攻击者很可能使用文件散列来获取整个文档。其次,为了维护企业数据信息的安全性,虽然收敛密码可以应用于企业数据的反拷贝方法,但由于企业数据本身是可预测的,收敛密码不可避免地会遇到字典的威胁。因此,文章利用盲签名技术建立了一个安全的密码生成协议。由于块密钥服务器的引入,实现了聚合密钥的再安全加密,有效防止了暴力字典入侵,并给出了基于块密钥签名的所有权认证方法,可以防止攻击者通过单个散列值获取文件,同时,它减少了加密文档中文件级和块级的重新加权。
1 相关概念
1.1 云计算
在云技术飞速发展的今天,很多公司都希望向云服务商提供云服务。
CloudServiceProvider(CSP),可随时随地的享受数据库、计算业务,能够将企业数据储存成本、保护成本降低。但是,在云储存数据信息较多时,会形成较多的冗余数据,结合IDC(InternationalDataCorporation)研究分析报告,在2020年,世界数据量≥40万亿GB。基于此,CSP面临着如何有效管理数据量的现状。
1.2 数据去重技术
重复数据消除技术可以使CSP只保存一个文档,可实现空间的节省。结合数据粒度,重复数据消除包含文件级重复数据、块级重复数据两类。与文本级重复数据分析和删除类似,块级重复数据分析和删除也可以大大提高重复数据分析的删除率,节省空间。但是,根据删除重复数据分析的位置,有两种类型的删除重复数据分析:①删除服务器端的重复数据,用户将数据分析结果传输到云服务器内,分析并将重复数据删除,这一操作能够节省内部空间,但会加剧带宽资源的消耗。②服务器端重复数据消除:CSP在接受单个用户的上传请求时保存原始数据文档。对于后续的文档上传请求,只需与需要上传的用户共享原始数据文档的权限,用户无需将文档上传到云服务器。对这些新的教学方法的研究不仅节省了空间,而且节省了时间,降低了传输带宽。
2 问题描述
2.1 系统模型
本课题的体系结构包括三个主要的主体:CSP、KS和使用者。
CSP系统包含服务器、数据储存服务器两种。它有足够的资源作为第三方服务器。KS可以与用户交互并在密钥过期后重新加密聚合密钥,KS必须由可信的第三方(如政府部门、数字证书颁发机构等)部署。它可以是由受信任的第三方或一组服务器设备部署的单个服务器。应将KS设备部署为群集。用户包括多个普通用户。在将文件上载到CSP系统之前,CSP必须检查CSP系统中是否有要上载的文件。如果是,用户需要将朝着CSP内上传文件,也无法从上下载文件。
2.2 实现目标
为了克服安全模型中密文数据的重复和安全,文章的设计目的是:
(1)收敛密钥安全性:威胁、KS可获取用户的个人信息,也无法派生收敛密钥。i的方法可以串联KS和CSP,但即使它串联成功,也无法恢复收敛密钥和明文数据信息。
(2)数据信息的高度机密性:由于数据信息加密密钥包含两种私钥,分别为汇聚密钥和密钥服务器的私钥,i可以从大量加密数据信息内,获取安全的高度语义。基于此,攻击者无法从机密文件获取相应的信息。
(3)检查数据的完整度,其类型主要包括两种,一种是标签一致性证书。如果CSP上的文件标签与用户需要的文件标签一致,则可以证明该文件与CSP上的文件标签是否一致。另一种类型是信息一致性,它出现在服务器上,即合法用户在下载后从CSP下载文档,i不知晓下载文档损坏、更改。或者是i不知晓请求文档。此时,需要查看密文、标签信息,判断其是否一致。
3 云存储中密文数据的客户端安全去重方案
机密文件数据信息的安全重复数据消除方案。设计的机密文件数据信息安全重复数据消除方案包括以下计算:块密钥形成计算文档初始计算initfile、数据信息块初始计算initblock、数据信息块验证算法blockverify、文件存储计算竞赛,它一起构成了一个具有挑战性的计算挑战,生成凭证、计算凭证、验证凭证以及解释文档以计算解密。在keygen中,KS为每个数据信息块形成相应的块密钥;在初始档案中,使用者首先可以获得诸如档案密码和档案标签之类的资讯;在 initblock中,应用程式会对基础资讯,如区块标记资讯及区块书签进行初始化;在块验证中,CSP检查块标签信息的准确性,以确定CSP中是否存在数据块;在比赛中, CSP负责存储第一次上载的数据块标签信息、块标签信息和文档标签信息;用于检验各数据区块标记的精确度的文件密码等基础资料。Challenge、proofgen和proofverify均存在于POW内,能够与用户、CSP之间形成“质询响应”协商,可确保CSP、用户所拥有文档的一致性。解密时,用户可结合市场信息,下载相应的文档。文件级、块级重复数据消除方式不同,方案设计理解、实施分支理解也不相同。
重复数据消除方案的设计算法主要如下:
(1)keygen用户能够为每个数据块mi(总共n个块,1个)计算加密密钥(ki≤i≤ n)。加密协议生成流程如下:
①随机k位素数Q,形成Q阶椭圆曲线方程G1和G2两个。P.Q是g-1的两个变化的发生器,因此形成一个可理解的线性配对e:G1×G1→G2.KS,随机选择一组整数x∈ 作为私钥密码,并计算ppub=x·P。公共系统参数为{Q,G1,G2,e,P,Q,ppub},并保持x私有。②用户可以将文本m分为n个块:m=M1‖M2‖…‖Mn,计算每个统计块MI的收敛速度key hi=H(MI),散列函数H(·)为:{0,1}*→ G1;因此,用户随机选择R∈ ZQ作为致盲因子,计算AI=hi+R·P,并将AI上传至KS。③KS计算Bi=AI·X并将Bi返回给用户。④用户计算Di=bi-r·ppub并验证Di:e(Di,P)=?如果为真,用户使用ki=Di作为每个位块mi(1)的附加密钥≤ i≤ n) 。方程E(DI,P)=?E(H(MI),ppub)的准确度应通过方程式(1)确定。E(DI,P)=E(bi-r·ppub,P)=E((HI+r·P)·X-r·X·P,P)=E(H(MI)·X,P)=E(H(MI),X·P)=E(H(MI),ppub)(1)(2)初始文件。
(2)用户借助获取的字块,能够将块密文、文件标签计算出来,加密密钥,其操作流程主要包括:
①使用对称加密方法,对于每个Mi块(1≤ i≤ n)对于文件m,计算块密文CI=enc(Ki,MI),计算CI=H1(CI),并计算散列函数H1(·):{0,1}*→.②计算T1=H1(C1/C2/CN),T2=H1(m)·P(t-1用于数据完整性检查,T2用于块签名验证),并将文件m的标记t=(T1,T2)上传至CSP。③随机选择私钥SK,并计算块密钥ki(1)的相对密码≤i≤ n) 也就是说,ckey=enc(SK,K1/K2/KN)。
(3)初始化块。当CSP检查文件标签t没有出现时,用户必须标记并签署每个企业的数据信息块。具体分析步骤如下:
①对于每个数据文件块mi(1≤ i≤ n) ,计算块标签:τi=H1(M)·h(mi)②计算区块特征:σi=H1(M)·(ki+ci·Q)
(4)BlockVerify。当获取分块标签τI、σI之后,CSP则对其状态进行验证。若存在,则执行重复数据消除指令,检验块σI标记CSP,判断用户中与与CSP相同的数据分析块。其流程主要包括:CSP检验σi并未建立σ'i。建立σ'i一种用于存储全部资料的标签。如果设置好了,那么使用者所持有的资料解析区块与 CSP相似, CSP只要将使用者识别 iduser加入到资料解析区块中,即可恢复下一个 bug的信任。
(5)ConTest。一旦从用户处取下标签τI、σI,就可判断CSP检查块标签τI的状态。如果没有这个状态,那么使用者就必须将密码、数据等信息都上载。
①用户上传块密文CI(1)≤ i≤ n)、密钥密文ckey。
②验证T1=H1(C1/C2/CN)是否为真。
③若为正确,则说明使用者所上载的密码讯息与标记的讯息是一样的;如果没有,就会有一个出错信息。
④CSP计算CI=H1(CI),并验证I:e(σI,P)=的σ正确性?e(τi,Ppub)·e(Q,T2)ci。如果是,则存储Tτi、σi.ci和ckey,并通过iduser将用户的新身份添加到IDM,则IDM=∪,其IDM表示每个文件m的用户身份信息的总和;否则,CSP将返回一条错误消息。方程是e(σi,P)=?e(τi.ppub的正确性)·e(Q,T2)CI可从方程(2)中获得。e(σi,P)=e(H1(M)·(ki+ci·Q),P)=e(H1(M)·ki,P)·e(H1(M)·ci·Q,P)=e(H1(M)·x·h(mi),P)·e(Q,H1(M)·P)ci=e(H1(M)·h(mi),x·P)·e(Q,T2)ci=e(τi,Ppub)·e(Q,T2)ci(2)。
(6)Challenge。如果 CSP侦测到档案标记 T的存在,则会删除该档案的资料。CSP获得询问的消息并向所有的使用者传送。具体流程如下:
①I={S1,S2,…,SC}根据文件m的块n的总数和在1~n中随机获得的C的数目形成。对于Si,∈ i≠ J) 、Si和SJ相互独立。
②因为i∈ 一、 随机选择一个VI∈ 形成质询信息chal={I,VI}I∈ 一、 并将chal发送给用户。
(7)ProofGen。从 CSP接收到了关于 chal的问题后,在该时间内,可以向使用者给出对应的证明PV= signal i (ki+ ci. Q)/H1 (M)。
(8)ProofVerify。CSP在用户处获得反馈信息之后,借助检查,可判断数据信息的真实性、精准性,并确定是否持有与CPS相似的文档。实施流程包括:首先,CSP确认∑I∈ I(σI·VI)=PV是否建立。如果创建了CSP,则表明用户持有同CSP类似的文档。用户再次上传ckey和idusercsp。在ckey内保存CSP,能够在IDM内添加全新的用户标识iduser添加到IDM,然后IDM=∪,其中IDM表示保存文档M的所有用户ID的集合。否则,CSP返回错误消息。注意:完整的所有权证明过程必须包括质询、proofgen和proofverify,这可以有效地执行客户端的文件级重复数据消除任务。
(9)Decrypt。通过 CSP装载文档 m,通过文档标签 T、文档标签 ID User,可以从 CSP中获得文档 m。以下是详细的过程:
①使用者可以向 CSP传送查询 M的标签 T、标识 iduser。
②当接收到文档标记 T和使用者 ID User时,检查文档标记 T和使用者 ID使用者的工作状况,以确定它的工作状况。如果没有任何差错,它被传送给使用者(<我< n),如果 Ckey和 CI (1)都是正确的。相反,会传回下一个出错信息。
③当用户同时获得ckey和CI时(1≤i≤n),验证结果T1=H1(C1‖C2‖CN)是否为真。如果为真,则用户解密密钥K1、K2……Kn=Dec(SK,key),然后使用块密钥 Mi=Dec(Ki,CI)(1)对每个数据块进行解密≤i≤n));否则,CSP将向用户返回不正确的密文。
4 结束语
综上所述,通过借助盲签名的方式,能够建造有效的安全密钥,确保协议的有效性,汇聚密码之后的二次密码,可确保数据加密过程的安全等级,更好的避网络攻击。上述研究中,笔者可以逐步开发和构建自己的基于块密钥签名的所有权证明研究方案,可以更有效地避免攻击者通过使用相对简单的哈希值获取相关文件,能够将重复的数据消除,与此同时,就国家安全问题研究结果表明,文章选择方法即使在随机语言模式下也能证明国家安全,并能获得更多满足聚合块加密、标记统一和反暴力文本攻击的社会安全教育属性,对比现有的技术方案,结果表明笔者提出的这一方案文件传输、删除方面成本较小。