#271·crypto-js

Malformed UTF-8 data

Author: lnpuCreated Mar 3, 2020Updated May 18, 2026

I store the data in localstorage when encrypt(data, ducument.querySelector('.pwd').value), then i try to call decrypt(localStorage.data, ducument.querySelector('.pwd').value), it show the error: Error: Malformed UTF-8 data

But when I try this encrypt(data, '123') and decrypt(data, '123'), it is successful. and why?

How to fix it?

cryptojs "version": "4.0.0",

code:

    encrypt:function(data,key){
        let encJson = CryptoJS.AES.encrypt(JSON.stringify(data), key).toString();
         return CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(encJson));

      },
      decrypt:function(data,key){
        let decData = CryptoJS.enc.Base64.parse(data).toString(CryptoJS.enc.Utf8);
         return CryptoJS.AES.decrypt(decData, key).toString(CryptoJS.enc.Utf8);
      },