サイト authに Javascript md5 があります。
この関数のみを実装する必要があります。
function hex_md5(s){ return binl2hex(core_md5(str2binl(s), s.length * chrsz));}
次の方法についてサポートが必要です。
リトル エンディアンの単語の配列を 16 進文字列に変換します。
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 を超える文字の hi-byte は黙って無視されます。
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;
}