gpt4 book ai didi

javascript - CryptoJS AES 加密输出不匹配

转载 作者:行者123 更新时间:2023-12-03 09:15:48 27 4
gpt4 key购买 nike

我在使用 CryptoJS 时遇到问题。

我尝试加密字符串,但它给出了不同的输出。

字符串:“测试消息” key :“123456”

这是我尝试运行的测试代码

<script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/aes.js"></script>
<script>
var encrypted = CryptoJS.AES.encrypt("test message", "123456");


alert(encrypted); //U2FsdGVkX19Nf4gjPS3MUcbKBD10P/Ty/4EwUF1PMhc=
</script>

它返回输出 U2FsdGVkX19Nf4gjPS3MUcbKBD10P/Ty/4EwUF1PMhc=

但在这个网站 http://aesencryption.net/ 中,我得到 fulfuBaIGS0AqxwyXoPCgw== 作为结果。

如何使用 CryptoJS 生成加密输出 fulfuBaIGS0AqxwyXoPCgw==?

最佳答案

这些网站很糟糕,因为它们不会告诉您加密某些内容时实际发生的情况。在线加密下面的两个示例代码是不同的,并且不会产生与在线加密相同的结果。

看来this answer为该站点提供 C# 工作代码。如果这是真的,那么您无法在 CryptoJS 中重现这一点,因为 CryptoJS 仅支持 AES,而该示例 C# 代码使用 Rijndael(请注意 256 位的 block 大小)。

AES 仅定义为 128 位的固定 block 大小,但 Rijndael 支持 128、192 和 256 位 block 大小。两者都支持 128、192 和 256 位的 key 大小。 CryptoJS 实际上只实现了 AES,但该网站尽管名称如此,但并未使用 AES。

关于javascript - CryptoJS AES 加密输出不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31954441/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com