0


【转】密钥管理服务(KMS)

原文链接:https://blog.csdn.net/qq_39325340/article/details/123471184

背景介绍
密钥管理服务(KMS)是一套密钥管理系统, 可以针对云上数据/各端上的加密需求精心设计的密码应用服务,为您的应用提供符合各种要求的密钥服务及极简应用加解密服务,助您轻松使用密钥来加密保护敏感的数据资产。

方案


架构图描述:

在这里插入图片描述

  1. KMS: 根密钥生成,为了生成根密钥的保密性,由三个人分别输入三段约定好算法的随机因子到HSM中去生成根密钥,非法读取HSM中的根密钥会导致HSM被破坏而不可用从而保护了根密钥不被泄露。另外为了保存好根密钥以备及时恢复,要将三段随机因子分别保存到三个保险柜中。为了防止根密钥被泄露,根密钥RootKey由密钥管理服务KMS从硬件安全模块即HSM中读取,按照一定的分散算法打散存储在内存中。

2.SDK: 开发者将SDK集成到自己开发的服务或者系统的代码中,以实现只需要调用较为简单抽象的接口就能够使用密钥管理服务的相关功能。SDK中进行加解密是为了防止业务方私自保存密钥。Client主要是负责SDK的Http请求相关的功能,加解密模块则是负责SDK加解密相关的功能。

KMS核心功能
包括密钥生命周期:
1、密钥生成 - 统一管理密钥的生成,一般要求根密钥具备较高的随机性以防止密钥被猜测、应用密钥通过安全的分散算法派生生成。
2、密钥存储 - 安全的存储密钥,如使用专用的安全存储设施或采用高强度加密保护,防止密钥的泄露和窃取。
3、密钥分发 - 确保密钥从生成、存储环境向使用环境传输的过程中不被泄露。
4、密钥注销 - 密钥生命周期完结之后,合理、安全地销毁密钥,并对销毁步骤作进行记录。
5、密钥更新 - 通过合理的密钥更替机制,降低密钥长期使用带来的暴露风险。一般要求:根密钥长期有效,具备更替能力;应用密钥定期更新,防止恶意破解;过程密钥一次一密,并通过引入时间戳、流水号等应用数据防止重放攻击。
6、密钥备份 - 保证重要密钥的备份恢复机制,在密钥丢失、灾难场景下,能够较快恢复密码服务能力,恢复时间目标(RTO)和恢复点目标(RPO)满足业务方需求。
7、密钥应用和密码运算服务 - 在具体的应用场景下,KMS还负责为业务方提供与应用相关的安全接口,如:数据加密封装、隐私数据脱敏、接口签名等。

一般情况下我们将KMS系统划分为三个核心模块:
1、安全区 - 整个系统的安全根,主要负责安全存储系统的根密钥,仅对系统内必要的功能模块开放访问权限。
2、服务层 - 系统主要功能的实现部分,为用户和KMS的应用提供密钥管理、数据加密、数字签名等服务,这也是KMS中与业务逻辑关系最紧密的部分。
3、接入层 - 面向应用系统提供业务接入能力,通过提供多语言、多框架适配的SDK,来支持无侵入或低侵入的集成。

标签: 安全 服务器 运维

本文转载自: https://blog.csdn.net/WangYouJin321/article/details/127384352
版权归原作者 小金子的夏天 所有, 如有侵权,请联系我们删除。

“【转】密钥管理服务(KMS)”的评论:

还没有评论