S/MIME で署名されたメッセージの署名を検証する

# openssl_pkcs7_verify

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

openssl_pkcs7_verify — S/MIME で署名されたメッセージの署名を検証する

### 説明

function openssl_pkcs7_verify(
string `$input_filename`,
int `$flags`,
?string `$signers_certificates_filename` = `null`,
array `$ca_info` = [],
?string `$untrusted_certificates_filename` = `null`,
?string `$content` = `null`,
?string `$output_filename` = `null`
): bool|int

openssl_pkcs7_verify() は、 指定したファイルの S/MIME メッセージを読み込み、デジタル署名を検証します。

### パラメータ

`input_filename`

  メッセージへのパス。

`flags`

  `flags` により署名の検証方法を指定することが可能です。 詳細については、PKCS7 定数 を参照ください。

`signers_certificates_filename`

  `signers_certificates_filename` が指定された場合、 メッセージに署名した人の証明書が PEM 形式で保存された ファイルの名前を含む文字列でなければなりません。

`ca_info`

  `ca_info` が指定された場合、 検証に使用する信頼された CA 証明書に関する情報を適用する必要があります。 このパラメータに関するより詳細な情報については、 証明書の検証 を参照ください。

`untrusted_certificates_filename`

  `untrusted_certificates_filename` が指定された場合、 これは信頼されていない CA と見なす一連の証明書を含んだ ファイルの名前となります。

`content`

  ファイル名とともに `content` を指定すると、検証したデータがここに格納されます。 格納する際に、署名情報は除去されます。

`output_filename`

### 戻り値

署名が検証された場合は `true`、正しくない場合 (メッセージが改暫されたか署名に用いられた証明書が無効) は `false`、 エラーの場合に -1 を返します。

### 変更履歴

バージョン | 説明
--- | ---
8.0.0 | `signers_certificates_filename`, `untrusted_certificates_filename`, `content`, `output_filename` は、nullable になりました。
7.2.0 | `output_filename` パラメータが追加されました。

### 注意

> 注意: RFC 2045 にあるように、 `input_filename` パラメータのファイル名が 76 文字より長くなってはいけません。

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