一种数据安全存储方法

文档序号:8490014阅读:511来源:国知局
一种数据安全存储方法
【技术领域】
[0001] 本发明设及云安全,特别设及一种云数据安全存储方法。
【背景技术】
[0002] 云存储作为一种新兴的服务形式W其弹性配置、按需购买、易于维护等优点成为 众多组织的存储选择。然而在云存储模式下,数据脱离了用户的控制范围,该引起了用户对 服务器可靠性W及数据安全性的担忧。举例而言,随着智慧医疗的发展,基于云计算的医疗 平台被医疗机构广泛使用,医学和医疗中产生的敏感数据需要保证存储安全,此时密文访 问控制是云存储模式下提高医务工作者数据机密性和实现细粒度访问控制的重要方法。在 人员规模庞大且部口内部人员对资源的访问权限基本一致的组织中,如果依然将每个用户 作为单独的访问控制单元会浪费大量的计算资源和存储资源。高安全级别数据可能存在 频繁的权限更新操作,此时数据拥有者需从服务器取回数据和密钥密文并更新上传到服务 器,并分发新密钥给用户,显然数据再次加密和密钥重新生成给数据库端带来了严重的性 能开销,降低系统整体处理效率。因此,如何有效降低庞大用户规模下高安全数据频繁策略 更新给数据库端带来的密钥管理和数据更新性能开销是密文访问控制亟待解决的问题。现 有的支持动态策略的方案中密钥索引树虽然有效减少了部分权限更新的代价,但用户的密 钥维护量代价依旧很高,同时在权限更新情况下,高安全级别数据的更新依然需要由数据 库端完成,并未安全且有效地减少数据管理的代价。

【发明内容】

