最近在3A平台购买了服务器,部署了PHP环境
一:生成RSA的私钥和公钥
1:RSA私钥生成
$resource = openssl_pkey_new(); openssl_pkey_export($resource, $privateKey); echo($privateKey);
2:RSA公钥生成
$resource = openssl_pkey_new(); $detail = openssl_pkey_get_details($resource); $publicKey = $detail['key']; echo($publicKey);
注意: 如果在生成私钥和公钥时出现如下提示:
需要将你的php环境下的openssl.cnf文件地址加到系统环境变量中 增加变量名OPENSSL_CONF,变量值为openssl.cnf文件地址
二:RSA实现私钥加密和公钥解密
1:RSA私钥加密
$key = '123';//需要加密的字符串 $pkey=openssl_pkey_get_private($privateKey);//$privateKey为私钥字符串 openssl_private_encrypt($key, $encryptedData, $pkey); $encryptedData = base64_encode($encryptedData); echo($encryptedData);
2:RSA公钥解密
$pkey = openssl_pkey_get_public($publicKey)