一种云存储环境中的用户访问权限回收方法

文档序号:7804214阅读:491来源:国知局
一种云存储环境中的用户访问权限回收方法
【专利摘要】本发明公开了一种云存储环境中用户权限回收的方法,解决现有云环境中用户权限回收时引起安全隐患和数据重加密带来的性能开销问题。包括:客户端进程,云存储系统进程和安全管理中心进程,云存储系统实现令牌链管理更新,通知安全管理中心分发密钥、令牌,对密文置入干扰块处理以及用户访问请求判断回复;安全管理中心实现用户注册、登录,权限授予、回收,密钥管理、分发,以及用户令牌分发。本发明利用令牌机制实现密文的干扰处理,采用立即回收机制,当回收用户权限时,立即更新令牌并对密文进行重干扰处理,解决了非立即回收机制中用户权限回收时引起的安全隐患。本方法无需对数据进行重加密处理,极大地减少了系统的性能开销。
【专利说明】—种云存储环境中的用户访问权限回收方法
【技术领域】
[0001]本发明属于计算机存储技术和信息安全【技术领域】,更具体地,涉及一种云存储环境中的用户访问权限回收方法。
【背景技术】
[0002]云存储系统在为用户提供数据存储和业务服务的同时,其云端数据的安全性一直是用户和企业管理者尤为关注的重要问题。为保障用户数据的私密性,当前的云存储安全框架一般是对数据进行加密存储,云服务提供商使用相应的访问控制策略来判断用户对该数据是否拥有合法的的访问权限,密钥的管理和分发由可信第三方负责。虽然这在一定程度上加强了云端数据的安全性,但密文存储的形式也会引发新的问题。当需要变更用户对某数据的访问权限时,为保证回收权限的用户持有该数据的密钥无效,一般的方案是对该数据进行重加密处理,然后进行密钥的更新与重新分发。由于云环境中用户规模庞大且用户权限可能频繁变更,数据的重加密和密钥的重分发将会带来极大的性能开销。如果将重加密放在用户上传数据时进行,由于用户执行上传数据操作时间是不确定的,导致数据的重加密时机也是不确定的,而这期间已被回收权限的用户依然可以访问该数据,可能出现回收权限用户恶意向系统写脏数据,此外此方案无法解决只读数据的重加密问题。

【发明内容】

