强制 Public-Key-Pins max-age 更新 Pins
Force Public-Key-Pins max-age to renew the Pins
您通常将 max-age 设置为 Public-Key-Pins (HPKP),有效期为 1 或 2 年(以秒为单位)。如果您在 SSL 运行 之前更改了您的 SSL 证书并且访问者仍然拥有旧证书的 Public-Key-Pin 怎么办?
应该在访问者与浏览器无关的情况下完成。
重要区别:Public 密钥锁定 public 密钥,而不是证书。证书 包含 public 密钥,还包含来自证书颁发机构的 public 密钥(和相关元数据)的签名。
我如何使用 HPKP:
- 生成 3 个密钥对。
- 上传一个到服务器,用于 HTTPS。
- 在 HPKP header.
中包含所有三个 public 密钥的 SHA256 哈希
这给了我两个备份。我将它们都保存在加密存储中;一个在我身上,另一个在保险箱里。
其他人固定到来自多个证书颁发机构的中间证书。
另外,max-age两个月就够了。攻击者还需要应对证书透明性(以及使用 HTTPS Everywhere 扩展的用户的 SSL Observatory)。
您通常将 max-age 设置为 Public-Key-Pins (HPKP),有效期为 1 或 2 年(以秒为单位)。如果您在 SSL 运行 之前更改了您的 SSL 证书并且访问者仍然拥有旧证书的 Public-Key-Pin 怎么办?
应该在访问者与浏览器无关的情况下完成。
重要区别:Public 密钥锁定 public 密钥,而不是证书。证书 包含 public 密钥,还包含来自证书颁发机构的 public 密钥(和相关元数据)的签名。
我如何使用 HPKP:
- 生成 3 个密钥对。
- 上传一个到服务器,用于 HTTPS。
- 在 HPKP header. 中包含所有三个 public 密钥的 SHA256 哈希
这给了我两个备份。我将它们都保存在加密存储中;一个在我身上,另一个在保险箱里。
其他人固定到来自多个证书颁发机构的中间证书。
另外,max-age两个月就够了。攻击者还需要应对证书透明性(以及使用 HTTPS Everywhere 扩展的用户的 SSL Observatory)。