HPKP est une en-tête HTTPS permettant d'indiqué au client pendant une durée déterminé quel seront les certificats HTTPS qui pourront lui être présenté.
Les problèmes pouvant être rencontrées sont les suivants :
Voici les recommandations officiels :
HPKP est tout comme DANE_TLSA, nativement pas compatible avec certbot. Mais avec un peu de rigueur, et les bons arguments, on peut faire en sorte de garder ses clés publiques et donc permettre de garder ses empreintes HPKP. N'oubliez pas de faire un deuxième certificat non signé pour la backup.
Pour obtenir le HASH du certificat, il faut taper la commande :
# openssl req -pubkey < /etc/letsencrypt/wiki.virtit.fr/live/cert.csr | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | base64
et il suffira d'ajouter une entêtes suivante dans votre serveur WEB, par exemple pour apache :
Header always set Public-Key-Pins "max-age=5184000; pin-sha256=\"JOLIE_PETIT_HASH_ACTIF\"; pin-sha256=\"JOLIE_PETIT_HASH_BACKUP\"; "