一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

云环境下租户托管密钥更新的方法、系统、介质及设备与流程

2022-11-19 16:18:36 来源:中国专利 TAG:


1.本发明涉及密钥管理技术领域,具体地说是一种云环境下租户托管密钥更新方法、系统、介质及设备。


背景技术:

2.随着云计算技术的快速发展,政企上云迅猛发展带动了云上应用数量的急剧增加,应用和数据的安全防护已成为云上安全防护的核心要求之一。在云环境下,租户单位在云上建设有各类的应用系统,同时会产生和处理各类数据,进行存储。租户在云上存储的数据,有许多是重要数据和敏感数据,这类数据在存储环节,有着机密性和完整性的要求,需要采用密码技术进行加密保护,而加密所用的数据加密密钥,需要有安全可靠的存放机制。此时,这些租户的应用系统通常采用密钥托管的方式,将自己需要存放的密钥托管至可信的服务端。
3.在云环境下,租户为了对数据存储加密所用到的密钥进行托管,通常传统的托管方式是直接托管数据密钥,即直接将加密数据所使用的数据密钥托管在服务端。这样带来的问题是当数据密钥数量巨大时,租户端的存储数据和服务端对应的数据密钥的映射关系管理会异常困难和复杂,而且托管的数据密钥和海量数据直接关联,存放在服务端的数据密钥的更新难度极大。
4.目前也存在着一类改良的密钥托管方法,即不托管数据密钥,而是增加一层密钥保护关系,采用一种称为“密钥保护密钥”的密钥,对数据密钥进行加密,得到数据密钥密文,租户将数据密钥密文存放在租户端,甚至和数据密文存放在一起,租户将“密钥保护密钥”托管在服务端。但目前这类托管方法又普遍带来其它各种问题,例如:托管密钥的生成和存放缺乏安全机制;托管密钥往往长期使用,不提供更新机制,带来安全隐患;服务端即使可以提供托管密钥的更新功能,但更新过程对租户端使用极其不友好,不能实现平滑安全、便捷地更新。
5.由于这些各种问题的存在,当前的这些密钥托管和更新方式无法满足云租户想要安全、便捷、平滑地对托管密钥进行更新的需求。


技术实现要素:

