我希望有人能帮帮忙。我一直在使用 cryptico.js 并通过以下方式生成密钥:
var RSAkey = cryptico.generateRSAKey(passphrase, 512);
var publicKeyString = cryptico.publicKeyString(RSAkey);
让我可以很好地访问公钥,例如:vnY5f+HVUQa2oBZKsb2LUgTlso/wtVsA5Ytqlr1RL13xVN81mnIHoL/5/8CKG4rQ/vQfnBAUBYfJzBQGeAXYnw==
我正在切换到使用 WebCrypto API,因为我想使用不同的密钥类型:
promise_key = crypto.subtle.generateKey({name: "ECDSA", namedCurve: "P-256", hash: {name: "SHA-256"} }, true, ["sign", "verify"]);
promise_key.then(function(key) {
private_key_object = key.privateKey;
public_key_object = key.publicKey;
console.log(key.publicKey);
});
我想像使用 cryptico 一样获得公钥字符串,我确信我正在做一些非常愚蠢的事情,但我似乎无法得到它。
我已经使用crypto.subtle.exportKey
了“spki”、“raw”和“jwk”选项,但没有任何乐趣。
即使我使用 RSA 而不是 ECDSA 生成密钥,我仍然得到相同的结果。
请问我做错了什么?
非常感谢