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

# openssl_spki_verify

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

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

### 説明

function openssl_spki_verify(string `$spki`): bool

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

### パラメータ

`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() - 署名済みの公開鍵とチャレンジから、有効なPEMフォーマットの公開鍵をエクスポートする
- openssl_get_md_methods() - 利用可能なダイジェスト・メソッドを取得
- openssl_csr_new() - CSR を作成する
- openssl_csr_sign() - CSR に他の証明書（あるいは自分自身）で署名して証明書を作成する

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