# openssl_pkcs7_decrypt

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

openssl_pkcs7_decrypt — Déchiffre un message S/MIME

### Description

openssl_pkcs7_decrypt(
string `$input_filename`,
string `$output_filename`,
#[\SensitiveParameter] OpenSSLCertificate|string `$certificate`,
#[\SensitiveParameter] OpenSSLAsymmetricKey|OpenSSLCertificate|array|string|null `$private_key` = `null`
): bool

Déchiffre le message S/MIME contenu dans le fichier `input_filename`, en utilisant le certificat et la clé privée associé par `certificate` et `private_key`.

### Liste de paramètres

`input_filename`

`output_filename`

  Le message déchiffré est écrit dans le fichier spécifié par ce paramètre.

`certificate`

`private_key`

### Valeurs de retour

Cette fonction retourne `true` en cas de succès ou `false` si une erreur survient.

### Historique

Version | Description
--- | ---
8.0.0 | `private_key` accepte désormais une instance de OpenSSLAsymmetricKey ou OpenSSLCertificate ; auparavant, une resource de type `OpenSSL key` ou `OpenSSL X.509 CSR` était acceptée.

### Exemples

Exemple #1 Exemple avec openssl_pkcs7_decrypt()

`<?php
// $cert et $key contiennent vos certificats et clés privés
// On suppose aussi que le message vous est destiné
$infilename = "encrypted.msg"; // ce fichier contient votre message chiffré
$outfilename = "decrypted.msg"; // assurez-vous de pouvoir écrire dans ce fichier
if (openssl_pkcs7_decrypt($infilename, $outfilename, $cert, $key)) {
echo "déchiffré !";
} else {
echo "Échec lors du déchiffrement !";
}
?>`