基于数据共享的文件访问和修改权限控制方法

文档序号:7823925阅读:190来源:国知局
基于数据共享的文件访问和修改权限控制方法
【专利摘要】本发明公开了一种基于数据共享的文件访问和修改权限控制方法,主要解决现有技术访问效率低,计算复杂,不适用于用户修改文件的问题。其实现步骤包括:1.数据拥有方将数据文件按照属性进行分类处理,并加密上传;2.用户根据自己的需要访问分类文件,云服务器返回相应的文件给用户;3.授权中心合成聚合密钥传输给用户,用户使用该聚合密钥解密密文文件;4.用户对访问文件进行修改,将修改后的文件进行加密,附上签名并上传;5.云服务器对该用户进行基于属性的签名认证,若认证成功,则存储该文件,否则,丢弃该文件。本发明具有读写性能及效率高,计算复杂度低、存储可靠的优点,可用于云计算环境中基于隐私保护的数据共享和访问控制。
【专利说明】基于数据共享的文件访问和修改权限控制方法

【技术领域】
[0001] 本发明属于信息安全领域,特别涉及云计算环境中用户访问数据文件和修改数据 文件的权限控制方法,可用于云计算环境中基于隐私保护的数据共享和访问控制。

【背景技术】
[0002] 随着计算机技术的迅猛发展,云计算的应用越来越广泛。对企业用户而言,特别是 资金能力不足的中小型企业,云计算服务让他们不需要购买高价的硬件设施就能够满足自 身管理的需求。企业只需付给云服务商廉价的服务费用,便可享用云服务商提供的云计算 平台,获取更为灵活的按需服务,从而降低企业的预算开支。
[0003] 虽然云计算给企业和用户带来如此大的便利,但是云计算中数据安全问题却一直 是一大隐患,使得用户并不能完全放心地使用云服务。因为用户一旦将数据上传到云端,便 失去了对数据的直接控制能力。对于用户来说,既要充分利用云服务商提供的存储服务,又 要尽量保证数据和身份的隐私。比如需要在一个项目组内实现数据文件的共享时,往往要 求不同的用户对数据文件的不同部分具有不同的访问权限,而且为了免受外界攻击,用户 在修改数据文件时并不愿意泄露自己的身份,如何充分利用云存储服务实现数据共享,就 需要制定安全有效的数据共享方案。
[0004] 访问控制是一种实现数据安全共享的有效方法,阻止非法用户对云端数据的非法 操作,只有合法的用户才能对相应的数据进行访问,该方法可以对云端数据提供安全和隐 私保护。目前解决云计算环境下数据共享问题的访问控制方案主要有如下几种:
[0005] 1)自主访问控制方案DAC。自主访问控制由数据拥有者创建和删除数据文件,并 通过制定的规则来决定其他用户的访问权限。这种访问控制机制灵活性高,数据拥有者能 自行管理自身数据。
[0006] 2)强制访问控制方案MAC。强制访问控制通过对用户和数据文件强制贴上一个特 定的安全属性,如:安全级别、访问权限等。当用户访问数据文件时,系统通过对安全属 性进行检测来判断该用户是否拥有访问权限。强制访问控制在安全保护上比自主访问控制 更好,但是由于强制访问控制太强,缺乏灵活性。
[0007] 3)基于角色的访问控制方案RBAC。基于角色的访问控制是一种折中的访问方式, 对自主访问控制和强制访问控制进行了改进。该模型中用户的访问权限是根据他在群体中 的角色来决定的,用户只有具备相应的角色才能访问对应的数据文件,而不是随意访问相 关文件。
[0008] 4)基于属性加密ABE的访问控制方案。包括密钥-策略基于属性加密KP-ABE方 案和密文-策略基于属性加密CP-ABE方案。ABE是一种公钥加密机制,引入了属性的概念, 将用户群的属性组合作为群体的公钥,所有用户向群体发送数据使用相同的公钥,而私钥 由属性授权机构根据用户属性计算并分配给个体。它面向的解密对象是一个群体,而不是 单个用户。
[0009] 前三种访问控制方案的构建大多是建立在数据拥有者和存储数据的服务器在同 一个可信区域内这一前提下的,服务器通过对每个用户进行认证来控制对数据文件的访 问,访问控制策略的定义和实施完全委托服务器实现。但是,在云计算环境中,存储服务器 并不是可信的,它可能独自窃取用户的私密数据或者与攻击者勾结贩卖用户的数据文件。 所以这些访问控制方案并不能确保数据文件的安全共享。第四种访问控制方案中,用户对 数据文件的访问权限由数据拥有者决定,不再完全依赖于云存储服务器的可信度。但该方 案只适合对数据文件的读访问,不适用于用户修改数据文件的情况。而且不管是访问控制 树的构建还是属性和用户的撤销都会带来很大的计算复杂度。


