# openssl_public_encrypt

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

openssl_public_encrypt — Verschlüsselt Daten mit einem öffentlichen Schlüssel

### Beschreibung

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

openssl_public_encrypt() verschlüsselt `data` mit dem öffentlichen Schlüssel `public_key`, und speichert das Ergebnis in `encrypted_data`. Verschlüsselte Daten können mittels openssl_private_decrypt() entschlüsselt werden.

Diese Funktion kann beispielsweise verwendet werden, um eine Nachricht zu verschlüsseln, die dann nur vom Eigentümer des privaten Schlüssels gelesen werden kann. Sie kann ebenfalls verwendet werden, um Daten sicher in einer Datenbank zu speichern.

### Parameter-Liste

`data`

`encrypted_data`

  Hier werden die verschlüsselten Daten abgelegt.

`public_key`

  `public_key` muss der öffentliche Schlüssel sein, der zu dem privaten Schlüssel gehört, mit dem die Daten verschlüsselt wurden.

`padding`

  `padding` kann entweder `OPENSSL_PKCS1_PADDING`, `OPENSSL_SSLV23_PADDING`, `OPENSSL_PKCS1_OAEP_PADDING` oder `OPENSSL_NO_PADDING` sein.

### Rückgabewerte

Gibt bei Erfolg `true` zurück. Bei einem Fehler wird `false` zurückgegeben.

### Changelog

Version | Beschreibung
--- | ---
8.0.0 | `public_key` akzeptiert nun eine OpenSSLAsymmetricKey- oder OpenSSLCertificate-Instanz; vorher wurde eine Ressource vom Typ `OpenSSL-Schlüssel` oder `OpenSSL X.509` akzeptiert.

### Siehe auch

- openssl_private_encrypt() - Verschlüsselt Daten mit einem privaten Schlüssel
- openssl_private_decrypt() - Entschlüsselt Daten mit einem privaten Schlüssel

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