6.为此,本发明所要解决的技术问题在于提供一种云环境下租户托管密钥更新的方法、装置、介质及设备,使用密钥更新平滑迁移技术、新旧密钥隔离保护技术、新旧数据保护迁移技术相结合的办法,解决了云计算环境下租户托管密钥的安全更新的问题,从而满足云租户所需要的安全、便捷、平滑地对托管密钥进行更新的需求。
7.为解决上述技术问题,本发明提供如下技术方案:云环境下租户托管密钥更新的方法,在租户通过密钥访问模块向租户管理模块和密钥托管模块发送密钥请求信息的方式调用托管密钥时,密钥托管模块对调用的托管密钥进行解析并得到所述托管密钥的生成时间属性和密钥有效期属性,当所述托管密钥的密钥
有效期剩余时间小于或等于预设阈值,则将所述托管密钥标记为待更新托管密钥,同时触发密钥更新模块对所述托管密钥进行更新,密钥更新模块对待更新托管密钥进行更新并将新的托管密钥及与新的托管密钥相关的信息加密存储;新的托管密钥生成并存储后,原有的托管密钥仍留存于密钥存储模块内;在新的托管密钥产生后,密钥托管模块使用与密钥请求信息相匹配的托管密钥对密钥请求信息中的数据密钥密文信息解密,获得数据密钥明文,并使用新的托管密钥对数据密钥明文加密,获得数据密钥新密文,将数据密钥明文、数据密钥新密文以及新的托管密钥的id值作为密钥应答信息发送给租户端的密钥访问模块;租户发出的密钥请求信息中至少包括租户名称、租户id、托管密钥名称、托管密钥id、数据密钥类型和数据密钥密文信息。
8.上述云环境下租户托管密钥更新的方法,密钥更新模块生成一个新的托管密钥后,将新的托管密钥及与新的托管密钥相关的信息加密存储在密钥存储模块中的密钥托管容器的新的密钥托管存储区内,新的密钥托管存储区与原有的密钥托管存储区之间相互隔离。
9.上述云环境下租户托管密钥更新的方法,同一租户的托管密钥及与托管密钥相关的信息存放同一个密钥托管容器内。
10.上述云环境下租户托管密钥更新的方法,不同租户所用的密钥托管容器之间相互隔离。
11.上述云环境下租户托管密钥更新的方法,与托管密钥相关的管理操作均在与该托管密钥相关的密钥托管容器内完成。
12.上述云环境下租户托管密钥更新的方法,托管密钥更新的具体步骤为:s1)密钥更新模块接收密钥托管模块对待更新托管密钥进行更新的指令并对待更新托管密钥进行更新,操作如下:s1-1)增加一个新的托管密钥的id值;s1-2)生成一个新的托管密钥;s1-3)将新的托管密钥和新的托管密钥的id值关联并记录映射关系;s1-4)将新的托管密钥、新的托管密钥的id值、待更新托管密钥以及新的托管密钥的id值与新的托管密钥之间的映射关系返回密钥托管模块;s2)密钥托管模块将新的托管密钥、新的托管密钥的id值以及新的托管密钥的id值与新的托管密钥之间的映射关系加密存储在密钥存储模块内。
13.上述云环境下租户托管密钥更新的方法,新的托管密钥的id值的数值为待更新托管密钥id值的数值加1。
14.云环境下租户托管密钥更新系统,包括:密钥托管模块,用于对密钥请求信息进行解析并与密钥请求信息相关联的托管密钥是否需要进行更新进行判别;密钥更新模块,用于根据密钥托管模块的指令对待更新托管密钥进行更新;密钥存储模块,用于存储托管密钥、托管密钥id值以及托管密钥与托管密钥di值之间的映射关系;密钥存储模块内设置有大于或等于1个密钥托管容器,密钥托管容器内设置有大于或等于1个存储区,不同的两个存储区之间是相互隔离的;不同租户的托管密钥存放在不同的密钥托管容器内,同一租户的不同托管密钥存放在不同的存储区内;
密钥托管模块分别与密钥更新模块和密钥存储模块通信连接。
15.计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述云环境下租户托管密钥更新的方法。
16.计算机设备,包括可读存储介质、处理器以及存储在可读存储介质上并可在处理器上运行的计算机程序,所述计算机程序被处理器执行时实现上述云环境下租户托管密钥更新的方法。
17.本发明的技术方案取得了如下有益的技术效果:1.本发明采用密钥名称映射技术,保证了租户可安全、便捷地托管多组密钥并能进行更新。
18.2.本发明采用了租户密钥安全隔离技术,保证了不同租户之间的托管密钥和存储信息的安全隔离。
19.3.本发明采用了新旧密钥隔离保护技术,对已过期托管密钥和当前更新后托管密钥的分类加密保护,实现了逻辑分类加密隔离保护。
20.4.本发明采用密钥更新平滑迁移技术,保证了租户在密钥更新后的应用业务的连续性。
21.5.本发明采用了新旧数据保护迁移技术,保证了租户端在托管密钥发生更新的情况下,也可以安全顺畅地处理新加密数据和解密旧密文数据。
附图说明
22.图1为本发明中云环境下租户托管密钥更新系统的工作原理图;图2为云环境下租户托管密钥更新的流程图;图3为租户的托管密钥名称和托管密钥的映射关系图;图4为云环境下租户调用托管密码服务的工作原理图;图5为云环境下租户旧的托管密钥和新的托管密钥的密钥保护结构图;图6为云环境下租户托管密钥更新后新旧托管密钥对数据保护的迁移关系图;图7为本发明中可进行云环境下租户托管密钥更新的计算机设备原理图。
具体实施方式
23.下面结合示例,针对本发明进行进一步说明。
24.如图1所示,租户使用云环境进行密钥托管时,租户需要通过密钥访问模块向密钥托管服务端发送调用密钥服务的密钥请求信息,然后由密钥托管服务端向租户提供密钥服务。在密钥托管服务端向租户提供密钥服务时,为了安全起见,需要对密钥托管服务端内存储的托管密钥进行更新。
25.本实施例中,利用云环境下租户托管密钥更新系统对托管密钥进行更新。云环境下租户托管密钥更新系统包括密钥托管模块、密钥更新模块和密钥存储模块,密钥托管模块分别与密钥更新模块和密钥存储模块通信连接。其中,密钥托管模块用于对密钥请求信息进行解析并与密钥请求信息相关联的托管密钥是否需要进行更新进行判别,密钥更新模块用于根据密钥托管模块的指令对待更新托管密钥进行更新,密钥存储模块用于存储托管密钥、托管密钥id值以及托管密钥与托管密钥di值之间的映射关系,密钥存储模块内设置
有大于或等于1个密钥托管容器,密钥托管容器内设置有大于或等于1个存储区,不同的两个存储区之间是相互隔离的;不同租户的托管密钥存放在不同的密钥托管容器内,同一租户的不同托管密钥存放在不同的存储区内。
26.当在租户通过密钥访问模块向租户管理模块和密钥托管模块发送密钥请求信息的方式调用托管密钥时,密钥托管模块对调用的托管密钥进行解析并得到所述托管密钥的生成时间属性和密钥有效期属性,当所述托管密钥的密钥有效期剩余时间小于或等于预设阈值,则将所述托管密钥标记为待更新托管密钥,同时触发密钥更新模块对所述托管密钥进行更新,密钥更新模块对待更新托管密钥进行更新并将新的托管密钥及与新的托管密钥相关的信息加密存储;在新的托管密钥产生后,密钥托管模块使用与密钥请求信息相匹配的托管密钥对密钥请求信息中的数据密钥密文信息解密,获得数据密钥明文,并使用新的托管密钥对数据密钥明文加密,获得数据密钥新密文,将数据密钥明文、数据密钥新密文以及新的托管密钥的id值作为密钥应答信息发送给租户端的密钥访问模块;租户发出的密钥请求信息中至少包括租户名称、租户id、托管密钥名称、托管密钥id、数据密钥类型和数据密钥密文信息。
27.在新的托管密钥产生后,利用原有的托管密钥对密钥请求信息中的数据密钥密文信息解密,获得数据密钥明文,再使用新的托管密钥对数据密钥明文加密,获得数据密钥新密文,将数据密钥明文、数据密钥新密文以及新的托管密钥的id值作为密钥应答信息发送给租户端的密钥访问模块,在这一处理流程中,租户无需先行获取新的托管密钥对密钥请求信息中的数据密钥密文信息进行加密即可实现对新的托管密钥的调用,从而可以实现密钥更新的安全、便捷、平滑。
28.本实施例中,密钥更新模块生成一个新的托管密钥后,将新的托管密钥及与新的托管密钥相关的信息加密存储在密钥存储模块中的密钥托管容器的新的密钥托管存储区内,新的密钥托管存储区与原有的密钥托管存储区之间相互隔离。其中,同一租户的托管密钥及与托管密钥相关的信息存放同一个密钥托管容器内,不同租户所用的密钥托管容器之间相互隔离,且与托管密钥相关的管理操作均在与该托管密钥相关的密钥托管容器内完成。
29.如图2所示,托管密钥更新的具体步骤为:s1)密钥更新模块接收密钥托管模块对待更新托管密钥进行更新的指令并对待更新托管密钥进行更新,操作如下:s1-1)增加一个新的托管密钥的id值;其中,新的托管密钥的id值的数值为待更新托管密钥id值的数值加1;s1-2)生成一个新的托管密钥,并且生成新的托管密钥的数据来源为硬件密码设备,由硬件密码设备的硬件噪声源生成真随机数,保证密钥数据的真随机性;s1-3)将新的托管密钥和新的托管密钥的id值关联并记录映射关系;s1-4)将新的托管密钥、新的托管密钥的id值、待更新托管密钥以及新的托管密钥的id值与新的托管密钥之间的映射关系返回密钥托管模块。
30.s2)密钥托管模块将新的托管密钥、新的托管密钥的id值以及新的托管密钥的id值与新的托管密钥之间的映射关系加密存储在密钥存储模块内。其中,在将新的托管密钥、新的托管密钥的id值以及新的托管密钥的id值与新的托管密钥之间的映射关系进行加密
时,所使用的加密密钥为租户的主密钥。而在对租户主密钥、托管密钥、数据密钥等多种密钥的保护关系上,采用了三层密钥保护机制。而对于新旧两种托管密钥进行保护时,则采用了新旧密钥隔离保护机制,如图5所示,其中,租户主密钥是密钥托管服务端分配给租户的顶层保护密钥,且专用于加密保护当前在用托管密钥;已过期的托管密钥由租户历史密钥保护密钥加密保护。并且,新的托管密钥生成并存储后,原有的托管密钥仍留存于密钥存储模块内。
31.鉴于托管密钥需要更新以及一个租户可以托管多组托管密钥,每组托管密钥可以利用托管密钥名称来加以区分,每种托管密钥通过密钥有效期属性来决定该托管密钥从生成时间开始可以有效使用的时间长度期限。为了便于一个租户可以托管多组密钥,且每组托管密钥可以安全、便捷地使用和更新,同时降低租户端密钥请求访问的复杂度,将一个托管密钥名称与一个或多个托管密钥id映射关联,每一个托管密钥id唯一对应一个具体的托管密钥,同时有生成时间属性标识该托管密钥的生成时间。当该托管密钥需要更新时,在与该托管密钥的托管密钥名称下再新增加一个新的托管密钥的id,生成一个新的托管密钥,新的托管密钥的id值为上一个托管密钥id值加上1,托管密钥更新之后,该组托管密钥名称将新的托管密钥加入映射关系,并且标识该密钥为最新的密钥。以图3为例,租户端请求的托管密钥名称是图3所示的第一组托管密钥,并且租户传递的托管密钥id值是x,此时,该组托管密钥需要更新,更新的方法步骤则是增加一个托管密钥新id,id值为x加上1,生成一个新的托管密钥。
32.租户在使用密钥托管服务时,租户现在密钥托管服务端进行注册,注册信息至少包括租户名称以及租户id。租户注册成功后,服务端为租户分配单独的密钥托管容器,租户托管密钥的管理都在这一独立的密钥托管容器中,该密钥托管容器与其它租户的密钥托管容器之间相互隔离,且不同租户之间的托管密钥和存储信息也是相互隔离。
33.密钥托管服务端为租户创建租户主密钥,用以加密保护租户的托管密钥,使用密钥存储模块保存租户所有的托管密钥,并对所存储的托管密钥名称、托管密钥id以及托管密钥名称与托管密钥id之间的映射关系进行组织管理。
34.如图4所示,租户在租户端使用密钥访问模块,向密钥托管服务端发送密钥请求信息,位于密钥托管服务端的租户管理模块在接收到密钥请求信息之后对密钥请求信息进行解析,利用密钥请求信息中的租户身份信息和密钥信息对密钥请求信息是否合法进行判别,若合法,则将该密钥请求信息传递至与该租户对应的密钥托管模块,反之,则返回密钥请求错误的响应信息。密钥托管模块接收到密钥请求信息后对该密钥请求信息进行解析,获得该密钥请求信息中的托管密钥名称、托管密钥id、数据密钥类型以及数据密钥密文信息,然后通过密钥存储模块取出相应的托管密钥。在获得该密钥请求信息中的托管密钥名称、托管密钥id、数据密钥类型以及数据密钥密文信息后,密钥托管模块对该托管密钥的生成时间属性和密钥有效期属性进行判别,当所述托管密钥的密钥有效期剩余时间小于或等于预设阈值时,判定该托管密钥为需要更新的托管密钥,并将该托管密钥标注为待更新托管密钥,然后出发密钥更新模块进行密钥更新操作。其中,判别租户发出的密钥请求信息是否合法有两个条件,第一个条件为对应的租户是否已在密钥托管服务端合法注册,并且请求信息中的租户名称、租户id与注册信息是否一致;第二个条件为请求信息中的托管密钥名称、托管密钥id是否为有效值,两个条件缺一不可。
35.如图6所示,在托管密钥更新完成之后,若密钥请求信息中所附有的托管密钥信息为与旧的托管密钥相关的信息,则用于该托管密钥信息相关的旧的托管密钥对数据密钥密文信息进行解密,获得数据密钥明文,再用新的托管密钥对上述数据密钥明文进行加密,获得数据密钥新密文,将所述数据密钥明文、数据密钥新密文、托管密钥新id值作为密钥应答信息发送给租户端的密钥访问模块。租户使用租户端的密钥访问模块,接收密钥托管服务端发送的密钥应答信息,使用密钥应答信息中的数据密钥明文,对本地存储的数据密文进行解密操作,获得数据的明文信息;使用密钥应答信息中的数据密钥明文,对本地需要保护的数据明文进行加密操作,获得数据的密文信息;将密钥应答信息中的数据密钥新密文、托管密钥新id值,保存在租户端存储空间。
36.在使用本发明中的云环境下租户托管密钥更新的方法实现托管密钥平滑更新的基础上,租户使用密钥托管服务时,可以将租户密钥安全隔离技术、密钥名称映射和密钥更新平滑迁移技术、新旧密钥隔离保护技术、新旧数据保护迁移技术相结合,解决云环境下租户托管密钥便捷、安全、平滑更新的问题。
37.基于上述云环境下租户托管密钥更新的方法,相应的,本实施例还提供了一种存储有计算机程序的计算机可读存储介质,该计算机程序被处理器执行时实现如下步骤:先确定托管密钥是否需要进行更新,对于需要更新的托管密钥进行更新,在更新托管密钥时,先增加一个新的托管密钥的id值,然后生成一个新的托管密钥,再将新的托管密钥和新的托管密钥的id值关联并记录映射关系,接着将新的托管密钥、新的托管密钥的id值、待更新托管密钥以及新的托管密钥的id值与新的托管密钥之间的映射关系返回密钥托管模块,然后由密钥托管模块将新的托管密钥、新的托管密钥的id值以及新的托管密钥的id值与新的托管密钥之间的映射关系加密存储在密钥存储模块内。
38.如图7所示,基于上述云环境下租户托管密钥更新的方法以及计算机可读存储介质,本实施例中,还提供了一种计算机设备,其包括可读存储介质、处理器以及存储在可读存储介质上并可在处理器上运行的计算机程序,其中可读存储介质与处理器均设置在总线上,处理器执行计算机程序时实现如下步骤:先确定托管密钥是否需要进行更新,对于需要更新的托管密钥进行更新,在更新托管密钥时,先增加一个新的托管密钥的id值,然后生成一个新的托管密钥,再将新的托管密钥和新的托管密钥的id值关联并记录映射关系,接着将新的托管密钥、新的托管密钥的id值、待更新托管密钥以及新的托管密钥的id值与新的托管密钥之间的映射关系返回密钥托管模块,然后由密钥托管模块将新的托管密钥、新的托管密钥的id值以及新的托管密钥的id值与新的托管密钥之间的映射关系加密存储在密钥存储模块内。
39.显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本专利申请权利要求的保护范围之中。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献