【发明内容】

[0010] 本发明的目的在于针对上述已有技术的不足,提出一种云环境下基于数据共享的 文件访问和修改权限控制方法,以减小计算复杂度,提高访问文件的效率,并适用于用户修 改数据文件。
[0011] 为实现上述目的,本发明基于数据共享的文件访问和修改权限控制方法,包括如 下步骤:
[0012] (1)数据拥有方将数据文件按照属性进行分类处理,给每个分类文件标注一个索 引号,记为i,i e {1,2,...11},11为最大的分类文件号;
[0013] (2)数据拥有方将待共享的数据分类文件分别进行加密处理,并将加密过的数据 文件上传至云服务器进行存储,云服务器负责数据的管理和维护;
[0014] (3)用户根据自己的需要访问分类文件,向云服务器发送访问请求,云服务器返回 相应的密文分类文件给用户,同时数据拥有方规定用户的访问权限,将用户授权访问的文 件索引号集合S发送给授权中心,授权中心将授权用户访问文件需要的私钥合成一种聚合 密钥K s传输给用户,用户使用该聚合密钥解密所访问的各类密文文件,如果解密成功,则用 户具有访问该类文件的权限,执行步骤(4);否则,没有访问该类文件的权限;
[0015] (4)用户对访问文件进行修改,将修改后的文件进行加密处理,采用基于属性的签 名方法并在密文文件上签名,再上传至云服务器;
[0016] (5)云服务器对该用户进行基于属性的签名认证,若认证成功,则用户有修改文件 的权限,云服务器存储该文件,否则,用户没有对文件进行修改的权限,云服务器丢弃该文 件。
[0017] 本发明与现有技术相比具有以下优点:
[0018] 第一,由于本发明引入可信的授权机构,为数据拥有方提供加密文件所需的参数 和主密钥,并且用户的解密密钥也是由授权中心产生,因此减小了数据拥有者和用户的计 算复杂度。
[0019] 第二,由于本发明采用聚合密钥的算法聚合用户的解密密钥,该聚合密钥虽像一 个被压缩的单个类文件密钥一样,但却聚合了解密多个分类文件的能力,所以在数据访问 过程中仅仅只需传输和存储一个聚合密钥,大大减少了传输带宽和存储空间,而且提高了 访问效率。
[0020] 第三,由于本发明将文件按数据属性进行分类,每类文件都有自己的数据属,数据 拥有者根据这些数据属性制定一个签名树并发送到云服务器端,授权中心会给每个用户也 分配对应的数据属性,只要用户拥有的属性能够满足签名树,则说明该用户具备修改数据 文件的权限,云服务器也可以成功认证用户在数据文件上的签名,从而存储修改后的数据 密文,这不仅实现了不同用户对数据文件的修改权限,而且签名不会提供任何与用户身份 有关的信息,很好地保护了用户的身份隐私。
[0021] 第四,由于本发明在用户对文件进行签名的过程中引入了中介,通过中介维护一 个用户撤销列表和一个属性状态列表,当用户发送其身份和属性集合给授权中心获取签名 密钥时,他只获得密钥的一部分,而另外一部分则发给中介,在签名的过程中,用户需要寻 求中介的帮助,而中介会先检查用户撤销列表中的用户身份和属性状态列表中的属性状 态,当且仅当用户的身份和属性有效时才进行签名,所以本发明能对用户和属性的有效性 提供检查,阻止了非法用户的恶意修改。

【专利附图】

【附图说明】
[0022] 图1为本发明的实现流程图;
[0023] 图2为本发明中用户访问数据文件的子流程图;
[0024] 图3为本发明用户签名的子流程图;
[0025] 图4为本发明中用户访问数据文件所消耗的时间仿真图。

