gpt4 book ai didi

javascript - 如何使用base64编码256位AES key ?

转载 作者:太空宇宙 更新时间:2023-11-04 02:32:55 26 4
gpt4 key购买 nike

我正在使用 NodeJS 与 Amazon Web Services(特别是 s3)进行交互。我正在尝试使用Server side encryption with customer keys 。仅允许使用 AES256 作为加密方法。 API 指定 key 采用 Base64 编码。

目前我只是测试 AWS api,我使用的是一次性测试文件,因此安全性(和安全 key 生成)目前不是问题。

我的问题如下:假设我拥有一个 256 位十六进制字符串,如何获取所表示的整数的 Base64 编码字符串?

我的第一直觉是首先将十六进制字符串解析为整数,然后使用指定基数 64 的 toString(radix) 将其转换为字符串。但是 toString() 接受的最大基数为 36。还有其他方法吗?

即使我这样做,那是一个 256 位加密 key 的 Base64 编码字符串吗? API 引用只是说它需要一个 "appropriate for use with the algorithm specified" 的 key 。 。 (我正在使用 putObject 方法)。

最佳答案

要将十六进制字符串转换为node.js中的base64字符串,您可以非常轻松地使用缓冲区;

var key_in_hex = '11223344556677881122334455667788'
var buf = new Buffer(key_in_hex, 'hex')
var str = buf.toString('base64')

...这会将 str 设置为与传入 ('112233...') 的十六进制字符串等效的 Base64

您当然也可以将它合并到一个衬垫中;

var key_in_hex = '11223344556677881122334455667788'
var str = new Buffer(key_in_hex, 'hex').toString('base64')

关于javascript - 如何使用base64编码256位AES key ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24953453/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com