OpenSSL 是系统重要的安全扩展之一,通过私钥加密与公钥解密相结合的非对称加密机制,有效提升 PHP 数据传输与存储的安全性。该扩展常用于敏感信息的加密处理,保障数据在传输过程中的机密性与完整性。在实际开发中,多数情况下开发者会直接使用第三方已生成的密钥对,而非自行创建。虽然可通过特定函数生成私钥,但这通常需要启用 Apache 的 mod_ssl 模块并加载 ssl.conf 配置文件。由于密钥生成涉及较复杂的配置,本文不作详述,有需求者可另行查阅相关资料或留言交流。
1、 查看OpenSSL加密中使用的加密算法方式
2、 若返回数组含有摘要别名,将 \$aliases 设置为 true。
3、 获取密钥资源
4、 获取私钥资料
5、 openssl_get_privatekey() 的别名是获取私钥的函数别名。
6、 获取公钥信息
7、 openssl_get_publickey() 的别名为获取公钥函数。
8、 \$key与\$certificate可指代私钥和公钥的文件内容,也可代表对应的文件本身。
9、 用私钥加密产生验证数据
10、 签名数据串 \$data
11、 调用成功后,返回生成的签名信息。
12、 私钥内容或存储私钥的文件路径信息
13、 采用 \$signature_alg 算法进行加密签名处理
14、 公钥解密信息
15、 数据串 \$data 的签名信息
16、 由openssl_sign()等方法生成的原始二进制字符串形式的签名数据。
17、 私钥内容或存储私钥的文件路径
18、 采用 \$signature_alg 算法进行加密签名处理
19、 释放密钥资源
20、 用于标识私钥与公钥对应资源的唯一ID编号
