# openssl_spki_verify

(PHP 5 >= 5.6.0, PHP 7, PHP 8)

openssl_spki_verify — Vérifie une clé publique signée, et effectue un challenge

### Description

openssl_spki_verify(string `$spki`): bool

Vérifie une clé publique signée, et effectue un challenge.

### Liste de paramètres

`spki`

  Une clé publique signée valide

### Valeurs de retour

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

### Erreurs / Exceptions

Émets une alerte de niveau `E_WARNING` si un argument invalide est passé au paramètre `spkac` parameter.

### Exemples

Exemple #1 Exemple avec openssl_spki_verify()

Valide une clé publique signée existante et effectue un challenge

`<?php
$pkey = openssl_pkey_new('secret password');
$spkac = openssl_spki_new($pkey, 'challenge string');
if (openssl_spki_verify(preg_replace('/SPKAC=/', '', $spkac))) {
echo $spkac;
} else {
echo "SPKAC validation failed";
}
?>`

Exemple #2 Exemple avec openssl_spki_verify() depuis <keygen>

Valide une clé publique signée existante issue d'un élément <keygen>

`<?php
if (openssl_spki_verify(preg_replace('/SPKAC=/', '', $_POST['spkac']))) {
echo $spkac;
} else {
echo "SPKAC validation failed";
}
?>
<keygen name="spkac" challenge="challenge string" keytype="RSA">`

### Voir aussi

- openssl_spki_new() - Génère une clé publique signée et effectue un challenge
- openssl_spki_export_challenge() - Exporte le challenge associé avec la clé publique signée
- openssl_spki_export() - Exporte un PEM valide formaté comme une clé publique signée
- openssl_get_md_methods() - Récupère la liste des méthodes digest disponibles
- openssl_csr_new() - Génère une CSR
- openssl_csr_sign() - Signe un CSR avec un autre certificat (ou lui-même) et génère un certificat