我有一个Java md5散列函数没有返回正确值的问题.对于大多数值,它确实返回正确的值,但是我找到了一个输出错误输出的示例.
我的代码是:
public String hash(String pass) throws Exception
{
encr = MessageDigest.getInstance("MD5");
return new BigInteger(1, encr.digest(pass.getBytes())).toString(16);
}
Run Code Online (Sandbox Code Playgroud)
这将返回我尝试的大多数示例的正确答案,例如hash("beep") - >"1284e53a168a5ad955485a7c83b10de0",hash("hello") - >"5d41402abc4b2a76b9719d911017c592"等...
然后是问题:哈希("狗") - >"6d80eb0c50b49a509b49f2424e8c805"而不是"06d80eb0c50b49a509b49f2424e8c805"我从几个在线md5生成器以及psql md5生成器(我的鳕鱼正在与之交互)中获得.
我非常感谢任何人可以解决的任何问题,谢谢.
我正在通过重新整理一些欧拉项目问题来学习 C,就像我对 Python 所做的那样。在 Python 中,我创建了一个包含通用数学实用程序(例如素数检查)的文件,当我需要它们时,我可以从中提取函数。我想知道是否有一种方法可以简单地用 C 做类似的事情,而不是每次都与实用程序文件一起编译?
我正在运行 Linux 并使用 gcc 作为编译器,如果有帮助的话。