openssl public encrypt()

Från Wiki.linux.se
Version från den 1 november 2024 kl. 08.22 av Admin (diskussion | bidrag)
Hoppa till navigering Hoppa till sök

openssl_public_encrypt

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

openssl_public_encrypt — Krypterar data med publik nyckel

Beskrivning

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

openssl_public_encrypt() krypterar data med den publika nyckeln public_key och lagrar resultatet i encrypted_data. Den krypterade datan kan sedan dekrypteras via openssl_private_decrypt().

Denna funktion kan exempelvis användas för att kryptera meddelanden som endast kan läsas av ägaren till den privata nyckeln. Den kan också användas för att lagra säker data i en databas.

Parametrar

  • data — Datan som ska krypteras.
  • encrypted_data — Variabel där den krypterade datan lagras om anropet lyckas.
  • public_key — Den publika nyckeln som motsvarar den privata nyckel som ska användas för att dekryptera datan.
  • padding — Kan vara en av OPENSSL_PKCS1_PADDING, OPENSSL_SSLV23_PADDING, OPENSSL_PKCS1_OAEP_PADDING, OPENSSL_NO_PADDING.

Returnerar

Returnerar true vid framgång, annars false.

Changelog

Version Beskrivning
8.0.0 public_key accepterar nu en instans av OpenSSLAsymmetricKey eller OpenSSLCertificate; tidigare accepterades en resurs av typen OpenSSL-nyckel eller OpenSSL X.509.

Se även