java - 在java实现中寻找javascript md5方法

标签 java javascript md5

我在 site auth 上有 Javascript md5。

我只需要实现这个功能:

function hex_md5(s){ return binl2hex(core_md5(str2binl(s), s.length * chrsz));}

我需要以下方法的帮助:

将小端字节数组转换为十六进制字符串:

function binl2hex(binarray)
{
  var hex_tab = hexcase ? "0123456789ABCDEF" : "0123456789abcdef";
  var str = "";
  for(var i = 0; i < binarray.length * 4; i++)
  {
    str += hex_tab.charAt((binarray[i>>2] >> ((i%4)*8+4)) & 0xF) +
           hex_tab.charAt((binarray[i>>2] >> ((i%4)*8  )) & 0xF);
  }
  return str;
}

将字符串转换为小尾数单词数组 如果 chrsz 是 ASCII,则 >255 个字符的高字节将被静默忽略。

function str2binl(str)
{
  var bin = Array();
  var mask = (1 << chrsz) - 1;
  for(var i = 0; i < str.length * chrsz; i += chrsz)
    bin[i>>5] |= (str.charCodeAt(i / chrsz) & mask) << (i%32);
  return bin;
}  

最佳答案

如果您只是想实现 MD5,那是 java 中内置的东西。

https://stackoverflow.com/a/415971/576519

关于java - 在java实现中寻找javascript md5方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11907171/

相关文章:

java - GXT如何获取BeanModel的Map属性

java - 启动 Java 程序时 Eclim 忽略 native 库路径

javascript - 如何覆盖 String 的长度属性

javascript/HTML 使用 url() 更改图像;未按预期工作(简单)

tomcat - 如何为 Tomcat JDBCRealm 准备摘要密码?

java - 如何(有效)将 int[] 转换为 Integer[]?

javascript - 如何锁定输入[type=file]?

java - 即使在 $JAVA_HOME/lib/security/java.security 中禁用它后,MD5 算法仍可在 Java 中使用

java - MD5 对相同输入的不同值进行哈希处理

java - Gson fromJson 和 toJson 用于 Java 中返回 null 的简单对象