AWS KMS 新增 ECDH 密钥协议支持
今年夏天,AWS 宣布其密钥管理服务(KMS)支持椭圆曲线 Diffie-Hellman(ECDH)密钥协议。这一新功能通过引入 DeriveSharedSecret API,使双方能够通过派生共享密钥来建立安全通信通道。
ECDH 协议简介
ECDH 是一种匿名密钥协议,允许双方在非安全通道上通过各自的椭圆曲线公私钥对建立一个共享密钥。AWS 的安全专家 Patrick Palmer、Michael Miller 和 Raj Puttaiah 展示了如何通过 AWS KMS 和 OpenSSL 实现这一过程。
DeriveSharedSecret API 的功能
该 API 允许客户使用外部方的公钥与存储在 AWS KMS 中的私钥结合,派生出共享密钥。此共享密钥可用于通过密钥派生函数(KDF)生成对称加密密钥,进而用于应用程序内的本地数据加密。
KMS ECDH Keyrings
为了简化开发者选择 KDF 的过程,AWS 加密 SDK 现在包含了 KMS ECDH Keyrings。这些构造可以在代码中实现,帮助开发者更轻松地处理密钥派生。
应用场景
ECDH 密钥协议在以下场景中尤为重要:
- 混合加密方案:作为构建块,帮助实现更复杂的加密方案。
- 远程设备和隔离计算环境:例如 AWS Nitro Enclaves,用于在这些环境中播种密钥。
对称与非对称密钥的比较
尽管对称密钥和算法因其速度和效率而受到青睐,但在非受信任网络上交换数据时,对称密钥并不理想,因为难以确保只有交换双方拥有相同的密钥。非对称密钥对和算法通过允许在非受信任网络上共享公钥来解决这一问题。
社区需求与跨账户支持
ECDH 支持是社区长期以来的需求,特别适用于混合加密方案或在远程设备和隔离计算环境中播种密钥。新 API 支持跨账户使用,并在所有 AWS 区域中可用。
使用要求
要派生共享密钥,开发者必须指定:
- 密钥协议算法
- 调用者的非对称 NIST 推荐椭圆曲线的私钥
- 对等方的 NIST 推荐椭圆曲线的公钥
公钥可以来自另一个非对称 KMS 密钥对,也可以是在 AWS KMS 之外生成的密钥对,但两者必须在同一椭圆曲线上。
审计与监控
开发者可以通过 CloudTrail 日志审计 AWS KMS 密钥的使用情况,包括新的 DeriveSharedSecret API。
总结
AWS KMS 对 ECDH 密钥协议的支持为开发者提供了更强大的加密工具,特别是在需要安全密钥交换的场景中。通过新的 API 和 KMS ECDH Keyrings,开发者可以更轻松地实现加密功能,同时确保数据的安全性和完整性。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。