Maison >développement back-end >tutoriel php >PHP implémente le cryptage, le décryptage, la vérification et la signature SSL
Cet article présente principalement la méthode de PHP pour implémenter le cryptage, le décryptage, la vérification et la signature SSL. Il analyse la signature, le cryptage, le décryptage, la vérification et d'autres techniques de fonctionnement de PHP basées sur les fonctions liées à openssl sous forme d'exemples. peut s'y référer
Les détails sont les suivants :
1. signer le code de signature :
function sign($data) { //读取私钥文件 $priKey = file_get_contents('key/rsa_private_key.pem'); //转换为openssl密钥,必须是没有经过pkcs8转换的私钥 $res = openssl_get_privatekey($priKey); //调用openssl内置签名方法,生成签名$sign openssl_sign($data, $sign, $res); //释放资源 openssl_free_key($res); return $sign; }
2. . vérifiez le code de vérification :
function verify($data, $sign) { //读取支付宝公钥文件 $pubKey = file_get_contents('key/alipay_public_key.pem'); //转换为openssl格式密钥 $res = openssl_get_publickey($pubKey); //调用openssl内置方法验签,返回bool值 $result = (bool)openssl_verify($data, $sign, $res); //释放资源 openssl_free_key($res); return $result; }
3. >
Connexe recommandé :
function decrypt($content) { //读取商户私钥 $priKey = file_get_contents('key/rsa_private_key.pem'); //转换为openssl密钥,必须是没有经过pkcs8转换的私钥 $res = openssl_get_privatekey($priKey); //声明明文字符串变量 $result = ''; //循环按照128位解密 for($i = 0; $i < strlen($content)/128; $i++ ) { $data = substr($content, $i * 128, 128); //拆分开长度为128的字符串片段通过私钥进行解密,返回$decrypt解析后的明文 openssl_private_decrypt($data, $decrypt, $res); //明文片段拼接 $result .= $decrypt; } //释放资源 openssl_free_key($res); //返回明文 return $result; }
Compilation des problèmes de chiffrement OpenSSL dans les astuces PHP_php
Explication détaillée de la façon dont PHP utilise des exemples de chiffrement et de décryptage openssl Résumé sur l'utilisation de l'extension de chiffrement openssl de PHP (recommandé)Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!