gpt4 book ai didi

java - C# MD5 哈希与 Java MD5 不同

转载 作者:行者123 更新时间:2023-12-02 11:55:54 24 4
gpt4 key购买 nike

这是我的java代码。

byte[] bytes = { 0x35, 0x24, 0x76, 0x12 };
MessageDigest m = MessageDigest.getInstance("MD5");
byte[] digest = m.digest(bytes);

C#

 byte[] bytes = { 0x35, 0x24, 0x76, 0x12 };
MD5 md5 = new MD5CryptoServiceProvider();
byte[] result = md5.ComputeHash(bytes);

我注意到结果字节不同,我是java新手,有人可以解释一下..谢谢..

结果是

c#

[  58,  74, 139,   3, 244, 223, 176, 230, 227, 252, 130, 221,  54, 159, 112, 239]

java

[  58,  74,-117,   3, -12, -33, -80, -26, -29,  -4,-126, -35,  54, -97, 112, -17]

最佳答案

您可以在不同的结果中看到所有正值都是相同的。只是负面的不同。在 .net byte type是无符号的,因此其范围是从 0 到 255。在 Java 中,字节类型的范围是从 -128 到 127。 You can read it here .

关于java - C# MD5 哈希与 Java MD5 不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47606335/

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