语法是这样的:
专业成都网站建设公司,做排名好的好网站,排在同行前面,为您带来客户和效益!创新互联为您提供成都网站建设,五站合一网站设计制作,服务好的网站设计公司,成都网站建设、成都网站制作负责任的成都网站制作公司!
openssl_sign(“您要签名的数据”,”签名后返回来的数据”,”签名的钥匙/可以是公钥签名也可以是私钥签名,一般是私钥加密,公钥解密”)
使用:
$pri_key ="";
$pub_key = "";
$char = '方方块儿';//要加密的字符
$sign = $this-RsaEncrypt($char,$pri_key);//加密结果
$result = $this-RsaDecrypt($sign,$pub_key);//对加密结果进行解密
加密:
public function RsaEncrypt($str,$pri_key){
$pi_key =openssl_pkey_get_private($pri_key);
if(!$pi_key)return false;//秘钥不可用
openssl_private_encrypt($str,$encrypted,$pi_key);
$encrypted =base64_encode($encrypted);
return $encrypted;
}
解密:
public function RsaDecrypt($str,$pub_key){
$pu_key =openssl_pkey_get_public($pub_key);
if(!$pu_key)return false;//秘钥不可用
openssl_public_decrypt(base64_decode($str),$decrypted,$pu_key);
return $decrypted;
}
注:开启PHP的php_openssl扩展
1可能是编码问题,看所有文件是不是都使用了统一编码,比如utf8; 2检查申请的SDK是否输入正确,是否完整输入了申请的SDK; 3如果是支付宝帐号密码的问题,那就不说了 4建议启动服务器后稍等几分钟,再做验证。
不太明白你说的,证书是用来验证的,不是证书本身需要验证,证书本身需要得知它的有效性,比如证书颁发时间是否过期。或者私钥是否泄露,如果泄露就要重新制发。CA证书可以进行验签,如果一个用户用证书对应的私钥进行签名,签名的数据可以通过证书中的公钥来验签,也就是你说的验证。 纯手打,有什么不懂的可以追问。