1
웹 암호화 API/SubtleCrypto에서 생성 된 키를 내보내려고합니다.CryptoKey를 내보내는 방법은 무엇입니까?
나는 오류 메시지 다음 수신 crypto.subtle.exportKey을 실행 해요 때 : 크롬에서 :
예외 : DOMException : 키가 추출되지 않습니다 (InvalidAccessError)
와 파이어 폭스
에서기본 개체에서 매개 변수 나 작업을 지원하지 않습니다 (InvalidAccessError)
cryptoTestObject = crypto.subtle.generateKey(
{
name: "AES-CBC",
length: 256, //can be 128, 192, or 256
},
false, //whether the key is extractable (i.e. can be used in exportKey)
["encrypt", "decrypt"] //can "encrypt", "decrypt", "wrapKey", or "unwrapKey"
)
.then(function (key) {
//returns a key object
saveKeyInLocalStorage(keyName, key);
console.log('CryptoPromise' + key);
})
.catch(function (err) {
console.log(err);
});
function saveKeyInLocalStorage(keyName, aesKey) {
var exportPromise = crypto.subtle.exportKey('raw', aesKey);
exportPromise.then(function (aesKey_RAW) {
localStorage.setItem(keyName + 'key', aesKey_RAW);
console.log("saved.");
});
}
어떻게 원시 형식으로 내보낼 수있는 키를 생성 할 수 있습니까?