php中openssl的用法是什么

avatar
作者
猴君
阅读量:5

在PHP中,OpenSSL库提供了一组函数来执行加密和解密操作、生成数字证书以及验证签名等功能。以下是一些常见的OpenSSL函数用法示例:

  1. 生成RSA密钥对:
$keypair = openssl_pkey_new(array(     'private_key_bits' => 2048,     'private_key_type' => OPENSSL_KEYTYPE_RSA, )); openssl_pkey_export($keypair, $privateKey); $publicKey = openssl_pkey_get_details($keypair)['key']; 
  1. 加密和解密数据:
$data = 'Hello, World!'; $encrypted = ''; openssl_public_encrypt($data, $encrypted, $publicKey); $decrypted = ''; openssl_private_decrypt($encrypted, $decrypted, $privateKey); echo $decrypted; // Output: Hello, World! 
  1. 生成数字签名和验证签名:
$data = 'Hello, World!'; $signature = ''; openssl_sign($data, $signature, $privateKey, OPENSSL_ALGO_SHA256); $verified = openssl_verify($data, $signature, $publicKey, OPENSSL_ALGO_SHA256); echo $verified; // Output: 1 (verified) 
  1. 生成自签名证书:
$dn = array(     'countryName' => 'US',     'organizationName' => 'Example Company',     'commonName' => 'example.com', ); $csr = openssl_csr_new($dn, $privateKey); $cert = openssl_csr_sign($csr, null, $privateKey, 365); openssl_x509_export($cert, $certout); echo $certout; 

这些示例展示了一些常见的OpenSSL函数用法,您可以根据具体的需求选择合适的函数来实现您的加密、签名和证书生成等功能。

广告一刻

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