繁体   English   中英

PHP的MD5哈希等于Java

[英]php md5 hash equal to java

我只想工作php md5函数(代码),它与下面的Java代码生成相等的结果...

普通的php md5函数与此Java代码没有给出相等的结果。

private static final String md5(String string) {
    try {
        MessageDigest messageDigest = MessageDigest.getInstance("MD5");
        messageDigest.update(string.getBytes());
        byte[] arrby = messageDigest.digest();
        StringBuffer stringBuffer = new StringBuffer();
        int n = 0;
        block3 : do {
            if (n >= arrby.length) {
                return stringBuffer.toString();
            }
            String string2 = Integer.toHexString(255 & arrby[n]);
            do {
                String string3;
                if (string2.length() >= 2) {
                    stringBuffer.append(string2);
                    ++n;
                    continue block3;
                }
                string2 = string3 = "0" + string2;
            } while (true);

        } while (true);
    }
    catch (NoSuchAlgorithmException var1_7) {
        var1_7.printStackTrace();
return "";
    }
}

代码已编辑...并给出了示例...

String =“ fpwdxx-xx0xx-xx” +“ 8420474066” +“ xx-xx” +“ 2.9” +“ xx-xx” +“ 2016-09-14 21:13:25” +“ xx-xx” +“ AirTel“ +” xx-xx“ +”“ +” xx-xx“ +” 26b792f77e6f5157“ +” xx-xx“ +” 911364603150705“ +” xx-xx“ +” A52 +“ +” xx-xx“ +” 4.2 .2“ +” z1t998044Fgrt ... d“;

Java结果:cfcb292130f3aa3cd49eed180e3d76a3

PHP结果:dd7e471b1a66a691097017c8de 2783a3

php有自己的md5功能: http : //php.net/manual/zh/function.md5.php

md5($string)

这是标准实现,但是php在值前加上一个额外的0,因此它始终为16个字符,因此您可以检查此值

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM