Moxie Marlinspike, een hacker en beveiligingsonderzoeker, pleitte in augustus 2011 tijdens de Black Hat beveiligingsconferentie voor een nieuwe manier om de echtheid van websites te garanderen. Het was een vervolg op een blogpost van hem in april 2011. Marlinspike vindt dat certificaat-autoriteiten (CA’s) niet langer gebruikt kunnen worden. Hij pleit voor een website-authenticatie-mechanisme waarbij sprake is van ‘trust agility’. Individuele gebruikers moeten volgens Marlinspike zelf hun authenticatie-leverancier kunnen kiezen, in plaats dat die hun wordt opgedrongen. Ook stelt hij een Firefox-plugin voor die die mogelijkheid biedt: Convergence.
Hèt probleem van het CA-systeem is volgens Marlinspike dat één eigenschap ontbreekt: trust agility. ‘At the moment, if I decide that I don’t trust VeriSign or Comodo or any other CA, what can I do? The very best I could do would be to remove the offending CA’s certificate from my trusted CA database, but then some large percentage of secure sites I visit would break. I could take an ideological stand to never visit any of those sites again, but in reality, there isn’t actually an appropriate response, and this is as true for browser vendors as it is for individuals like me’, schrijft hij in zijn blog. Zijn woorden bleken profetisch, zo bewijst de Diginotar-hack.
‘But what seems insane is to think that I could identify an organization who I would not only be willing to trust right now, but forever, without any future possibility of changing my mind based on that organization’s performance. If we’re locked into making a single decision now that will effect us forever, what incentive is there for the trust provider we select to act in a way that will continue to warrant our trust ?’
Dat hele systeem moet op de schop. Hij pleit voor een website-authenticatie-mechanisme waarbij sprake is van ‘trust agility’. Dat bestaat volgens hem uit twee belangrijke onderdelen: individuele gebruikers kunnen zelf hun authenticatie-leverancier kiezen en ze kunnen die beslissing herzien op elk moment dat ze willen.
Marlinspike ontwikkelde daarom een Firefox plugin die CA’s overbodig maakt: Convergence. Via deze plugin kunnen internetgebruikers het SSL-certificaat van een website downloaden, of dat nu door een CA is verstrekt of zelf gecreëerd is. De controle van de echtheid van het certificaat vindt plaats door aan een verzameling online ‘notarissen’ te vragen om bij dezelfde website ook certificaten te downloaden, en deze ter vergelijking door te sturen. De internetgebruiker kan vervolgens alle certificaten met elkaar vergelijken om te zien of ze gelijk zijn.
Daarmee slaat Marlinspike twee vliegen in één klap: CA’s worden overbodig en de internetgebruiker kan ervoor kiezen zijn vertrouwen in een bepaalde online notaris op te zeggen en een andere in de arm te nemen. Convergence zorgt ervoor dat de online notarissen niet kunnen zien van wie de authenticatie-verzoeken afkomstig zijn.
Een andere technologie die genoemd wordt als alternatief voor het huidige CA-systeem is DANE (DNS based Authentication of Named Entities). Het probleem van dat protocol is volgens Marlinspike echter dat DANE leunt op DNSSEC, en dat DNSSEC het vertrouwen vereist in een registrars, TLD’s en de root. Geen van die organisaties is volgens Marlinspike in essentie te vertrouwen. Tegen DANE heeft hij dus soortgelijke bezwaren als tegen het huidige CA-systeem:
‘If we sign up to trust these people, we’re expecting them to willfully behave forever, without any incentives at all to keep them from misbehaving. The closer you look at this process, the more reminiscent it becomes. Sites create certificates, those certificates are signed by some marginal third party, and then clients have to accept those signatures without ever having the option to choose or revise who we trust. Sound familiar ?’