Public Key Pinning (HPKP) is a great concept - announce to the world that this is the one true certificate, and no MITM who is able to create a valid certificate can intercept traffic from browsers that have been made aware (inoculated).<p>Great! Except when you need to change your certificate of course.<p>They&#x27;ve added some workarounds whereby you can specify both a time duration and an alternate certificate, but as a small website operator, I need (want) to be able to make changes at any time, and I don&#x27;t have my next certificate yet.<p>So what I really want is not to lock down a specific certificate, but make it so that I am the only one who can issue valid certificates for my site.<p>To achieve this, instead of pinning a specific public key, why not allow me to specify a self-signed root certificate with which I promise to also sign any HTTPS certificate?<p>I.e. any certificate presented for my site will be signed by a regular CA just as normal, but in addition to this, it will <i>also</i> be signed by my own home-brew certificate, as specified in a HPKP2 header.<p>This way, I can change my certificate any time, and Evil People will have to not only subvert a CA, they also have to get my private key, which I can keep as safe as I care &#x2F; am able to.<p>This would be no more secure than current HPKP since it&#x27;s still &quot;trust on first visit&quot;, but should be easier for websites to deploy &amp; maintain.<p>Thoughts?<p>(There were some threads recently on the abysmal uptake of HPKP among the top 1M sites, and it made me think of why I haven&#x27;t implemented it on mine)
Ask HN: Thoughts on an alternative to Public Key Pinning (HPKP)?