※本ページにはプロモーション(広告)が含まれています
公開鍵が本当に本人のものだと第三者(認証局)が保証する電子ファイル。HTTPS・コード署名・VPN等の基盤。
詳しい解説
デジタル証明書は、ある公開鍵が特定の人物・組織・サーバーに紐づいていることを、信頼できる第三者(認証局・CA)が電子署名で保証する電子ファイルです。HTTPS通信・コード署名・メール署名・VPN認証・クライアント認証など、インターネット上の信頼関係を成立させる基盤として不可欠な役割を担います。形式はITU-Tが定めた『X.509』が国際標準で、拡張子は.pem/.crt/.cer/.pfx等で取り扱われます。
証明書には、①発行先(サブジェクト:CN・SAN)、②発行者(イシュアー:CA名)、③公開鍵、④有効期間(開始日・失効日)、⑤シリアル番号、⑥署名アルゴリズム、⑦拡張フィールド(用途・Subject Alternative Name等)、⑧CAによる電子署名、が含まれます。ブラウザはサーバー証明書の署名を信頼済みルートCAまで辿って検証し、一致すれば鍵マーク表示、一致しなければ警告を出します。
種類としては、①サーバー証明書(HTTPS用のDV・OV・EV)、②クライアント証明書(個人認証・EAP-TLS)、③コード署名証明書(ソフトウェア配布者の証明)、④S/MIME証明書(メール署名・暗号化)、⑤ルート証明書・中間証明書(CAの階層)、などがあります。Let's Encryptの登場により、DV証明書は無料・自動更新で取得できるようになり、HTTPS化の普及が爆発的に進みました。
運用上の注意点は、①有効期限切れで突然サイトが警告表示になる事故を防ぐための期限監視、②秘密鍵の厳格な保管(HSMやKMS活用)、③失効時にはCRL/OCSPで速やかに伝達、④中間証明書のチェーン漏れ事故に注意、⑤SHA-1等の旧式アルゴリズムは非推奨、などです。証明書の仕組みを理解することは、インターネット全体の信頼モデルを理解することと同義で、セキュリティ担当者にとって必須教養と言えます。
あるブログ運営者が独自ドメインでHTTPS化を行う際、Let's Encryptから無料のサーバー証明書(ドメイン認証=DV)を取得し、90日ごとに自動更新する設定を入れました。訪問者のブラウザは証明書の署名をDigiCert/Let's EncryptのルートCAまで辿って検証し、問題がなければ鍵マークと緑表示で信頼できるサイトであることを示します。結果、通信は暗号化されMITMも防げ、SEO評価の面でも有利になりました。
別の呼び方
電子証明書
X.509証明書
digital certificate
minto.tech スマホ(Android/iPhone)・PC(Mac/Windows)の便利情報をお届け! 月間アクセス160万PV!スマートフォン、タブレット、パソコン、地デジに関する素朴な疑問や、困ったこと、ノウハウ、コツなどが満載のお助け記事サイトはこちら!