openssl_spki_verify

署名済みの公開鍵とチャレンジを検証する

説明

bool openssl_spki_verify(string $spki)

与えられた公開鍵とチャレンジを検証します。

パラメータ

spki

有効な署名済みの公開鍵とチャレンジ

戻り値

成功した場合に true を、失敗した場合に false を返します。

エラー / 例外

不正な引数が spki に渡された場合、 E_WARNING レベルのエラーが発生します。

例1 openssl_spki_verify の例

既存の署名済み公開鍵とチャレンジを検証します。

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

例2 <keygen> から openssl_spki_verify を使う例

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

参考

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