openssl_pkey_new在PHP加密中的具体应用

avatar
作者
猴君
阅读量:0

openssl_pkey_new() 是 PHP 中 OpenSSL 扩展提供的一个函数,用于生成新的公钥和私钥对

以下是使用 openssl_pkey_new() 函数创建 RSA 密钥对并进行加密和解密操作的示例:

<?php // 创建 RSA 密钥对 $config = array(     "digest_alg" => "sha512",     "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); $publicKey = $publicKey["key"];  // 原始数据 $data = "Hello, OpenSSL!";  // 使用公钥加密数据 openssl_public_encrypt($data, $encryptedData, $publicKey);  // 使用私钥解密数据 openssl_private_decrypt($encryptedData, $decryptedData, $privateKey);  echo "Original data: " . $data . "\n"; echo "Encrypted data: " . base64_encode($encryptedData) . "\n"; echo "Decrypted data: " . $decryptedData . "\n"; ?> 

在这个示例中,我们首先使用 openssl_pkey_new() 函数创建了一个 RSA 密钥对。然后,我们使用 openssl_pkey_export() 函数导出私钥,并使用 openssl_pkey_get_details() 函数获取公钥。接下来,我们使用 openssl_public_encrypt() 函数对原始数据进行加密,并使用 openssl_private_decrypt() 函数对加密后的数据进行解密。最后,我们输出原始数据、加密后的数据和解密后的数据。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!