使用python aws_encryption_sdk加密/解密数据时如何设置超时和重试策略?

问题描述 投票:0回答:1

我正在使用

aws_encryption_sdk
来加密和解密数据。一旦我们遇到问题,我们的流程就会停滞约 24 小时。其中一种假设是,由于数据量显着增加,字符串值解密存在问题。我想设置连接超时和重试策略。

附加问题:此 SDK 是否连接到 AWS 以获取密钥,然后在客户端进行解密,或者是否使用 boto 获取密钥,然后使用该密钥和要解密的文本再次调用 AWS,然后进行解密在服务器端?

我做了一些研究,但找不到任何东西。

python amazon-web-services encryption boto
1个回答
0
投票

AWS 加密 SDK 使用“信封加密”。每个密文都使用随机生成的密钥进行加密。数据密钥本身使用 AWS KMS 密钥(和/或其他密钥)进行加密,并且加密的数据密钥与密文一起存储。

就 AWS KMS 操作而言,这意味着在加密时,随机密钥将发送到 AWS KMS 进行加密,并返回加密的数据密钥 blob。相反,解密时,将加密的数据密钥发送到 AWS KMS,并返回原始数据密钥。然后可以使用数据密钥来解密密文。

因此,传入/传出 AWS KMS 的有效负载很小:32 位数据密钥加上加密上下文和加密的数据密钥。

客户端连接到 AWS KMS 仅用于加密/解密数据密钥。客户端使用数据密钥在本地加密/解密实际消息。

© www.soinside.com 2019 - 2024. All rights reserved.