Javascript 如何使用base64编码256bit AES密钥?

Javascript 如何使用base64编码256bit AES密钥?,javascript,node.js,amazon-web-services,amazon-s3,Javascript,Node.js,Amazon Web Services,Amazon S3,我使用NodeJS与amazonweb服务(特别是s3)交互。我正在尝试使用。仅允许AES256作为加密方法。API指定密钥是base64编码的 目前我只是在测试AWSAPI,我使用的是一次性测试文件,所以安全性(和安全密钥生成)目前不是问题 我的问题如下:假设我是一个256位的十六进制字符串,那么如何获得表示该字符串的整数的base64编码字符串 我的第一反应是首先将十六进制字符串解析为整数,然后使用toString(radix)指定基数64将其转换为字符串。但是toString()接受最大基

我使用NodeJS与amazonweb服务(特别是s3)交互。我正在尝试使用。仅允许AES256作为加密方法。API指定密钥是base64编码的

目前我只是在测试AWSAPI,我使用的是一次性测试文件,所以安全性(和安全密钥生成)目前不是问题

我的问题如下:假设我是一个256位的十六进制字符串,那么如何获得表示该字符串的整数的base64编码字符串

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


即使我这样做了,这是一个256位加密密钥的base64编码字符串吗?API引用只是说它需要一个。(我使用的是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')

这个问题涉及对字符串进行编码。我想编码一个整数。