最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - Decrypt AES 256 CBC by crypto-js - Stack Overflow

programmeradmin1浏览0评论

I have the following key and IV to decrypt 07KxrSbGIoPCIYh0I16maw== into "496271", I tried searching for similar question but the lack of my knowledge in encryption prevent me from solving this from my own.

get decryptedCode() {
  var key = CryptoJS.enc.Utf8.parse(
    "814591256d331af80bec0fa2bef1123e37e9f181f363af374787e24160275bce"
  )
  var iv = CryptoJS.enc.Utf8.parse("825b1f7c5f5edd614e8a0a0fef3c9ecf")
  var ciphertext = CryptoJS.enc.Base64.parse("07KxrSbGIoPCIYh0I16maw==")
  var encryptedCP = CryptoJS.lib.CipherParams.create({
    ciphertext: ciphertext,
    formatter: CryptoJS.format.OpenSSL 
  })
  var decryptedWA = CryptoJS.AES.decrypt(encryptedCP, key, { iv: iv })
  var decryptedUtf8 = decryptedWA.toString(CryptoJS.enc.Utf8)

  console.log(decryptedUtf8) // this should be 496271 but I keep getting blank string

  return decryptedUtf8
  }

I have the following key and IV to decrypt 07KxrSbGIoPCIYh0I16maw== into "496271", I tried searching for similar question but the lack of my knowledge in encryption prevent me from solving this from my own.

get decryptedCode() {
  var key = CryptoJS.enc.Utf8.parse(
    "814591256d331af80bec0fa2bef1123e37e9f181f363af374787e24160275bce"
  )
  var iv = CryptoJS.enc.Utf8.parse("825b1f7c5f5edd614e8a0a0fef3c9ecf")
  var ciphertext = CryptoJS.enc.Base64.parse("07KxrSbGIoPCIYh0I16maw==")
  var encryptedCP = CryptoJS.lib.CipherParams.create({
    ciphertext: ciphertext,
    formatter: CryptoJS.format.OpenSSL 
  })
  var decryptedWA = CryptoJS.AES.decrypt(encryptedCP, key, { iv: iv })
  var decryptedUtf8 = decryptedWA.toString(CryptoJS.enc.Utf8)

  console.log(decryptedUtf8) // this should be 496271 but I keep getting blank string

  return decryptedUtf8
  }
Share Improve this question asked Aug 13, 2020 at 9:58 obliviousfellaobliviousfella 4451 gold badge11 silver badges22 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 6

Your key and IV are hex-encoded, so to parse them you need to use CryptoJS.enc.Hex.parse() instead of CryptoJS.enc.Utf8.parse():

function getDecryptedCode() {
  var key = CryptoJS.enc.Hex.parse(
    "814591256d331af80bec0fa2bef1123e37e9f181f363af374787e24160275bce"
  );
  var iv = CryptoJS.enc.Hex.parse("825b1f7c5f5edd614e8a0a0fef3c9ecf");
  var ciphertext = CryptoJS.enc.Base64.parse("07KxrSbGIoPCIYh0I16maw==");
  var encryptedCP = CryptoJS.lib.CipherParams.create({
    ciphertext: ciphertext,
    formatter: CryptoJS.format.OpenSSL
  });
  var decryptedWA = CryptoJS.AES.decrypt(encryptedCP, key, {
    iv: iv
  });
  var decryptedUtf8 = decryptedWA.toString(CryptoJS.enc.Utf8);

  return decryptedUtf8;
}

console.log(getDecryptedCode()); // 496271
<script src="https://cdnjs.cloudflare./ajax/libs/crypto-js/4.0.0/crypto-js.min.js"></script>

发布评论

评论列表(0)

  1. 暂无评论