mcpField
I
implementing-envelope-encryption-with-aws-kms

implementing-envelope-encryption-with-aws-kms

github.com/mukul975安全35.2k42 次安装8 周前更新
代码仓库

关于 implementing-envelope-encryption-with-aws-kms

该技能介绍使用 AWS KMS 实现信封加密,面向需要加密大量数据并管理密钥的开发者和安全人员。内容涵盖本地数据加密、密钥缓存、轮换及多区域灾难恢复。

主要功能

  1. 01通过 GenerateDataKey 生成 DEK
  2. 02使用 AES-256-GCM 本地加密
  3. 03将加密后的 DEK 与密文一同存储
  4. 04缓存密钥以减少 KMS 调用
  5. 05处理密钥轮换和多区域加密

适用场景

  1. 01为大量数据实施信封加密
  2. 02降低加密操作对 KMS 请求的依赖
  3. 03规划密钥轮换与灾难恢复

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mukul975/anthropic-cybersecurity-skills --skill implementing-envelope-encryption-with-aws-kms

安装后在 Claude Code 中输入/implementing-envelope-encryption-with-aws-kms确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

LICENSE
assets/
template.md
references/
api-reference.md
standards.md
workflows.md
scripts/
agent.py
process.py

详细介绍

使用 AWS KMS 实现信封加密

概述

信封加密是一种策略:数据使用数据加密密钥(DEK)加密,而 DEK 本身则由 AWS KMS 管理的主密钥(KEK)加密。这种方法允许在本地加密大量数据,同时将主密钥安全地保存在由 AWS 管理的硬件安全模块(HSM)中。本技能涵盖使用 AWS KMS GenerateDataKey API 实现信封加密。

何时使用

  • 在您的环境中部署或配置使用 aws kms 实现信封加密的能力时
  • 在建立与合规要求一致的安全控制时
  • 在为该领域构建或改进安全架构时
  • 在进行需要此实现的安全评估时

前提条件

  • 熟悉密码学概念和工具
  • 可访问测试或实验环境以安全执行
  • 安装有所需依赖的 Python 3.8+
  • 对任何测试活动具有适当的授权

目标

  • 理解信封加密模式及其优势
  • 使用 AWS KMS GenerateDataKey 生成数据加密密钥
  • 使用 DEK 在本地加密/解密数据
  • 将加密的 DEK 与密文一同存储
  • 实现密钥缓存以减少 KMS API 调用
  • 通过自动重新加密处理密钥轮换
  • 实现多区域加密以支持灾难恢复

关键概念

信封加密流程
  1. 调用 kms:GenerateDataKey 获取明文 DEK + 加密的 DEK
  2. 使用明文 DEK 在本地加密数据(AES-256-GCM)
  3. 将加密的 DEK 与密文一同存储
  4. 从内存中丢弃明文 DEK
  5. 解密时:对加密的 DEK 调用 kms:Decrypt,然后解密数据
相比直接 KMS 加密的优势
方面直接 KMS信封加密
最大数据大小4 KB无限制
延迟每次操作网络往返本地加密
成本$0.03/10,000 次请求更少的 KMS 请求
离线不可能可以(使用缓存的 DEK)
KMS 密钥类型
  • AWS 托管:由 AWS 创建和管理(aws/s3、aws/ebs)
  • 客户托管:您创建和管理策略
  • 自定义密钥存储:由 CloudHSM 集群支持

安全注意事项

  • 切勿存储明文 DEK;仅保留加密的 DEK
  • 使用密钥策略限制谁可以调用 GenerateDataKey 和 Decrypt
  • 为所有 KMS API 调用启用 AWS CloudTrail 日志记录
  • 实现密钥轮换(CMK 的自动年度轮换)
  • 使用加密上下文作为经过身份验证的加密元数据
  • 使用指数退避处理 KMS 节流

验证标准

  • GenerateDataKey 返回明文和加密的 DEK
  • 数据使用明文 DEK 通过 AES-256-GCM 正确加密
  • 加密的 DEK 可通过 KMS Decrypt API 解密
  • 解密后的 DEK 可恢复原始数据
  • 明文 DEK 在使用后从内存中擦除
  • 解密期间验证加密上下文
  • 密钥轮换使用新主密钥重新加密 DEK

评论

支持 Markdown