[0003] 为解决上述现有技术所存在的问题,本发明提出了一种数据安全存储方法,包 括:
[0004] 在密钥索引树中上将资源和用户分别归类为资源组和角色,利用密钥运算机制保 护节点密钥及文件加密密钥,将再次加密任务从数据库端转移到服务器执行,数据库端只 维护新生成密钥的任务。
[0005] 优选地,在所述将资源和用户分别归类为资源组和角色之前,该方法还包括:
[0006] 利用基于鉴权的密钥运算方法构建索引树架构,并为用户分配唯一的角色密钥, 构建基于密钥运算的密钥索引树,所述密钥索引树中,对于父节点Vi与子节点Vj.的密钥ki 和kj,生成鉴权Tw=kJ?h(ki),其中?为异或操作,h为一个单向化sh函数,w使任何持 有父节点密钥ki的用户,利用计算获得h(ki),并通过计算kj.=h化i) ?Ty获得子节点VJ 的密钥kj。
[0007] 优选地,所述再次加密用于将文件密钥再次加密代价转移到服务器执行,更新叶 节点非对称密钥加密的文件密钥;文件密钥密文长度不随文件再次加密次数的增加而增 加,并且使服务器在执行再次加密的过程中无法获取明文的相关信息;
[000引所述再次加密的公式如下:
[0009]k' f (gb mod P) r mod P = kf (gS mod巧%〇(! P kf/k' f (gt mod巧a-b,
[0010] 式中,p为大素数、Z>p为模P的乘法循环群,g为循环群Ztp生成元,kf,k'f为密钥 明文信息,参数a,b,r满足条件1《a,b,r《P-2,其中a,b为私钥,r为加密随机参数,其 中k'f(gbmodP)rmodP,kf(gamodP)rmodP为加密kf,k'f所得到的密文的后半部分, 前半部分均为gtmodp;用公钥gamodP所加密的kf密文转换成使用公钥gbmodP加密 k'f所得到的密文;再次加密密钥公式为
[0011] rk = kf/k,f (gt mod F〇a-b;
[0012] 当策略发生改变时,数据库端生成再次加密密钥的相关参数kf,k'-IfW及a-b,并 将其传递给服务器对文件密钥进行重新加密即可完成密钥的更新。
[0013] 优选地,所述再次加密包括参数初始化,文件发布,密钥分布和获取文件步骤;
[0014] 在在参数初始化阶段,数据库端生成系统初始化公开参数大素数P,域Z>p、生成元 g、随机参数rW及gfmodP;在文件发布阶段,由密钥树构建模块构建密钥树并实现文件的 加密发布功能;在数据库端新增文件f到服务器过程中,首先向服务器请求W根节点为起 点、路径为文件f的访问控制向量ACS讯的鉴权链,然后利用数据库端的密钥化和鉴权链 计算尾节点密钥vk;获得密钥vk之后:首先如果链的长度与ACS(f)长度相等,则直接利 用vk加密f的对称密钥kf,由文件加密模块完成文件f的加密和签名后上传至服务器;否 贝1J,根据ACS(f)创建索引树的分支,同时创建索引树节点和对节点分发密钥由上至下构建 鉴权链,并利用根节点的非对称密钥加密文件密钥kf,最后利用文件加密模块实现文件的 加密和签名,将索引树节点信息、鉴权链、数据及密钥密文上传至服务器;
[0015] 在文件上传过程中:1)字符为1代表其对应的角色具有该文件的访问权限需要 增加对应角色到该节点之间的角色鉴权;2)密钥索引树叶节点对应的密钥为公私钥对(gx modP,X),非叶节点是随机产生的对称密钥所W在创建新的节点时需要判断该节点是否为 叶节点;
[0016] 所述文件发布步骤进一步包括,其中访问控制矩阵经过算法转换成密钥索引树:
[0017] W访问控制矩阵ACS(f),数据库端的对称密钥化作为输入,
[001引 1)根据ACS讯获取文件f对应的鉴权链;
[0019] 2)计算出链尾节点的密钥vk;
[0020] 3)如果ACS(f)〉链长,执行步骤4),否则执行步骤6);
[0021] 4)计算出链相对于ACS(f)缺少的控制向量ACS(f)';
[002引 5)依次根据ACS(f)'对应的字符生成索引树左右节点,并为新节点分发密钥,最 后的叶节点分发公私钥对,由上至下形成鉴权,如果为右节点则同时生成对应角色与该右 节点的角色鉴权,最后随机生成文件f的对称密钥kf;
[0023] 6)调用文件加密模块实现文件和文件密钥的加密和签名,并将新创建的索引树节 点、鉴权链、角色鉴权、文件f及密钥kf的密文上传到服务器;在密钥分布阶段数据库端根 据用户所属的角色,通过安全信道将用户对应的角色密钥rk发送给所有用户,服务器为每 个角色对应的用户分发对应的外层密钥rk';
[0024] 在获取文件阶段,利用文件访问模块获取文件的明文;用户向服务器发送用户角 色信息R及文件f的访问控制向量ACS(f),服务器返回文件对应的鉴权链W及文件密钥密 文Ckf、文件加密参数flag、文件密文Cf;在flag为0的情况下,用户利用持有的角色密钥 解析鉴权链获取加密文件密钥kf的密钥,此密钥为非对称密钥(私钥为a,公钥为gamod P),进而利用解密算法获取文件密钥kf,最后根据kf获得文件f的明文;在flag为1的情 况下,首先根据角色外层密钥解密外层加密获取文件的密文,进而获得文件f的密钥kf,进 行解密获取文件f明文数据。
[002引本发明相比现有技术,具有W下优点:
[0026] 该方法降低了数据库端维护密钥的复杂度,提高了密钥安全性;将加密任务转移 到服务器执行,降低密钥更新的开销。同时,本发明利用改进的加密策略尽量降低数据的返 回频率,从密钥和数据两个方面节省计算开销和通信开销。
【附图说明】
[0027] 图1是根据本发明实施例的数据安全存储方法的流程图。
【具体实施方式】
[002引下文与图示本发明原理的附图一起提供对本发明一个或者多个实施例的详细描 述。结合该样的实施例描述本发明,但是本发明不限于任何实施例。本发明的范围仅由权 利要求书限定,并且本发明涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节 W便提供对本发明的透彻理解。出于示例的目的而提供该些细节,并且无该些具体细节中 的一些或者所有细节也可W根据权利要求书实现本发明。
[0029] 本发明的一方面提供了一种数据安全存储方法。图1是根据本发明实施例的数据 安全存储方法流程图。针对服务器的可靠性问题,本发明采用主流应用情景服务器,服务器 正确执行实施例中所提出的访问控制策略,但是会尝试获取数据的明文信息。同时用户中 可能存在恶意的用户,尝试越权访问不属于自己的文件信息。因此,本发明主要是防止服务 器获取数据库端数据的明文信息和用户越权访问文件该两种攻击方式。
[0030] 本发明利用索引树保留其策略更新优势,并在其基础上对资源和用户进行归类为 资源组和角色,并结合
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1