div*_*ivB 5 domain-name-system verification digital-signatures lets-encrypt
据我了解,LetsEncrypt DNS 验证的工作原理是在 DNS 中设置静态 TXT 记录(基本上只是一个随机数),然后由 LetsEncrypt 服务器检查。
当我第一次听说它时,我非常兴奋并期待更复杂的东西:公钥存储在我的域的 DNS 中。然后,为了进行验证,我创建一条签名消息,并且 LetsEncrypt 服务器检查签名是否有效。由于 DNS 中的公钥和私钥是我拥有的,这证明了我控制该域。
发现它不能以这种方式工作有点令人失望:它需要手动交互,甚至需要更新新的 TXT 记录。
不使用签名方法是否存在技术原因?如果没有,LetsEncrypt没有实现的原因是什么?
小智 4
我相信你认为发生的事情并不是真正发生的事情。Let's Encrypt 遵循 IETF ACME 工作组ACME 协议草案的当前版本。在该草案中,第 8.5 节要求使用随机字符串(在挑战中提供)和帐户密钥作为创建 TXT 记录值的第一步。
\n\n\n\n\n客户端通过根据质询中提供的 \xe2\x80\x9ctoken\xe2\x80\x9d 值和客户端\xe2\x80\x99s 帐户密钥构建密钥授权来响应此质询。然后,客户端计算密钥授权的SHA-256 摘要[FIPS180-4] 。
\n
拥有帐户密钥和对 DNS 的控制应足以证明对域的控制以及与请求证书的帐户的连接。与帐户关联的公钥不会在 DNS 中公开,并由 LE 持有,而私钥应安全地保存在服务器本身上,任何其他私钥也应如此。
\n\n那么,您的最后一个问题是,是否存在不使用签名方法的技术原因?如果没有,LetsEncrypt没有实现的原因是什么?似乎没有抓住重点。使用签名。
\n| 归档时间: |
|
| 查看次数: |
1479 次 |
| 最近记录: |