HTTP公钥固定

✍ dations ◷ 2025-06-30 16:05:01 #HTTP,网络安全

HTTP公钥固定(又称HTTP公钥钉扎,英语:HTTP Public Key Pinning,缩写HPKP)是HTTPS网站防止攻击者利用数字证书认证机构(CA)错误签发的证书进行中间人攻击的一种安全机制,用于预防CA遭受入侵或其他会造成CA签发未授权证书的情况。采用公钥固定时,网站会提供已授权公钥的哈希列表,指示客户端在后续通讯中只接受列表上的公钥。

服务器通过Public-Key-Pins(或Public-Key-Pins-Report-Only用于监测)HTTP头向浏览器传递HTTP公钥固定信息。

HTTP公钥固定将网站X.509证书链中的一个SPKI(和至少一个备用密钥)以pin-sha256方式进行哈希,由参数max-age(单位秒)所指定一段时间,可选参数includeSubDomains决定是否包含所有子域名,另一个可选参数report-uri决定是否回报违反HTTP公钥固定策略的事例。在max-age所指定的时间内,证书链中证书的至少一个公钥须和固定公钥相符,这样客户端才认为该证书链是有效的。

RFC 7469规范发布时只允许SHA-256算法。HTTP公钥固定中的哈希算法也可通过RFC 7469规范的附录A中所提到的命令行或其他第三方工具来生成。

网站维护者可以选择将特定CA根证书公钥固定——只有该CA和其签发的中级证书才视同有效,而且可以选择将一个或多个中级证书固定,或将末端证书固定。但是,至少得固定一个备用密钥以便更换现有的固定密钥。在没有备用密钥(备用密钥须不在现有证书链中)时,HTTP公钥固定并不会生效。

HTTP公钥固定在RFC 7469规范中成为标准。把证书公钥的哈希值硬编码在客户端、浏览器中,这被称为“证书固定”,HTTP公钥固定则是“证书固定”的一种扩展。

Chromium浏览器现已经禁止固定自签名根证书的证书链,这样一些内容嗅探、抓包软件如mitmproxy、Fiddler便无法再利用自签证书嗅探加密内容。RFC 7469规范指出,对于此类证书链,建议禁用HTTP公钥固定的违规回报。

客户端进行HTTP公钥固定验证失败后,将把此次错误详情以JSON格式回报给report-uri参数中指定的服务器。若发生客户端向同域名的服务器端回报失败(如违规本身就是由连接问题引起的),服务器端也可指定另一个域名或采用其他回报服务。

Firefox从版本35.0开始支持HPKP,Chrome从版本46开始支持,但在Chrome 67中终止了对HPKP的支持。Internet Explorer、Microsoft Edge目前尚不支持HPKP。

2016年,Netcraft(英语:Netcraft)在有关SSL的调研中称,只有0.09%的证书在使用HTTP公钥固定,加上实际运作中不当的配置,实际有效的HTTP公钥固定证书数量低于3000。造成这种现象的原因是:该技术尚处于萌芽期,网站技术人员对其缺乏重视和理解,更重要的是,错误的部署可能带来网站方面无法接受的严重后果——用户在相当长一段时间内(取决于max-age的配置)因新证书公钥与旧HPKP策略不符,对网站的合法访问都将遭拒。

因为网站部署率过低,Google在2018年5月29日发布的Chrome 67中终止了对HPKP的支持。

由Google所主导的Certificate Transparency提供了一个用于监测、审核证书的开放式框架,以保障证书签发流程的安全。这是一项和HTTP公钥固定有着相同目标的较新项目。

相关

  • 骨折骨折(英语:Bone fracture)是指骨骼的连续性有部分或全部断裂的医学状况。情况严重时,骨骼可能碎成数块。骨折可以是强力的撞击或压力导致;在某些骨骼弱化的医学状况下(如骨质疏松
  • 浆膜心包心包,又名心膜,是一个圆锥形双层纤维浆膜囊,包裹心脏和出入心脏大血管根部。心包的两层分别为:心包的学名pericardium来自希腊语的περι(环绕、周围)与κάρδιον(心脏)两字
  • 气象站气象站(英语:weather station)指为了取得气象资料而建成的观测站,不少气象站内设有气压计、温度计及雨量计等被动式感应器来量度各种气象要素,部分气象站还设有地表及不同深度之
  • 杨 简杨简(1911年8月8日-1981年5月10日),广东梅县人,医学家,中国实验肿瘤学的创始人之一。1934年取得中山大学医学院学士学位。1956年加入九三学社。担任中国医学科学院实验医学研究所
  • 德川家重德川家重(1712年1月28日-1761年7月13日),德川幕府第九代将军,在职时间:1745年—1760年。八代将军德川吉宗的长子,母亲是侧室大久保于须磨之方,乳名是长福丸。由于父亲吉宗和正室理子
  • 国家经济战略研究院南开大学国家经济战略研究院,成立于2013年6月,位于南开大学八里台校区文科创新楼。国务院参事、南开大学教授夏斌任院长。诺贝尔经济学奖得主弗农·史密斯在此设立有弗农·史
  • 贝尔氏麻痹症贝尔氏麻痹症(Bell's palsy)是面部瘫痪之一种,由颅神经VII(面神经)的功能障碍引起,导致无力控制受影响一侧的面部肌肉。通常受影响一侧眼睛不能闭合。眼睛必须防止干燥,否则角膜可
  • 红屏死机红白死机画面(英语:Red Screen of Death,简称:RSoD),是一种存在于某些Windows 98 SE和Windows Vista测试版中的死机后错误消息画面。在某些家用游戏机(包括PlayStation系列)中也有这
  • 王百川王百川(1960年2月1日-2010年2月28日),台湾彰化县人。一生奉献于台湾运动伤害防护界,培训无数杰出运动伤害防护人才,提供国内众多顶尖运动选手完整的运度伤害防护,举凡苏丽文、陈诗
  • 低密度同位元检查累积码低密度同位元检查累积码由低密度奇偶检查码low-density parity-check (LDPC)和一个累加器组成。其运作方式为Bit Node以二位元模组的方式相加到Check Nodes,根据tanner grap