Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

php 实现openssl 的非对称加密

作者:╃為伱變壞メ   发布日期:2024-11-18   浏览:1072

PHP中可以使用openssl扩展来实现非对称加密。下面是一个简单的示例代码:

// 生成密钥对
$config = array(
    "private_key_bits" => 2048,
    "private_key_type" => OPENSSL_KEYTYPE_RSA,
);
$res = openssl_pkey_new($config);
openssl_pkey_export($res, $privateKey);
$publicKey = openssl_pkey_get_details($res)["key"];

// 加密数据
$data = "Hello, World!";
openssl_public_encrypt($data, $encrypted, $publicKey);
$encryptedData = base64_encode($encrypted);

// 解密数据
openssl_private_decrypt(base64_decode($encryptedData), $decrypted, $privateKey);

echo "原始数据: " . $data . "\n";
echo "加密后的数据: " . $encryptedData . "\n";
echo "解密后的数据: " . $decrypted . "\n";

这段代码首先使用openssl_pkey_new函数生成了一个密钥对,然后使用openssl_public_encrypt函数使用公钥加密数据,再使用openssl_private_decrypt函数使用私钥解密数据。

需要注意的是,这个示例中使用的是RSA非对称加密算法,密钥长度为2048位。你可以根据需要调整密钥长度和加密算法。

上一篇:php面向对象个人浓缩总结和实例

下一篇:PHP7 安装 xhprof

大家都在看

php session用法

phpisset函数

php后端

php爬虫框架

php读取csv文件

php 三元表达式

php文件加密

php 拆分字符串

php pcntl

php ||

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站