【具体实施方式】
[0026] 下面结合附图对本发明做进一步的详细描述。
[0027] 参照图1,本发明的实现步骤如下:
[0028] 步骤1 :数据拥有方将待共享的数据进行分类。
[0029] 1. 1)数据拥有方将数据文件按照属性进行分类,即将具有相同数据属性的文件分 为一类,并给每个分类文件贴上一个属性标签;
[0030] 1.2)给每个分类文件标注一个索引号,记为1,1£{1,2,...11},11为最大的分类文 件号。
[0031] 步骤2 :数据拥有者对分类后的文件分别进行加密处理。
[0032] 2. 1)数据拥有者向授权中心发送系统参数Q请求;
[0033] 2.2)授权中心随机选择p阶双线性群G,生成元g e G,选择第一随机数a G Zp, 其中&表示集合{1,2, 一p},将每个密文分类文件用一个索引号i表示,通过系统初始化算 法得到系统参数 Q :Q = {g, ? ? ? gi, ? ? ?,gn} i G {1,2, ? ? ?,n}其中 g; e G,将系统参 数Q分别发送给数据拥有者和用户;
[0034] 2. 3)授权中心选择第二随机数0 G Zp,通过密钥生成算法输出公钥u = ge和 加密主密钥msk = 0,公钥u公开;
[0035] 2.4)数据拥有者用系统参数Q,公钥u和文件索引号i,选择第三随机数t e Zp, 对被加密的数据文件m进行加密,输出密文CT :

