openssl_public_encrypt

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

openssl_public_encryptCriptografa dados com chave pública

Descrição

openssl_public_encrypt(
    #[\SensitiveParameter] string $data,
    string &$encrypted_data,
    OpenSSLAsymmetricKey|OpenSSLCertificate|array|string $public_key,
    int $padding = OPENSSL_PKCS1_PADDING
): bool

openssl_public_encrypt() criptografa os dados em data a chave pública public_key e armazena o resultado em encrypted_data. Os dados criptografados podem ser descriptografados pela função openssl_private_decrypt().

Esta função pode ser usada, por exemplo, para criptografar mensagem que possa depois ser lida somente pelo proprietário da chave privada. Também pode ser usada para armazenar dados de forma segura em um banco de dados.

Parâmetros

data

encrypted_data

Esta variável conterá o resultado da criptografia.

public_key

public_key deve ser a chave pública que corresponde à chave privada que foi usada para criptografar os dados.

padding

padding pode ser uma das constantes OPENSSL_PKCS1_PADDING, OPENSSL_SSLV23_PADDING, OPENSSL_PKCS1_OAEP_PADDING ou OPENSSL_NO_PADDING.

Valor Retornado

Retorna true em caso de sucesso ou false em caso de falha.

Registro de Alterações

Versão Descrição
8.0.0 public_key agora aceita uma instância de OpenSSLAsymmetricKey ou OpenSSLCertificate; anteriormente, um resource do tipo OpenSSL key ou OpenSSL X.509 era aceito.

Veja Também