gpt4 book ai didi

javascript - Web Crypto API 无法导入 openssl key

转载 作者:行者123 更新时间:2023-11-29 17:46:52 25 4
gpt4 key购买 nike

现在,我正在通过简单的测试来测试Web Crypto API。所以,我有用户的公钥(作为字符串),我想让他传递他的私钥(也作为字符串),这样我的应用程序就可以进行一些加密/解密。因此,我尝试通过执行以下操作将他的 key 导入到 Web Crypto API 中:

var textEncoder = new TextEncoder();
var alg = {
name: "RSA-OAEP",
hash: {name: "SHA-256"}
}
window.crypto.subtle.importKey('raw', textEncoder.encode(myPublicKey), alg, false, ['encrypt'])

key 由

生成
openssl genrsa -out mykey.pem 4096
openssl rsa -in mykey.pem -pubout > mykey.pub

WCAPI 抛出

Unsupported import key format for algorithm

我在 alg 中尝试了其他哈希,但仍然没有成功。

如果能提供一个示例就更好了。

最佳答案

您有一些错误:

  • raw 更改为 spki(由 James K Polk 指出)

  • TextEncoder.encode() 不适合二进制 key 。请参阅TextEncoder

    Returns a Uint8Array containing utf-8 encoded text.

  • 将 OpenSSL 生成的 PEM key 转换为二进制 ArrayBuffer。从此处使用 convertPemToBinary(pemKey) https://stackoverflow.com/a/34995761/6371459

关于javascript - Web Crypto API 无法导入 openssl key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48521183/

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