[0003]针对现有技术的以上缺陷或改进需求,本发明提供了一种云存储环境中的用户访问权限回收方法,其目的在于,通过云端基于密文的掷乱处理,以实现用户权限的立即回收,以解决现有用户权限回收时引起的安全隐患以及对数据进行重加密引起极大性能开销的技术问题。
[0004]为实现上述目的,按照本发明的一个方面,提供了一种云存储环境中的用户访问权限回收方法,包括以下步骤:
[0005](I)客户端接收来自用户的数据操作请求,并判断该请求类型,读数据请求还是权限操作请求,如果是写数据请求,则转入步骤(2),如果是读数据请求,则转入步骤(6),如果是权限操作请求,则转入步骤(11);
[0006](2)客户端随机生成用于对写数据请求对应的数据进行加密的对称密钥,并向安全管理中心提交加密密钥请求;
[0007](3)安全管理中心根据加密密钥请求确定该用户的合法性,并判断合法用户是否在写数据请求对应的数据所对应的权限回收列表中,若不在则获得该数据对应的加密密钥,并将该加密密钥返回给客户端;
[0008](4)客户端利用步骤(2)中生成的对称密钥,利用对称加密算法加密写数据请求对应的数据,以得到密文数据,利用接收到的加密密钥和公私钥加密算法加密生成的对称密钥,以得到密文密钥,将密文数据及密文密钥打包为密文数据包,并向云存储端发送写数据请求;[0009](5)云存储端接收来自客户端的写数据请求,根据该写数据请求确定该用户的合法性,并在合法的用户对写数据请求对应的数据拥有写访问权限时随机生成一个令牌,并将该令牌作为写数据请求中的数据对应令牌链的链尾令牌,随机生成干扰块并按照令牌中制定的规则,将干扰块插入密文数据,并保存得到的数据;
[0010](6)客户端向云存储端发出读数据请求;
[0011](7)云存储端根据来自客户端的读数据请求中的用户身份证书确定该用户的合法性,并在合法的用户拥有对该数据的读访问权限时将该数据返回给客户端,查找该数据对应的令牌链中的链尾令牌,向安全管理中心发送密钥请求;
[0012](8)安全管理中心根据该密钥请求判断用户是否在读数据请求对应的数据所对应的权限回收列表中,若不在则查找请求数据所对应的解密密钥,并将解密密钥、令牌返回给客户端,然后进入步骤(9),若存在,则向客户端返回客户端拒绝服务信息,然后过程结束;
[0013](9)客户端等待并接收云存储端及安全管理中心返回的信息,若云存储端返回信息为请求的数据信息且安全管理中心返回信息为解密密钥及令牌,则转步骤(10),否则过程结束;
[0014](10)客户端利用返回的令牌处理返回的数据,剔除数据中的干扰块,得到密文数据,利用返回的解密密钥解密返回数据中的密文密钥得到对称密钥,并利用对称密钥解密密文数据,以得到用户请求原始数据;
[0015](11)客户端向安全管理中心发出用户权限回收请求;
[0016](12)安全管理中心根据客户端用户权限回收请求验证用户身份证书,以判断用户是否合法,如果合法则转步骤(13),否则向客户端返回用户身份证书错误信息,然后过程结束;
[0017](13)安全管理中心判断回收权限的用户是否在该用户权限回收请求对应数据ID所对应的权限回收列表中,若用户不在权限回收列表中,则将回收权限的用户ID插入权限回收列表,向云存储端发出用户权限回收请求,并向客户端返回用户权限回收成功信息,然后转入步骤(14);若用户在权限回收列表中,则向客户端返回该用户已在权限回收列表中提示信息;
[0018](14)云存储端根据用户权限回收请求查找其中数据ID所对应的令牌链,并获得链尾令牌,利用获得的链尾令牌剔除数据ID所对应的数据中的干扰块,得到未经过干扰处理的密文数据,利用令牌生成规则,随机生成一把新的令牌,并将其加入令牌链,作为新的链尾令牌,随机生成干扰块并按照新令牌中制定的规则,将干扰块插入获得的密文数据,得到并保存新的干扰数据,并返回客户端用户权限回收成功信息。
[0019]优选地,加密密钥请求包括用户身份证书、以及写数据请求对应的数据的ID号,写数据请求包括用户身份证书、打包后的密文数据、密文密钥、写数据请求对应的数据的元数据,读数据请求包括用户身份证书和读数据请求对应的数据的ID,用户权限回收请求包括用户身份证书、用户权限回收请求对应的数据的ID和回收权限的用户ID。
[0020]优选地,步骤(3)包括以下子步骤:
[0021](3-1)安全管理中心根据加密密钥请求中的用户身份证书判断用户是否合法,如果合法则转入步骤(3-2),否则向用户返回请求失败信息,然后过程结束;
[0022](3-2)安全管理中心判断该用户是否在写数据请求对应的数据所对应的权限回收列表中,若在则返回用户请求失败信息,否则转入步骤(3-3),其中若权限列表不存在则表示用户不在权限回收列表中;
[0023](3-3)安全管理中心查找是否可以在本地密钥库中找到该数据对应的加密密钥,若找到则转入步骤(3-4),否则转入步骤(3-5);
[0024](3-4)安全管理中心将查找到的加密密钥返回给客户端,然后进入步骤(4);
[0025](3-5)安全管理中心根据该数据并利用公私钥加密机制随机生成并保存加密密钥,并将生成的加密密钥返回给客户端,然后进入步骤(4)。
[0026]优选地,还包括步骤:客户端在接收到来自安全管理中心的加密密钥后,向安全管理中心发送正确接收应答,
[0027]优选地,步骤(5)包括以下子步骤:
[0028](5-1)云存储端接收来自客户端的写数据请求,验证用户身份证书,以判断用户是否合法,若非法则返回用户身份证书错误信息,然后过程结束;若合法则转步骤(5-2);
[0029](5-2)云存储端判断用户是否拥有对写数据请求对应的数据的写访问权限,若没有权限则返回用户无写访问权限信息,然后过程结束,若有写访问权限,则转步骤(5-3);
[0030](5-3)云存储端随机生成一个令牌,并将该令牌作为写数据请求中的数据对应令牌链的链尾令牌,随机生成干扰块并按照令牌中制定的规则,将干扰块插入密文数据,保存得到的数据,并向客户端返回用户写数据成功信息。
[0031]优选地,步骤(7)包括以下子步骤:
[0032](7-1)云存储端根据来自客户端的读数据请求中的用户身份证书判断用户是否合法,如果合法则转步骤(7-2),否则向客户端返回用户身份证书错误信息,然后过程结束;
[0033](7-2)云存储端判断读数据请求对应的数据是否存在,若存在则转步骤(7-3),否则向客户端返回请求数据不存在信息,然后过程结束;
[0034](7-3)云存储端判断用户是否拥有对该数据的读访问权限,若有则将该数据返回给客户端,查找该数据对应的令牌链中的链尾令牌,向安全管理中心发送密钥请求,该请求包括数据的ID、链尾令牌、用户身份证书;否则向客户端返回用户无读访问权限信息。
[0035]总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
[0036](I)可以实现用户权限的立即回收,避免由于用户权限回收可能出现的安全隐患,如在非立即回收机制中,回收权限的用户由于其依旧满足访问控制条件,依然可以对数据进行访问,甚至可以进行恶意的写脏数据;其次,用户权限回收时间的不确定性,会造成系统的安全漏洞;此外非立即回收机制无法解决只读数据重加密问题;
[0037](2)传统的用户权限回收机制中,不可避免的需要进行重加密操作,使回收权限用户的旧密钥失效以避免其利用旧密钥解密密文获得最新的数据。而本发明提出的干扰块处理方法,只需要对云端存储的密文数据利用随机生成的令牌中制定的规则,重新插入干扰块,对于回收权限用户由于无法获得最新的令牌,因此即便拥有旧密钥也无法解密得到原始数据。由于加密算法的性能瓶颈,因此重加密往往会带来极大的性能开销,而本发明利用密文数据的重新干扰处理,避免用户权限回收时的重加密问题,极大的减少了系统的性能开销;
[0038](3)本发明完全支持写数据请求,本发明的用户写数据请求和现在通用写数据流程区别在于云存储端数据保存时增加了一步,利用令牌对上传数据进行插入干扰块的处理,同理本发明也同样支持用户的数据其他访问请求,如删除、移动、重命名等请求。
[0039](4)本发明适用性广,并不局限于云环境系统,由于令牌的生成规则、密文数据的干扰处理与云存储系统都没有必然联系,因此对于任意一个存在用户权限回收的系统,本发明都将适用。
【专利附图】