【权利要求】
1. 一种基于数据共享的文件访问和修改权限控制方法,包括如下步骤: (1) 数据拥有方将数据文件按照属性进行分类处理,给每个分类文件标注一个索引号, 记为i,ie{1,2,...η},η为最大的分类文件号; (2) 数据拥有方将待共享的数据分类文件分别进行加密处理,并将加密过的数据文件 上传至云服务器进行存储,云服务器负责数据的管理和维护; (3) 用户根据自己的需要访问分类文件,向云服务器发送访问请求,云服务器返回相应 的密文分类文件给用户,同时数据拥有方规定用户的访问权限,将用户授权访问的文件索 引号集合S发送给授权中心,授权中心将授权用户访问文件需要的私钥合成一种聚合密钥 Ks传输给用户,用户使用该聚合密钥解密所访问的各类密文文件,如果解密成功,则用户具 有访问该类文件的权限,执行步骤(4);否则,没有访问该类文件的权限; (4) 用户对访问文件进行修改,将修改后的文件进行加密处理,采用基于属性的签名方 法并在密文文件上签名,再上传至云服务器; (5) 云服务器对该用户进行基于属性的签名认证,若认证成功,则用户有修改文件的权 限,云服务器存储该文件,否则,用户没有对文件进行修改的权限,云服务器丢弃该文件。
2. 根据权利要求1所述的基于数据共享的文件访问和修改权限控制方法,其中步骤 (2) 所述的数据拥有方将待共享的数据分类文件分别进行加密处理,按如下步骤进行: 2a)数据拥有者向授权中心发送系统参数Q请求;授权中心随机选择ρ阶双线性群G, 生成元geG,选择第一随机数aeZp,其中25表示集合{1,2,...p},将每个密文分类文 件用一个索引号i表示,通过系统初始化算法得到系统参数Q: Q= {g,gi,· · ·gi,· · ·,gj,ieU,2, · · ·,η}其中?Γ, =ZeG 将系统参数Q分别发送给数据拥有者和用户; 2b)授权中心输入第二随机数βeZp,通过密钥生成算法输出公钥υ= 和加密主 密钥msk=β; 2c)数据拥有者用系统参数Q和文件索引号ie{1,2,.. .,η},选择第三随机数teΖρ, 对被加密的数据文件m进行加密,输出密文CT: CT=Jgi, (ugi),,m-p(g,,g,;),}=!c l, C,, cj 该密文CT由C1,c2,C3三部分组成,其中ci=gt,C2= (υgjt,C3 = ,邊是双 线性运算符。
3. 根据权利要求1所述的基于数据共享的文件访问和修改权限控制方法,其中步骤 (3) 所述的授权中心将授权用户访问文件需要的私钥合成一种聚合密钥Ks传输给用户,通 过如下公式进行:
其中j表示数据拥有者授权用户访问文件的索引号,S表示所有索引号j组成的集合。
4. 根据权利要求1所述的基于数据共享的文件访问和修改权限控制方法,其中步骤 (3)所述的用户使用该聚合密钥解密所访问的各类密文文件,按如下步骤进行: 3a)用户从云服务器下载要访问的文件,其索引号用i表示; 3b)用户向授权中心发送聚合密钥请求; 3c)授权中心接收到用户请求后,给用户发送聚合密钥; 3d)用户接收到聚合密钥后,判断要访问的文件索引号i是否属于集合S,如果不属于, 则不能解密,如果属于,则用户用聚合密钥&解密密文,返回被加密的数据文件m:
5.根据权利要求1所述的基于数据共享的文件访问和修改权限控制方法,其中步骤 (4)所述的在密文文件上进行签名,采用基于属性的签名方法,具体步骤如下: 4a)用户向授权中心发送系统参数N请求,授权机构进行系统参数初始化: 4al)选择两个q阶线性群GjPG2,g是G1的生成元,g2eGi,eWGr62是双线性 对; 4a2)定义数据属性集U= {a^a2, . . .ap. . .,an},其中Si表示第i个属性,对于每个 属性aieU,分别选择一个随机数tiGZq,其中Zq表示集合{1,2, . . .q},计算Ti =gtf,选择 第四随机数ΘeZq,gfgθeGpZ=e(gng2)eG2; 4a3)选择哈希函数H:U-G1,将属性集U里的元素映射到双线性群G1; 4a4)授权机构公开公共参数N,并将签名主密钥MK发送给数据拥有者,其中N= (q,G1,G2,e,g,g"g2,Z,H,Ti),ie{1,2, · · ·,η};ΜΚ= (Θ,,ie{1,2, · · ·,η}; 4b)数据拥有者采用自顶向下的方法构造签名树Tsrc,授权机构为签名树Tsk产生公 钥:
其中:Tsie是数据结构中的二叉树结构;py(0)是多项式,y表示树中的节点,如果y是 根节点,则Py(O) =Θ;如果y是非根节点,则采用递归的方法从非根节点一直递归到根节 点以计算每个非根节点对应的多项Spy(O); 4c)用户将自己的身份号ID,属性集ω发送给授权机构,授权机构产生密钥: 4cl)选择第五随数机u,计算密钥的基础元件:< =; 4c2)对每个属性aieω,分别选择随机数λi,计算密钥的属性元件,其中第一属性元 件:4 =SC,第二属性元件:4 ; 4c3)将第一属性元件dn发送给中介,基础元件Cltl和第二属性元件di2发送给用户; 4d)用户进行签名: 4dl)用户执行随机化过程:选择集合ω' =ωΠω%其中ω?是与签名树Tsk的叶 子节点相关的属性集,对每个ω',为了签名随机化,分别选择随机数ζZq,将 (ID,ft?',{<T, 发送给中介; 4d2)中介检查用户ID和属性的有效性:中介接收到后,首先检查用 户撤销列表,判断该ID是否被撤销,如果ID已经被撤销,则中介返回一个错误的符号Λ, 否则检查属性状态列表,判断属性ω'是否从用户属性集合ω中撤销,若属性^被撤 销,则中介返回错误的符号Δ;否则,中介计算签名元件:,并发送给用户; 4d3)用户根据中介返回的信息计算签名〇 :如果用户从中介接收到的是错误符号Λ, 则停止进一步的计算;否则,选择第六随机数γ,输出签名0 = ,并 发送给云服务器,其中Otl=H(M) ?=<2?Τ,Μ表示用户修改并重新加密 后的数据文件,HO表示哈希函数。
6.根据权利要求1所述的基于数据共享的文件访问和修改权限控制方法,其中所述步 骤(5)中云服务器对用户进行基于属性的签名认证,按如下步骤进行: (5a)计算基于属性的签名认证值
其中:Oq=H(M)YdQ,py(0) =Θ,o'Q=gY,i/Q=g$"_1),g是生成元,u是第五随数 机,γ是第六随机数,M表示用户修改并重新加密后的数据文件,HO表示哈希函数,e是双 线性运算符; (5b)将签名认证值F与公共参数S中的第八个参数Z=e(gpg2)进行比较:若F=Z, 则认证成功,表明用户拥有修改文件的权限,云服务器存储文件,否则,云服务器将文件丢 弃。
【文档编号】H04L29/06GK104468615SQ201410821538
【公开日】2015年3月25日 申请日期:2014年12月25日 优先权日:2014年12月25日
【发明者】樊凯, 黄娜娜, 李晖, 田琼 申请人:西安电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1