php openssl生成证书,php中使用OpenSSL生成证书及加密解密[通俗易懂]

2022-11-04 20:10:45 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

摘要:这篇文章主要介绍了PHP中使用OpenSSL生成证书及加密解密,需要的朋友可以参考下依赖于OpenSSL扩展/*加密解密*/

function authcode(string, operation = ‘E’) {

$ssl_public = file_get_contents(DAT

这篇文章主要介绍了PHP中使用OpenSSL生成证书及加密解密,需要的朋友可以参考下

依赖于OpenSSL扩展/*加密解密*/

function authcode(string, operation = ‘E’) {

$ssl_public = file_get_contents(DATA_PATH.”/conf/cert_public.key”);

$ssl_private = file_get_contents(DATA_PATH.”/conf/cert_private.pem”);

pi_key = openssl_pkey_get_private(ssl_private);//这个函数可用来判断私钥是否是可用的,可用返回资源id Resource id

pu_key = openssl_pkey_get_public(ssl_public);//这个函数可用来判断公钥是否是可用的

if(false == (pi_key || pu_key)) return ‘证书错误’;

$data = “”;

if($operation==’D’){

openssl_private_decrypt(base64_decode(string),data,

}else{

openssl_public_encrypt(string,data,

data = base64_encode(data);

}

return $data;

}

/*生成证书*/

function exportOpenSSLFile(){

$config = array(

“digest_alg” => “sha512”,

“private_key_bits” => 4096, //字节数 512 1024 2048 4096 等

“private_key_type” => OPENSSL_KEYTYPE_RSA, //加密类型

);

res = openssl_pkey_new(config);

if($res == false) return false;

openssl_pkey_export(res, private_key);

public_key = openssl_pkey_get_details(res);

public_key = public_key[“key”];

file_put_contents(DATA_PATH.”/conf/cert_public.key”,$public_key);

file_put_contents(DATA_PATH.”/conf/cert_private.pem”,$private_key);

openssl_free_key($res);

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/191805.html原文链接:https://javaforall.cn

0 人点赞