CryptoJS AES 加密输出不匹配
CryptoJS AES encryption output not matching
我对 CryptoJS 有疑问。
我试图加密字符串,但它给出了不同的输出。
字符串:"test message"
键:“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==?
这些网站很糟糕,因为它们不会告诉您加密某些内容时实际发生了什么。在线加密下面的两个示例代码是不同的,不会产生与在线加密相同的东西。
似乎 为该网站提供了 C# 的工作代码。如果这是真的,那么您不能在 CryptoJS 中重现它,因为 CryptoJS 仅支持 AES,而该示例 C# 代码使用 Rijndael(注意 256 位的块大小)。
AES 仅针对 128 位的固定块大小定义,但 Rijndael 支持 128、192 和 256 位块大小。两者都支持 128、192 和 256 位的密钥大小。 CryptoJS 实际上只实现了 AES,但该站点尽管名称如此,但并未使用 AES。
我对 CryptoJS 有疑问。
我试图加密字符串,但它给出了不同的输出。
字符串:"test message" 键:“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==?
这些网站很糟糕,因为它们不会告诉您加密某些内容时实际发生了什么。在线加密下面的两个示例代码是不同的,不会产生与在线加密相同的东西。
似乎
AES 仅针对 128 位的固定块大小定义,但 Rijndael 支持 128、192 和 256 位块大小。两者都支持 128、192 和 256 位的密钥大小。 CryptoJS 实际上只实现了 AES,但该站点尽管名称如此,但并未使用 AES。