【附图说明】
[0040]图1为本发明的流程示意图。
[0041]图2为客户端进程示意图。
[0042]图3为云存储端进程示意图。
[0043]图4为令牌结构示意图。
[0044]图5为令牌链结构示意图。
[0045]图6为干扰块结构示意图。
[0046]图7为对密文数据进行干扰处理示意图。
[0047]图8为安全管理中心进程示意图。
[0048]图9为用户登录和读访问数据时序图。
[0049]图10为用户登录和写访问数据时序图。
[0050]图11为用户登录和回收用户权限时序图。
【具体实施方式】
[0051]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
[0052]以下首先就本发明的技术术语进行解释和说明:
[0053]原文件:指未加密的文件;
[0054]身份证书:一种标志用户身份特征的数据结构,用于用户身份判断以及访问控制中判断用户是否拥有访问权限;
[0055]对称密码机制:加密和解密采用相同的密钥,解密是加密的逆运算;
[0056]对称密钥:随机生成的二进制数据,用于对原文件加密或解密;
[0057]加密文件:使用对称密钥对原文件采用对称密钥密码机制加密后得到的文件;
[0058]完整性校验密钥:随机生成的二进制数据,用于对加密文件加密;
[0059]签名文件:使用完整性校验密钥,采用哈希函数对加密文件进行加密得到的二进制数据;
[0060]权限回收列表:记录回收权限的用户标识信息;
[0061]干扰块:可自定义长度的二进制数据块;
[0062]令牌:记录插入加密文件中所有的干扰块的基本信息的数据结构,用于加密文件中插入或副除干扰块;
[0063]令牌链:由令牌组成的链式结构,其中链后面的令牌可以推导出之前的令牌,而之前的令牌无法推导出后面的令牌;
[0064]以下结合实施例和附图对本发明进一步说明。
[0065]如图1所示,本发明包括客户端进程、云存储系统进程和安全管理中心进程,分别运行在分布式文件系统的客户端主机、认证端主机和云存储系统主机上。三个模块协同运行,其中客户端实现各种访问操作请求,包括登陆系统、读访问数据请求,写数据上传和回收用户权限,在客户端,读访问数据时,首先通过从安全管理中心接收的令牌剔除云存储系统返回数据中的干扰块,恢复密文,然后利用密钥进行解密得到原始数据;而写访问则是加密数据,密文上传;云存储系统实现令牌链管理更新,通知安全管理中心分发密钥、令牌,对密文置入干扰块处理以及用户访问请求判断回复;安全管理中心实现用户注册、登录,权限授予、回收,密钥管理和分发,以及用户令牌分发。
[0066]本发明采用令牌链机制对用户上传的密文数据进行干扰处理,因此用户即便拥有解密密钥,在没有获得相应的令牌时,用户无法恢复密文数据,因此无法解密密文得到原始数据,从而避免了用户权限回收时必要的重加密操作。
[0067]令牌是一个包含干扰块生成及插入密文规则的数据结构,云端可以通过令牌对密文进行干扰处理;用户可以通过令牌将干扰处理后的数据中的干扰块剔除,从而恢复密文数据。令牌链,是由令牌组成的链式结构,其中链后面的令牌可以推出之前的令牌,而之前的令牌无法推出后面的令牌,其中链尾令牌为云端用于干扰处理密文数据的关键令牌,同时也是用户进行剔除干扰块处理的令牌。当用户权限回收时,只需要在令牌链上新生成一个链尾令牌,并利用新生成的令牌对密文数据进行重新干扰处理,即可实现用户权限的立即回收。
[0068]如图1所示,本发明云存储环境中的用户访问权限回收方法包括以下步骤:
[0069](I)客户端接收来自用户的数据操作请求,并判断该请求类型,读数据请求还是权限操作请求,如果是写数据请求,则转入步骤(2),如果是读数据请求,则转入步骤(13),如果是权限操作请求,则转入步骤(20);
[0070](2)客户端随机生成用于对写数据请求对应的数据进行加密的对称密钥,并向安全管理中心提交加密密钥请求,该请求包括用户身份证书、以及写数据请求对应的数据的ID号;具体而言,本步骤是采用对称加密算法(如Advanced Encryption Standard,简称AES)生成密钥;
[0071](3)安全管理中心根据加密密钥请求中的用户身份证书判断用户是否合法,如果合法则转入步骤(4),否则向用户返回请求失败信息,然后过程结束;
[0072](4)安全管理中心判断该用户是否在写数据请求对应的数据所对应的权限回收列表中,若在则返回用户请求失败信息,否则转入步骤(5),其中若权限列表不存在则表示用户不在权限回收列表中;
[0073](5)安全管理中心查找是否可以在本地密钥库中找到该数据对应的加密密钥,若找到则转入步骤(6),否则转入步骤(7);
[0074](6)安全管理中心将查找到的加密密钥返回给客户端,然后进入步骤(8);
[0075](7)安全管理中心根据该数据并利用公私钥加密机制随机生成并保存加密密钥,并将生成的加密密钥返回给客户端,然后转入步骤(8);具体而言,随机生成加密密钥是采用采用非对称加密机制,例如RSA算法;[0076](8)客户端在接收到来自安全管理中心的加密密钥后向安全管理中心发送正确接收应答,并转步骤(9);
[0077](9)客户端利用步骤(2)中生成的对称密钥,利用对称加密算法加密写数据请求对应的数据,以得到密文数据,然后利用(8)中接收到的加密密钥和公私钥加密算法加密步骤(2)中生成的对称密钥,以得到密文密钥,将密文数据及密文密钥打包为密文数据包,并向云存储端发送写数据请求,具体而言,写数据请求包括用户身份证书、打包后的密文数据、密文密钥、写数据请求对应的数据的元数据等;
[0078](10)云存储端接收来自客户端的写数据请求,验证用户身份证书,以判断用户是否合法,若非法则返回用户身份证书错误信息,然后过程结束;若合法则转步骤(11);
[0079](11)云存储端判断用户是否拥有对写数据请求对应的数据的写访问权限,若没有权限则返回用户无写访问权限信息,然后过程结束,若有写访问权限,则转步骤(12);
[0080]具体而言,用户权限判断主要依赖于云存储端采用的访问控制策略,如基于身份的访问控制策略采用访问控制列表授予用户权限,若用户在访问控制列表中,则表示用户拥有读访问权限,否则表示用户没有读访问权限;
[0081](12)云存储端随机生成一个令牌(token),并将该令牌作为写数据请求中的数据对应令牌链的链尾令牌,随机生成干扰块并按照令牌中制定的规则,将干扰块插入步骤(9)得到的密文数据,保存得到的数据,并向客户端返回用户写数据成功信息;具体而言,若令牌链不存在,则新建一条空令牌链,并将随机生成的令牌作为空令牌链的首令牌;
[0082]其中,云存储端判断并存储用户上传数据的过程结合实例作进一步说明:
[0083]设用户写数据请求对应的数据为Data,并假设用户拥有合法的访问权限,则云存储端首先是判断Data是否已经存在,即判断用户是写数据还是新上传数据,其中写数据由于令牌链已经存在,直接获得链尾令牌token即可;新上传数据则随机生成一个新的令牌token,并将其作为该数据对应的令牌链的第一个令牌;
[0084]按照token制定原则,生成如图6的干扰块,并将干扰块插入用户上传数据,得到如图7所示的置入干扰块后的数据Data’并保存;
[0085](13)客户端向云存储端发出读数据请求,其中读数据请求包括用户身份证书和读数据请求对应的数据的ID ;
[0086](14)云存储端根据来自客户端的读数据请求中的用户身份证书判断用户是否合法,如果合法则转步骤(16),否则向客户端返回用户身份证书错误信息,然后过程结束;
[0087](15)云存储端判断读数据请求对应的数据是否存在,若存在则转步骤(16),否则向客户端返回请求数据不存在信息,然后过程结束;
[0088](16)云存储端判断用户是否拥有对该数据的读访问权限,若有则将该数据返回给客户端,查找该数据对应的令牌链中的链尾令牌,向安全管理中心发送密钥请求,该请求包括数据的ID、链尾令牌、用户身份证书;否则向客户端返回用户无读访问权限信息;
[0089]具体而言,用户权限判断主要依赖于云存储端利采用的访问控制策略,如基于身份的访问控制策略采用访问控制列表授予用户权限,若用户在访问控制列表中,则表示用户拥有读访问权限,否则表示用户没有读访问权限;返回客户端的数据包括用户请求的数据、请求数据对应的密文密钥。
[0090](17)安全管理中心根据该密钥请求判断用户是否在读数据请求对应的数据所对应的权限回收列表中,若不在(其中若权限回收列表不存在,亦表示用户不在权限回收列表中)则查找请求数据所对应的解密密钥,并将解密密钥、令牌返回给客户端,然后进入步骤(18),若存在,则向客户端返回客户端拒绝服务信息,然后过程结束
[0091](18)客户端等待并接收云存储端及安全管理中心返回的信息,若云存储端返回信息为请求的数据信息且安全管理中心返回信息为解密密钥及令牌则转步骤(19),否则表示用户无权读取该请求数据,然后过程结束;
[0092](19)客户端首先利用步骤(17)返回的令牌处理步骤(16)返回的数据,剔除数据中的干扰块,得到密文数据,利用步骤(17)返回的解密密钥解密步骤(16)返回数据中的密文密钥得到对称密钥,并利用对称密钥解密密文数据,以得到用户请求原始数据;
[0093]下面结合实施例对获得云存储端及安全管理中心返回信息后的过程作进一步的说明:
[0094]用户接收到云端返回的密文数据Data、密文密钥Enc(K AES)及其元数据metadata,接收到安全管理中心返回的解密密钥Ks及令牌token ;
[0095]首先用户更具token中制定的干扰块插入规则,将Data中的干扰块去除,获得没有干扰块的数据Data’,如图7,剔除干扰块即为插入干扰块的逆过程;用户利用Ks解密Enc (K AES)得到对称密钥K AES,以上两个步骤可以并行处理;然后用户利用Kaes解密Data’便可得到请求的原始数据。
[0096](20)客户端向安全管理中心发出用户权限回收请求,该用户权限回收请求包括用户身份证书、用户权限回收请求对应的数据的ID和回收权限的用户ID ;
[0097](21)安全管理中心根据客户端用户权限回收请求验证用户身份证书,以判断用户是否合法,如果合法则转步骤(22),否则向客户端返回用户身份证书错误信息,然后过程结束
[0098](22)安全管理中心判断回收权限的用户是否在该用户权限回收请求对应数据ID所对应的权限回收列表中,若用户不在权限回收列表中,则将回收权限的用户ID插入权限回收列表,向云存储端发出用户权限回收请求,并向客户端返回用户权限回收成功信息,然后转入步骤(23),该用户权限回收请求包括该数据ID和回收权限的用户ID ;若用户在权限回收列表中,则向客户端返回该用户已在权限回收列表中提示信息;若回收权限列表不存在则新建一个权限回收列表,具体新建权限回收列表方法可根据系统具体采用的访问控制策略来选定(如基于身份的访问控制中,采用访问控制列表ACL来实现),然后按照用户不在权限回收列表执行后续操作;
[0099](23)云存储端根据用户权限回收请求查找其中数据ID所对应的令牌链,并获得链尾令牌;
[0100](24)云存储端利用(23)获得的链尾令牌剔除数据ID所对应的数据中的干扰块,得到未经过干扰处理的密文数据;利用令牌生成规则,随机生成一把新的令牌,并将其加入令牌链,作为新的链尾令牌,随机生成干扰块并按照新令牌中制定的规则,将干扰块插入获得的密文数据,得到并保存新的干扰数据;返回客户端用户权限回收成功信息。
[0101]具体而言,图2详细描述客户端进程示意图,图3为云存储端进程示意图,图8为安全管理中心进程示意图,三个进程协同合作,完成用户的操作请求,整体操作流程如图1所示。上述步骤(13)至(19)对应读数据请求,其时序图如图9所示;上述步骤(2)至(12)对应写数据请求,其时序图如图10所示;上述步骤(20)至(24)对应权限回收请求,其时序图如图11所示。
[0102]此外图4至7表示令牌及令牌链的数据结构和令牌及干扰块的使用原则,针对上述步骤(12)、(24),本发明采用伪随机算法进行令牌链的构造,因此可实现令牌生成的不可预测性,上述步骤(12)、(19)、(24)利用令牌处理数据方法主要利用令牌定义的数据结构,图6、图7显示了根据令牌进行数据处理的过程。
[0103]本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种云存储环境中的用户访问权限回收方法,其特征在于,包括以下步骤: (1)客户端接收来自用户的数据操作请求,并判断该请求类型,读数据请求还是权限操作请求,如果是写数据请求,则转入步骤(2),如果是读数据请求,则转入步骤(6),如果是权限操作请求,则转入步骤(11); (2)客户端随机生成用于对写数据请求对应的数据进行加密的对称密钥,并向安全管理中心提交加密密钥请求; (3)安全管理中心根据加密密钥请求确定该用户的合法性,并判断合法用户是否在写数据请求对应的数据所对应的权限回收列表中,若不在则获得该数据对应的加密密钥,并将该加密密钥返回给客户端; (4)客户端利用步骤(2)中生成的对称密钥,利用对称加密算法加密写数据请求对应的数据,以得到密文数据,利用接收到的加密密钥和公私钥加密算法加密生成的对称密钥,以得到密文密钥,将密文数据及密文密钥打包为密文数据包,并向云存储端发送写数据请求; (5)云存储端接收 来自客户端的写数据请求,根据该写数据请求确定该用户的合法性,并在合法的用户对写数据请求对应的数据拥有写访问权限时随机生成一个令牌,并将该令牌作为写数据请求中的数据对应令牌链的链尾令牌,随机生成干扰块并按照令牌中制定的规则,将干扰块插入密文数据,并保存得到的数据; (6)客户端向云存储端发出读数据请求; (7)云存储端根据来自客户端的读数据请求中的用户身份证书确定该用户的合法性,并在合法的用户拥有对该数据的读访问权限时将该数据返回给客户端,查找该数据对应的令牌链中的链尾令牌,向安全管理中心发送密钥请求; (8)安全管理中心根据该密钥请求判断用户是否在读数据请求对应的数据所对应的权限回收列表中,若不在则查找请求数据所对应的解密密钥,并将解密密钥、令牌返回给客户端,然后进入步骤(9),若存在,则向客户端返回客户端拒绝服务信息,然后过程结束; (9)客户端等待并接收云存储端及安全管理中心返回的信息,若云存储端返回信息为请求的数据信息且安全管理中心返回信息为解密密钥及令牌,则转步骤(10),否则过程结束; (10)客户端利用返回的令牌处理返回的数据,剔除数据中的干扰块,得到密文数据,利用返回的解密密钥解密返回数据中的密文密钥得到对称密钥,并利用对称密钥解密密文数据,以得到用户请求原始数据; (11)客户端向安全管理中心发出用户权限回收请求; (12)安全管理中心根据客户端用户权限回收请求验证用户身份证书,以判断用户是否合法,如果合法则转步骤(13),否则向客户端返回用户身份证书错误信息,然后过程结束; (13)安全管理中心判断回收权限的用户是否在该用户权限回收请求对应数据ID所对应的权限回收列表中,若用户不在权限回收列表中,则将回收权限的用户ID插入权限回收列表,向云存储端发出用户权限回收请求,并向客户端返回用户权限回收成功信息,然后转入步骤(14);若用户在权限回收列表中,则向客户端返回该用户已在权限回收列表中提示信息; (14)云存储端根据用户权限回收请求查找其中数据ID所对应的令牌链,并获得链尾令牌,利用获得的链尾令牌剔除数据ID所对应的数据中的干扰块,得到未经过干扰处理的密文数据,利用令牌生成规则,随机生成一把新的令牌,并将其加入令牌链,作为新的链尾令牌,随机生成干扰块并按照新令牌中制定的规则,将干扰块插入获得的密文数据,得到并保存新的干扰数据,并返回客户端用户权限回收成功信息。
2.根据权利要求1所述的用户访问权限回收方法,其特征在于, 加密密钥请求包括用户身份证书、以及写数据请求对应的数据的ID号; 写数据请求包括用户身份证书、打包后的密文数据、密文密钥、写数据请求对应的数据的元数据; 读数据请求包括用户身份证书和读数据请求对应的数据的ID ; 用户权限回收请求包括用户身份证书、用户权限回收请求对应的数据的ID和回收权限的用户ID。
3.根据权利要求1所述的用户访问权限回收方法,其特征在于,步骤(3)包括以下子步骤: (3-1)安全管理中心根据加密密钥请求中的用户身份证书判断用户是否合法,如果合法则转入步骤(3-2),否则向用户返回请求失败信息,然后过程结束; (3-2)安全管理中心判断该用户是否在写数据请求对应的数据所对应的权限回收列表中,若在则返回用户请求失败信息,否则转入步骤(3-3),其中若权限列表不存在则表示用户不在权限回收列表中; (3-3)安全管理中心查找是否可以在本地密钥库中找到该数据对应的加密密钥,若找到则转入步骤(3-4),否则转入步骤(3-5); (3-4)安全管理中心将查找到的加密密钥返回给客户端,然后进入步骤(4); (3-5)安全管理中心根据该数据并利用公私钥加密机制随机生成并保存加密密钥,并将生成的加密密钥返回给客户端,然后进入步骤(4)。
4.根据权利要求1所述的用户访问权限回收方法,其特征在于,还包括步骤:客户端在接收到来自安全管理中心的加密密钥后,向安全管理中心发送正确接收应答。
5.根据权利要求1所述的用户访问权限回收方法,其特征在于,步骤(5)包括以下子步骤: (5-1)云存储端接收来自客户端的写数据请求,验证用户身份证书,以判断用户是否合法,若非法则返回用户身份证书错误信息,然后过程结束;若合法则转步骤(5-2); (5-2)云存储端判断用户是否拥有对写数据请求对应的数据的写访问权限,若没有权限则返回用户无写访问权限信息,然后过程结束,若有写访问权限,则转步骤(5-3); (5-3)云存储端随机生成一个令牌,并将该令牌作为写数据请求中的数据对应令牌链的链尾令牌,随机生成干扰块并按照令牌中制定的规则,将干扰块插入密文数据,保存得到的数据,并向客户端返回用户写数据成功信息。
6.根据权利要求1所述的用户访问权限回收方法,其特征在于,步骤(7)包括以下子步骤: (7-1)云存储端根据来自客户端的读数据请求中的用户身份证书判断用户是否合法,如果合法则转步骤(7-2),否则向客户端返回用户身份证书错误信息,然后过程结束; (7-2)云存储端判断读数据请求对应的数据是否存在,若存在则转步骤(7-3),否则向客户端返回请求数据不存在信息,然后过程结束; (7-3)云存储端判断用户是否拥有对该数据的读访问权限,若有则将该数据返回给客户端,查找该数据对应的令牌链中的链尾令牌,向安全管理中心发送密钥请求,该请求包括数据的ID、链尾令 牌、用户身份证书;否则向客户端返回用户无读访问权限信息。
【文档编号】H04L29/08GK103973698SQ201410213922
【公开日】2014年8月6日 申请日期:2014年5月19日 优先权日:2014年5月19日
【发明者】李春花, 周可, 吴泽邦, 魏荣磊, 边泽明, 杨勇, 张彦哲 申请人:华中科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1