使用 Crypto-es expo 项目使用 ECB 解密 DES

发布于 2025-01-14 21:35:45 字数 1190 浏览 0 评论 0原文

我之前曾在 此处针对 React 问过这个问题。

我正在使用基于 CryptoJS 的 crypto-es 。 我已经使用了这样的反应

function decryptByDES(ciphertext) {
    var keyHex = CryptoJS.enc.Utf8.parse("38346591");

    // direct decrypt ciphertext
    var decrypted = CryptoJS.DES.decrypt(
      {
        ciphertext: CryptoJS.enc.Base64.parse(ciphertext),
      },
      keyHex,
      {
        mode: CryptoJS.mode.ECB,
        padding: CryptoJS.pad.Pkcs7,
      }
    );

    return decrypted.toString(CryptoJS.enc.Utf8);
  }

但是在react-native中使用相同的函数给了我这个错误: 输入图片这里的描述

测试数据:

密文: “ID2ieOjCrwfgWvL5sXl4B1ImC5QfbsDycMwuqSNl+oXFQYM2ahEKHjJ8S9AMOijqZzashfXSBli0hxaWMyCdjhw7tS9a8Gtq”

预期解密结果:https://aac.saavncdn.com/881/374283a91cd721f65f59e3a49e6f5623_96.mp4

密钥:38346591

I have asked this question before for React here.

I'm using crypto-es which is based on CryptoJS.
I've used this is react like this

function decryptByDES(ciphertext) {
    var keyHex = CryptoJS.enc.Utf8.parse("38346591");

    // direct decrypt ciphertext
    var decrypted = CryptoJS.DES.decrypt(
      {
        ciphertext: CryptoJS.enc.Base64.parse(ciphertext),
      },
      keyHex,
      {
        mode: CryptoJS.mode.ECB,
        padding: CryptoJS.pad.Pkcs7,
      }
    );

    return decrypted.toString(CryptoJS.enc.Utf8);
  }

However using the same function in react-native gives me this error:
enter image description here

Test data:

encrypted text: "ID2ieOjCrwfgWvL5sXl4B1ImC5QfbsDycMwuqSNl+oXFQYM2ahEKHjJ8S9AMOijqZzashfXSBli0hxaWMyCdjhw7tS9a8Gtq"

expected decrypted result: https://aac.saavncdn.com/881/374283a91cd721f65f59e3a49e6f5623_96.mp4

secret key: 38346591

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文