Criptografa dados com chave pública

# openssl_public_encrypt

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

openssl_public_encrypt — Criptografa dados com chave pública

### Descrição

function openssl_public_encrypt(
#[\SensitiveParameter]string `$data`,
string `&$encrypted_data`,
OpenSSLAsymmetricKey|OpenSSLCertificate|array|string `$public_key`,
int `$padding` = `OPENSSL_PKCS1_PADDING`,
?string `$digest_algo` = `null`
): 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`.

`digest_algo`
  O algoritmo de resumo para preenchimento OAEP, ou `null` para usar o algoritmo padrão.

### Valor Retornado

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

### Registro de Alterações

Versão | Descrição
--- | ---
8.5.0 | O parâmetro opcional `digest_algo` foi adicionado.
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

- openssl_private_encrypt() - Criptografa dados com chave privada
- openssl_private_decrypt() - Descriptografa dados com chave privada

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open