使用 python 解密 Amazon SP API 报告文档 AES、CBC、base64

问题描述

我正在尝试解密报告文档。我有以下解密细节:

{
"payload": {
    "reportDocumentId": "XXXX","encryptionDetails": {
        "standard": "AES","initializationVector": "XXXX","key": "XXXX"
    },"url": "https://XXXXX"
}}

使用这些细节我尝试编写各种代码,给出不同的错误 1.

from base64 import b64encode 
import hashlib 
import pyaes 
import os
from sys import getsizeof

content = requests.get(url)
ciphertext = content.text
#ciphertext = b64encode(bytes(content.text))
print(getsizeof(key))
print(getsizeof(iv))
decrypter = pyaes.Decrypter(pyaes.AESModeOfOperationCBC(key,iv)) 
decryptedData = decrypter.feed(ciphertext) 
decryptedData += decrypter.feed()
print(decryptedData)

这显示了以下错误:ValueError:初始化向量必须为 16 字节 我的初始化向量和密钥在 base64 中。它们的大小分别为 73 和 93

2.

content = requests.get(url)

message = content.text
print(len(message))

obj = AES.new(key,AES.MODE_CBC,iv)
print(obj.decrypt(message))

这会产生以下错误:ValueError:AES 密钥长度不正确(44 字节)

我该如何解决这个问题?除此之外的任何方法也将非常有帮助

AWS KMS 是否有助于解密此类数据?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)