很多站长朋友们都不太清楚证书验签php,今天小编就来给大家整理证书验签php,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 PHP SSL 验证证书的时候报错 2、 php ca证书怎样验证 3、 php CA加密和JAVA通信 4、 php SHA256WithRSA签名验签&加密解密 PHP SSL 验证证书的时候报错可能是你的ssl证书不不受信任,你可以去申请一个全球可信的ssl证书来使用,也有免费的可信ssl,比如wosign freessl,startssl等。
php ca证书怎样验证不太明白你说的,证书是用来验证的,不是证书本身需要验证,证书本身需要得知它的有效性,比如证书颁发时间是否过期。或者私钥是否泄露,如果泄露就要重新制发。CA证书可以进行验签,如果一个用户用证书对应的私钥进行签名,签名的数据可以通过证书中的公钥来验签,也就是你说的验证。 纯手打,有什么不懂的可以追问。
php CA加密和JAVA通信PHP的RSA签名和验签方法
签名方法
openssl_sign($msg, $sign, $ key, OPENSSL_ALGO_SHA1);
$msg:要签名的字符串。
$sign:做好签名字符串。
不可以写成 $sign = openssl_sign($msg, $sign, $ key, OPENSSL_ALGO_SHA1);
$ key:密钥,密钥格式,必须为rsa_private_key.pem的格式。
OPENSSL_ALGO_SHA1:密钥算法,如果与Java等交互,必须相互配对。
2. 验签方法
$result= openssl_verify($msg, $sign, $key);
$msg:签名的原字符串。
$sign:签名字符串。
$ key:密钥,密钥格式,必须为rsa_private_key.pem的格式。
$result:验签结果;为1时,验签正确;其余失败。
php SHA256WithRSA签名验签&加密解密使用:
$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扩展
关于证书验签php的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于证书验签php 证书验签网络异常的详细内容...