0
我試圖使用加密文本WebCrypto。我將結果轉換爲utf8字符串,然後將其轉換爲十六進制。加密/解密工作。但是,我想將數據轉換爲十六進制。當我嘗試轉換爲十六進制並返回時,結果不同。從UTF8轉換爲十六進制和背部使用Javascript
這裏的小提琴(使用鉻):https://jsfiddle.net/yxp01v5g/
測試代碼是在這裏:
var text = "hello world";
var key = App.crypto.generateKey(16);
App.crypto.encrypt(text, key, function(encryptedText, iv){
console.log("encrypted text:", encryptedText, "iv", iv);
var encryptedTextHex = convertUtf8StringToHex(encryptedText);
console.log("encrypted text hex", encryptedTextHex);
var backToUtf8 = convertHexToUtf8(encryptedTextHex);
console.log("Back to utf8", backToUtf8);
console.assert(encryptedText == backToUtf8);
})
正如你所看到的,我走的是結果,將其轉換爲十六進制,然後將其轉換回UTF8,希望它等於原來的結果。但是,事實並非如此。
誰能告訴我這到底我做錯了嗎?
感謝,沒有測試但尚未看起來不錯。 – Snowman