试图用PHP复制javascript b64_md5函数,但结果不同
为了安全起见,我正在尝试访问一个现有的web应用程序,该应用程序使用b64_md5 js函数在将密码发送到服务器之前对密码进行加密。我的脚本使用PHP和PHP Curl,但使用PHP和相同的输入似乎无法得到相同的结果 下面是使用以下脚本生成加密密码的JS:试图用PHP复制javascript b64_md5函数,但结果不同,javascript,php,base64,md5,Javascript,Php,Base64,Md5,为了安全起见,我正在尝试访问一个现有的web应用程序,该应用程序使用b64_md5 js函数在将密码发送到服务器之前对密码进行加密。我的脚本使用PHP和PHP Curl,但使用PHP和相同的输入似乎无法得到相同的结果 下面是使用以下脚本生成加密密码的JS: 该函数返回: HRQGHICMPFGHJ67BYXCJG== 我正在尝试使用PHP匹配该结果。这是我得到的,但它没有生成匹配的结果 <? $passwordMD5 = base64_encode(md5("Dn@v9Dr3H
该函数返回: HRQGHICMPFGHJ67BYXCJG== 我正在尝试使用PHP匹配该结果。这是我得到的,但它没有生成匹配的结果
<?
$passwordMD5 = base64_encode(md5("Dn@v9Dr3HCBM0.95995490.9737542"));
echo $passwordMD5;
?>
该函数返回:
MWQXndiwodyymdhjm2rmotg2mwm5zwjinmyyzqyogu=
有没有任何md5/编码大师可以帮助我解决这个问题?使用我得到的
1d142086208c3df9861c9ebb6f2c428e
,PHP的md5(“Dn@v9Dr3HCBM0.95995490.9737542“
如果我做了btoa(SparkMD5.hash(”Dn@v9Dr3HCBM0.95995490.9737542"))
在我得到的mwqxndiwodyymdhjm2rmotg2mwm5zwjinmyyyyzqyogu=
中,我猜HRQghiCMPfmGHJ67byxCjg==
是二进制字符串的base64版本,而较长的M字符串是十六进制字符串的base64。最后一点注意:好了,在客户端上散列密码是没有意义的。如果没有人在窃听,您最好发送实际密码。如果有人正在窃听,他们现在有了散列,可以用它登录。当然,他们没有实际的密码,但是(同样是afaik)散列主要用于将密码存储在数据库中,因为密码落入坏人手中的风险要大得多。叮,叮,叮!你搞定了。我在MD5函数周围添加了一个hextobin(),它成功了。谢谢
<?
$passwordMD5 = base64_encode(md5("Dn@v9Dr3HCBM0.95995490.9737542"));
echo $passwordMD5;
?>