AWS Key Management Service 概念

数据密钥

数据密钥 是可用于加密数据的加密密钥,包括大量数据和其他数据加密密钥。

您可以使用 AWS KMS 客户主密钥 (CMK) 生成、加密和解密数据密钥。但是,AWS KMS 不会存储、管理或跟踪您的数据密钥,也不会使用数据密钥执行加密操作。您必须在 AWS KMS 之外使用和管理数据密钥。

创建数据密钥

要创建数据密钥,请调用 GenerateDataKey 操作。AWS KMS 使用您指定的 CMK 来生成数据密钥。此操作会返回数据密钥的明文副本和借助 CMK 加密的数据密钥的副本,如下图所示。

AWS KMS 还支持 GenerateDataKeyWithoutPlaintext 操作,此操作仅返回加密的数据密钥。当您需要使用数据密钥时,请要求 AWS KMS 解密它。

使用数据密钥加密数据

AWS KMS 无法使用数据密钥加密数据,但您可以在 KMS 之外使用数据密钥,例如使用 OpenSSL 或 AWS 加密 SDK 等加密库。

在使用明文数据密钥加密数据后,请尽快从内存中将其删除。您可以安全地存储加密数据密钥及加密数据,以便其可根据需要用于解密数据。

使用数据密钥解密数据

要解密数据,请将加密数据密钥传递至 Decrypt 操作。AWS KMS 使用您的 CMK 解密数据密钥,然后该函数返回纯文本数据密钥。使用明文数据密钥解密数据,并尽快从内存中删除该明文数据密钥。

下图显示了如何使用 Decrypt 操作解密加密数据密钥。

信封加密

在您加密数据后,数据将受到保护,但您必须保护加密密钥。一种策略是对其进行加密。信封加密 是一种加密方法,它使用数据密钥对明文数据进行加密,然后使用其他密钥对数据密钥进行加密。

您甚至可以使用其他加密密钥对数据加密密钥进行加密,并且在另一个加密密钥下加密该加密密钥。但是,最后,一个密钥必须以明文形式保留,以便您可以解密密钥和数据。此顶层明文密钥加密密钥称为主密钥

AWS KMS 可通过安全地存储和管理主密钥来帮助您保护它们。存储在 AWS KMS 中的主密钥(称为客户主密钥 (CMK))绝不会让 AWS KMS 经 FIPS 验证的硬件安全模块处于不加密状态。要使用 AWS KMS CMK,您必须调用 AWS KMS。

信封加密可提供以下多种优势:

  • 保护数据密钥

    加密数据密钥时,您无需担心存储加密数据密钥,因为数据密钥本身就受到加密的保护。您可以安全地将加密数据与加密数据密钥一起存储。

  • 使用多个主密钥加密相同数据

    加密操作可能非常耗时,特别是要加密的数据是大型对象时。您可以只重新加密保护原始数据的数据密钥,而无需使用不同的密钥多次重新加密原始数据。

  • 结合多种算法的优势

    一般而言,对称密钥算法比公有密钥算法速度更快,且生成的密文也较小,但公有密钥算法可提供固有的角色分离和更轻松的密钥管理。信封加密让您可以每种策略的优势结合起来。

原文地址:https://www.cnblogs.com/cloudrivers/p/11620915.html

时间: 2024-08-01 06:18:48

AWS Key Management Service 概念的相关文章

用XCA(X Certificate and key management)可视化程序管理SSL 证书(2)--生成SSL证书请求

在上个章节中,我们提到了如何安装XCA(X Certificate and key management)程序,这个章节我们开始正式介绍如何用XCA生成证书请求.如果大家用过java的话,肯定知道jdk默认提供了一个工具叫做:keytool,这个工具我们能够从java的安装目录下找到,比如我本机就在:C:\Program Files (x86)\Java\jre7\bin: 但是这个工具因为使用的是命令行,不是特别的直观,所以我在本章节给大家演示一下如何用XCA来生成证书请求.具体步骤如下: 步

Web Service概念

http://my.oschina.net/jiver/blog/100909Web Service概念 什么是Web Service呢?从表面上看,Web Service就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API.这就是说,你能够用编程的方法通过Web调用来实现某个功能的应用程序.例如,笔者创建一个Web Service,它的作用是查询某公司某员工的基本信息.它接受该员工的编号作为查询字符串,返回该员工的具体信息.你可以在浏览器的地址栏中直接输入HTTP GET请求来调

用XCA(X Certificate and key management)可视化程序管理SSL 证书(3)--创建自定义的凭证管理中心(Certificate Authority)

在第"用XCA(X Certificate and key management)可视化程序管理SSL 证书(2)---创建证书请求"章节中,我们介绍了如何用XCA创建SSL证书请求(Certificate Request),在一章节中,同时提到了如何对证书请求,用我们自己的创建的凭证管理中心(Certificate Authority)进行签名:但是在做这一步之前,我们首先需要知道如何创建一个属于咱们自己的凭证管理中心(Certificate Authority). 步骤很简单,具体

用XCA(X Certificate and key management)可视化程序管理SSL 证书(4)--用自定义的凭证管理中心(Certificate Authority)签名证书请求

在用XCA(X Certificate and key management)可视化程序管理SSL 证书一系列文章的(2)和(3)中,我们学习了如何用XCA(X Certificate and key management)生成证书请,已经如何生成自定义的凭证管理中心(Certificate Authority),如果说前两篇文章是铺垫,那么这篇文章就是最终的目的:用自定义的凭证管理中心(Certificate Authority)签名证书请求.签名的过程非常的简单,具体步骤,请见下面的操作.

Work Management Service application in SharePoint 2016

最近开始弄SharePoint 2016的Workflow,遇到问题发现没有了Work Management Service application,然后用PowerShell命令创建也不行,bing和谷歌了很久,发现这个服务在SharePoint 2016里被丢弃了,很汗.搜到的博客链接分享给大家,有遇到类似问题的可以看看,我搜了两个多小时才找到的帖子,汗. 参考链接 http://blogs.if-blueprint.de/petbo/2016/03/21/work-management-s

SharePoint 2013 IT Professional——New Feature(Work Management Service)

众所周知,SharePoint企业管理平台对数据管理是非常有效的,一个公司对于一个项目而言,借助SharePoint的Task管理能很清晰的表现出项目在各个Team的进展情况,但是对于用户个人来说,管理Task就有点难度了,比如下面一个案例: 企业中每个部门都有一个WebSite进行数据管理,如下所示: http://www.contoso.com/Sites/QA http://www.contoso.com/Sites/Project http://www.contoso.com/Sites

使用XCA(X Certificate and key management)可视化项目经理SSL 凭证(4)--凭借自身的凭证管理中心的定义(Certificate Authority)签名证书申请

随着XCA(X Certificate and key management)可视化项目经理SSL 证书系列文章(2)和(3)中.我们学习了怎样用XCA(X Certificate and key management)生成证书请,已经怎样生成自己定义的凭证管理中心(Certificate Authority).假设说前两篇文章是铺垫,那么这篇文章就是终于的目的:用自己定义的凭证管理中心(Certificate Authority)签名证书请求.签名的过程很的简单,详细步骤.请见以下的操作. (

AWS Security Token Service

<AssumeRoleResponse xmlns="https://sts.amazonaws.com/doc/2011-06-15/"> <AssumeRoleResult> <Credentials> <SessionToken> AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQW LWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqT

6.824 Lab 3: Fault-tolerant Key/Value Service 3B

Part B: Key/value service with log compaction Do a git pull to get the latest lab software. As things stand now with your lab code, a rebooting server replays the complete Raft log in order to restore its state. However, it's not practical for a long