BD Rsa算法加密密码解析

近日BD登陆改版,密码经过JS用Rsa算法加密提交,因为须要模拟登陆BD,因此不得不去仔细研究Rsa算法。 通过研究发现,BD的Rsa至关的Low. 很少说,直接上PHP实现的模拟百度JS实现的Rsa加密。算法

$pubkey = file_get_contents("public.pem"); 
//echo $pubkey . "<br>";
$pwd = $_POST['pwd']; //密码明文
//echo $pwd . "<br>";
$pubkeyObj = openssl_get_publickey($pubkey); //openssl 读取并解析公钥
//var_dump($pubkeyObj);
openssl_public_encrypt($pwd, $encrypt_pwd, $pubkeyObj, OPENSSL_PKCS1_PADDING); //加密
//var_dump($encrypt_pwd);
$encrypt_pwd = base64_encode(''.$encrypt_pwd);
echo $encrypt_pwd; //加密后的密码

其中public.pem是公钥文件,内容以下:加密

-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCnn8lJNWp9At07NnRhKruMz+Xk
khVIlS0LhrSu3JiKdxGRbG//hP3Vcgj8Yu+qlTyofK+1PiUvDATgbV6a8IiO1zhJ
/9dL/xLpH81q4drll2NauXGD7UztRV4MQE1Mi2E57STyK4AevxV5iCAPwuHNZ3os
mJ7Dr6WcsovXSvdspwIDAQAB
-----END PUBLIC KEY-----

但愿对作BD登陆的朋友有帮助。code

相关文章
相关标签/搜索