我使用
生成了密钥对window.crypto.subtle.generateKey({
name: "RSASSA-PKCS1-v1_5",
modulusLength: 2048, //can be 1024, 2048, or 4096
publicExponent: new Uint8Array([0x01, 0x00, 0x01]),
hash: { name: "SHA-256" } //can be "SHA-1", "SHA-256", "SHA-384", or "SHA-512"
},
true,
["sign", "verify"]
).then(function(keyPair) {
console.log("Exporting from keyPair", keyPair);
console.log("type pf key",typeof(keyPair.publicKey))
})
.catch(function(err) {
console.error(err);
});
但是日志将public-key和privateKey显示为对象,而不是字符串中生成的键的实际表示。有没有办法找出实际生成的键的字符串值。
答案 0 :(得分:1)
如果您需要明确获取密钥,则需要导出密钥:
window.crypto.subtle.exportKey(
"jwk", //can be "jwk" (public or private), "spki" (public only), or "pkcs8" (private only)
publicKey //can be a publicKey or privateKey, as long as extractable was true
)
.then(function(keydata){
//returns the exported key data
console.log(keydata);
})
.catch(function(err){
console.error(err);
});
那说出于安全原因,你真的只想使用不可导出的密钥,而不是自己处理密钥。