牛牛在线工具

openssl_public_encrypt()

收录 8868 个 PHP 函数,含用途说明与用法示例。

openssl_public_encrypt()

使用公钥加密数据

函数名称:openssl_public_encrypt() 函数描述:该函数使用公钥加密数据。 适用版本:PHP 4 >= 4.0.6, PHP 5, PHP 7 语法:openssl_public_encrypt ( string $data , string &$crypted , mixed $key [, int $padding = OPENSSL_PKCS1_PADDING ] ) : bool 参数: $data:要加密的数据,必须是字符串类型。 &$crypted:加密后的数据,将被存储在该变量中。 $key:加密所使用的公钥,可以是由openssl_pkey_get_public()函数返回的公钥资源或者是PEM格式的公钥字符串。 $padding:加密时使用的填充方式,默认为OPENSSL_PKCS1_PADDING,可选参数有OPENSSL_NO_PADDING、OPENSSL_PKCS1_PADDING、OPENSSL_SSLV23_PADDING。 返回值:成功时返回true,失败时返回false。 示例: // 加载公钥 $publicKey = openssl_pkey_get_public(file_get_contents('public.pem')); // 要加密的数据 $data = "Hello, World!"; // 加密数据 if (openssl_public_encrypt($data, $crypted, $publicKey)) { echo "加密成功!\n"; echo "加密后的数据:\n" . base64_encode($crypted); } else { echo "加密失败!"; } // 释放公钥资源 openssl_free_key($publicKey); 注意事项: 在加密前,需要先加载公钥资源,可以使用openssl_pkey_get_public()函数获取公钥资源。 加密后的数据通常是不可读的二进制数据,可以使用base64_encode()函数将其转换为可读的字符串。 加密成功后,需要释放公钥资源,可以使用openssl_free_key()函数释放公钥资源。 如果加密失败,可以使用openssl_error_string()函数获取错误信息。