【PHP8.x】OPENSSL_CMS_NOVERIFY定数の使い方
OPENSSL_CMS_NOVERIFY定数の使い方について、初心者にもわかりやすく解説します。
基本的な使い方
OPENSSL_CMS_NOVERIFY定数は、PHPのOpenSSL拡張機能において、CMS(Cryptographic Message Syntax)関連の処理で利用されるオプションを表す定数です。CMSは、デジタル署名やデータの暗号化、認証などを安全に行うための標準的な構文を定義しています。
この定数は、主にopenssl_cms_verify関数など、CMS署名の検証を行う際にオプションとして指定されます。通常、デジタル署名の検証プロセスでは、署名が改ざんされていないかの確認に加えて、署名に使用された証明書が有効で信頼できるものかどうかも厳密にチェックされます。これは、署名者の身元が正当であることを保証し、セキュリティを維持するために非常に重要です。
OPENSSL_CMS_NOVERIFY定数を指定すると、この証明書の検証プロセスがスキップされます。具体的には、署名の整合性自体は確認されますが、署名者の証明書が信頼された機関によって発行されたものであるか、有効期限内であるかといった証明書チェーンの検証が行われなくなります。
このオプションは、自己署名証明書を使用している場合や、テスト環境などで証明書の検証を一時的に無効にしたい場合に利用されることがあります。しかし、証明書の検証をスキップすることは、不正な署名や偽装された証明書を見逃す可能性があり、セキュリティ上の重大なリスクを伴います。そのため、本番環境やセキュリティが重要なシステムでの利用は極力避け、使用する際にはそのリスクを十分に理解し、慎重な検討が求められます。
構文(syntax)
1<?php 2echo OPENSSL_CMS_NOVERIFY; 3?>
引数(parameters)
引数なし
引数はありません
戻り値(return)
int
この定数は、CMS(Cryptographic Message Syntax)署名の検証を行わないことを示す整数値です。