実装は簡単ですが、多くのWebサイトがHPKPを実装していないことに気づきました。それの欠点はありますか?
HPKPを使用すると、証明書チェーンの証明書を固定できます。常に同じ証明書プロバイダーを使用している限り、これは簡単です。たとえば、常にDigiCert証明書がある場合は、DigiCertルート証明書を固定することができ、これによりセキュリティが向上します。
しかし、DigiCertが侵害された場合はどうなりますか?その場合、バックアップが必要です 証書 HPKPでも許可されている新しい証明書を作成するためのキー。これを行わないこともできますが、DigiCert証明書が取り消されると、ユーザーはサイトにアクセスできなくなります。
したがって、HPKPにはいくつかの欠点があります。
このための完全な自動プロセスがない限り、HPKPの使用はお勧めしません。
更新: ChromeはHPKPを廃止予定 なので、彼らはそれが機能しないと考えているようです。
HPKPは、秘密鍵を更新しない限り、シンプルで優れています。ただし、秘密鍵を変更する場合は、対応する新しい公開鍵max-age
を事前に宣言する必要があります。
max-age
が短い場合は大きな問題ではありませんが、max-age
が短いとHPKPが役に立たなくなります。
サーバーが危険にさらされている可能性があり、秘密キーが盗まれたと考えられる場合は、安全な場所で1つ(またはいくつか)の秘密キーを使用可能にし、対応する公開キーをHPKPで宣言する必要があります。これは実現可能ですが、非常に厳密でなければなりません。