轮换既限制了单个密钥保护的数据量,也限制了被盗密钥的可利用时间。SP 800-57 第 1 部分 §5.3 给出了密码周期(cryptoperiod)的建议,例如签名私钥为 1 到 3 年。短期证书和短期令牌把问题从轮换密钥变成了自动续期凭证。
各个生态系统的模式都一样:发布新密钥,等所有验证者都获取到它,再开始用它签名;旧密钥签过的所有内容都过期之后,再停用旧密钥。JWKS 依靠 kid 和缓存有效期;DKIM 使用新的选择器;SSH 用 UpdateHostKeys 让客户端获知新的主机密钥;TLS 让新旧证书在一段时间内并存;Sigstore 和 TUF 通过经过签名的元数据轮换根密钥。
常见的失误包括:在缓存的令牌过期之前就移除旧密钥,验证者只在启动时获取一次密钥,密钥没有标识符导致验证者只能逐个尝试,以及从未演练过的紧急轮换。