Software:Convergence (SSL)

From HandWiki
Short description: Proposed strategy for replacing SSL certificate authorities
Convergence
Final release
0.09 (client) / 2012-03-07
Written inPython, JavaScript
Operating systemWindows, OS X, Linux
Available inEnglish
TypeWeb browsing
LicenseGPLv3
WebsiteSee

Convergence was a proposed strategy for replacing SSL certificate authorities, first put forth by Moxie Marlinspike in August 2011 while giving a talk titled "SSL and the Future of Authenticity" at the Black Hat security conference.[1] It was demonstrated with a Firefox addon and a server-side notary daemon.

In the talk, Marlinspike proposed that all of the current problems with the certificate authority (CA) system could be reduced to a single missing property, which he called "trust agility" and which Convergence aimed to provide. The strategy claimed to be agile, secure, and distributed.[2][3]

As of 2013,[4] Marlinspike is focused on an IETF proposal called TACK,[5] which is designed to be an uncontroversial first step that advocates for dynamic certificate pinning instead of full CA replacement and reduces the number of times a third party needs to be trusted.[6][7]

Development of Convergence was continued in a "Convergence Extra" fork until about 2014.[8][third-party source needed]

Background

Convergence was based on previous work from the Perspectives Project at Carnegie Mellon University. Like Perspectives, Convergence authenticated connections by contacting external notaries, but unlike Perspectives, Convergence notaries could use a number of different strategies beyond network perspective in order to reach a verdict.

Convergence in comparison to conventional SSL

The purpose of a certificate authority in the conventional SSL system is to vouch for the identity of a site, by checking its SSL certificate. Without some vouchsafing, one is open to a man-in-the-middle attack. A single site is vouched for by only a single certificate authority (CA), and this CA has to be trusted by the user. Web browsers typically include a list of default trusted CAs and display a warning about an "untrusted connection" when a site cannot be vouchsafed by a trusted CA. A problem with this system is that if a user (or browser vendor) loses trust in a CA, removing the CA from the browser's list of trusted authorities means losing trust in all the sites that used that CA. This happened when major browsers lost trust in the DigiNotar CA[9] and sites registered with this CA had to get new certificate authorities (see Certificate authority for more examples of trust breaches).

With Convergence, however, there was a level of redundancy, and no single point of failure. Several notaries could vouch for a single site. A user could choose to trust several notaries, most of which would vouch for the same sites. If the notaries disagreed on whether a site's identity was correct, the user could choose to go with the majority vote, or err on the side of caution and demand that all notaries agree, or be content with a single notary (the voting method was controlled with a setting in the browser addon). If a user chose to distrust a certain notary, a non-malicious site could still be trusted as long as the remaining trusted notaries trusted it; thus there was no longer a single point of failure.

In September 2011, Qualys announced it would run two notary servers.[10] As of June, 2016 these servers appeared to be down.[11] A list of notaries was maintained on the Convergence wiki.[12]

Alternatives

  • The Monkeysphere Project tries to solve the same problem by using the PGP web of trust model to assess the authenticity of https certificates.[13]
  • HTTP Public Key Pinning is a security mechanism which allows HTTPS websites to resist impersonation by attackers using mis-issued or otherwise fraudulent certificates.

References

  1. "SSL And The Future Of Authenticity". https://www.youtube.com/watch?v=Z7Wl2FW2TcA. 
  2. Schwartz, Mathew J. (2011-09-30). "New SSL Alternative: Support Grows For Convergence". UBM. Archived from the original on 2011-10-01. https://web.archive.org/web/20111001202317/http://www.informationweek.com/news/security/management/231700001. Retrieved 2016-09-25. 
  3. Messmer, Ellen (2011-10-12). "The SSL certificate industry can and should be replaced". IDG. Archived from the original on 2014-03-01. https://web.archive.org/web/20140301071953/http://www.networkworld.com/news/2011/101211-ssl-moxie-marlinspike-251882.html. Retrieved 2016-09-25. 
  4. Marlinspike, Moxie [@moxie] (2013-02-18). "@deviantollam Unfortunately it's not possible to develop a convergence chrome extension. We've been focusing more on tack.io". https://twitter.com/moxie/status/303578452819341312. 
  5. "Trust Assertions for Certificate Keys". http://tack.io. 
  6. Fisher, Dennis (2012-05-30). "Moxie Marlinspike on TACK, Convergence and Trust Agility". http://threatpost.com/moxie-marlinspike-tack-convergence-and-trust-agility-053012/76622. 
  7. Marlinspike, Moxie (October 2012). "Trevor Perrin and I are actually making...". https://news.ycombinator.com/item?id=4695642. Retrieved 2016-09-24. 
  8. "mk-fg/convergence". August 27, 2020. https://github.com/mk-fg/convergence. 
  9. Goodin, Dan. "Dutch CA banished for life from Chrome, Firefox". https://www.theregister.com/2011/09/03/diginotar_game_over/. 
  10. "SSL Labs: Announcing launch of two Convergence notaries". September 29, 2011. https://blog.qualys.com/product-tech/2011/09/29/ssl-labs-announcing-launch-of-two-convergence-notaries. 
  11. U.S. notary server: https://www.ssllabs.com/convergence/notary-us.convergence.qualys.com.notary[yes|permanent dead link|dead link}}]
  12. "moxie0/Convergence". https://github.com/moxie0/Convergence. 
  13. Fuchs, Karl-Peter; Herrmann, Dominik; Micheloni, Andrea; Federrath, Hannes (2015-02-18). "Laribus: privacy-preserving detection of fake SSL certificates with a social P2P notary network". EURASIP Journal on Information Security 2015. doi:10.1186/s13635-014-0018-0. https://www.researchgate.net/publication/260405939. Retrieved 2019-12-20. 

External links