需要明确的是,它明确不是 SSL 替代品。它是 CA 的替代品,其明确的设计目标是不强制推出类似 IPv6 的巨型“改变世界”。它在很大程度上基于解决 SSH 主机密钥验证问题的早期工作 - 请参阅http://www.usenix.org/event/usenix08/tech/full_papers/wendlandt/wendlandt_html/
在 Convergence 中,有一些网络拓扑上遥远的“公证人”服务,由不同组织的不同集合运行。每个 Notary 端点的(自签名)SSL 证书都被烘焙到浏览器中。当浏览器第一次访问 https 站点时,它会获取证书,然后拨出它的所有 N 个公证人,并说“我去与 www.example.com:443 交谈并取回了这个 SSL 证书。是好吗?”。公证人发出是或否。如果所有公证人都说“耶”,浏览器会将证书缓存到证书的自然到期日期。在对 www.example.com:443 的后续请求中,浏览器会将其缓存与刚刚收到的证书进行比较。如果存在不匹配,它会再次拨回公证人。由于网站不经常进行证书轮换,
公证人可以自由设置他们想要的任何政策来决定什么是好的或坏的证书。建议的选项是“Notary 的服务器投票站点”、“Notary 咨询 EFF SSL 证书观察站”、“Notary 检查 DNSSEC 中的证书文件”,甚至“Notary 进行传统的 CA 验证”。
我认为这是有史以来对 CA 问题最无干扰的解决方案。除了说服 MS/Apple/Google/Mozilla 加入它(以及花旗银行问题)之外,还有两个问题困扰着我。
第一个是强制门户(例如,机场或酒店 wifi)。他略过了那一点,并提议使用 DNS 作为与公证人通信的备用协议。但是,有许多强制门户只会吃除 A 和 CNAME 之外的 DNS 记录。
第二个是经营公证人的经济动机是什么?为了扩大规模,必须有很多这样的东西。一些组织可能会出于好意而将它们赶走,就像 DNS 根已经完成一样,但我认为 DNS 的架构比 Convergence 的扩展性要好得多。