多语言展示
当前在线:315今日阅读:142今日分享:25

openSSL扩展简单介绍

openssl作为系统核心扩展之一,通过对内容进行私钥加密和公钥解密的通过同的加密方式实现对php数据安全的加密扩展。(如果需要通过函数创建私钥需要开启apache的module_ssl模块和加载http_ssl.cnf文件,但在大多数的开发者我们通常调用第三方提供的私钥和公钥,所以在这里我们就不对生成私钥和公钥做介绍了,如有需要请留言或上网查找)
openssl加密的常用函数
2

获取密钥资源获取私钥资源openssl_get_privatekey()别名resource openssl_pkey_get_private ( mixed $key [, string $passphrase = '' ] )获取公钥资源openssl_get_publickey() 别名resource openssl_pkey_get_public ( mixed $certificate )这里的$key和$certificate既可以表示私钥和公钥的文件内容,也可以表示私钥和公钥文件

3

通过私钥加密生成验证信息bool openssl_sign ( string $data , string &$signature , mixed $priv_key_id [, mixed $signature_alg = OPENSSL_ALGO_SHA1 ] )$data 签名的数据串$signature 如果调用成功,签名将返回签名。$priv_key_id 私钥内容或文件呢地址$signature_alg 加密方式

4

公钥解密int openssl_verify ( string $data , string $signature , mixed $pub_key_id [, mixed $signature_alg = OPENSSL_ALGO_SHA1 ] )$data 签名的数据串$signature 一个原始的二进制字符串,通过openssl_sign()或类似手段生成。$priv_key_id 私钥内容或文件呢地址$signature_alg 加密方式

5

释放私钥和公钥资源void openssl_free_key ( resource $key_identifier )$key_identifier 私钥和公钥的资源IDvoid openssl_pkey_free ( resource $key )

注意事项
1

私钥和公钥必须是一对,不然无法进行加密和解密

2

加密和解密的加密方式必须一致

推荐信息