openssl_spki_verify

Verifies a signed public key and challenge

Description

bool openssl_spki_verify(string $spki)

Validates the supplied signed public key and challenge

Parameters

spki

Expects a valid signed public key and challenge

Return Values

Returns true on success or false on failure.

Errors/Exceptions

Emits an E_WARNING level error if an invalid argument is passed via the spki parameter.

Examples

Example #1 openssl_spki_verify example

Validates an existing signed public key and 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";
}
?>

Example #2 openssl_spki_verify example from <keygen>

Validates an existing signed public key and challenge issued from the <keygen> element

<?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">

See Also

  • openssl_spki_new
  • openssl_spki_export_challenge
  • openssl_spki_export
  • openssl_get_md_methods
  • openssl_csr_new
  • openssl_csr_sign