Foto: William Daigneault
De Week: dataïsme, een fittie en uitgebalanceerde emoticons

Hoe end-to-end-encryptie jouw communicatie veilig houdt

De Week: President Zuck, een reismodus voor social media en The Internet Express

In april 2016 kondigde WhatsApp aan dat het volledig op het gebruik van end-to-end-encryptie was overgestapt. Daarmee trad WhatsApp in de voetsporen van Signal, dat end-to-end-encryptie al vanaf het begin ondersteunde. Steeds meer chatdiensten stappen over op end-to-end-encryptie. Maar wat is end-to-end-encryptie eigenlijk en waarom kun je er blij mee zijn?

Wat is het probleem?
Bij chatdiensten zoals Signal, WhatsApp en Skype worden berichten, gesprekken en bestanden niet rechtstreeks van de ene telefoon naar de andere verstuurd, maar via een centrale server. Die centrale server is een soort postbode. Als Alice een berichtje naar Bob wil sturen, dan stuurt de telefoon van Alice dat berichtje naar de centrale server, die het vervolgens doorstuurt naar de telefoon van Bob.

Toen de eerste chatdiensten voor het eerst encryptie gingen toepassen, versleutelden ze alleen de verbinding tussen gebruikers en de centrale server. Berichten waren daardoor wel versleuteld als ze onderweg waren van of naar de centrale server, maar op de centrale server zelf waren ze gewoon leesbaar. Iedereen die toegang had (of wist te krijgen) tot die centrale server kon al die berichten dus afluisteren. Dat is natuurlijk niet ideaal.

End-to-end-encryptie als oplossing
Met end-to-end-encryptie wordt dit probleem opgelost. Hierbij worden berichten namelijk versleuteld op de telefoon van de zender en pas weer ontsleuteld op de telefoon van de ontvanger. De centrale server stuurt daardoor enkel nog versleutelde berichten door en kan daarom niet langer meelezen.

Om dit mogelijk te maken, wordt bij end-to-end-encryptie gebruik gemaakt van publieke en geheime sleutels. Die zagen we bij perfect forward secrecy al voorbij komen. Met een publieke sleutel kun je een bericht versleutelen, maar niet ontsleutelen. Dat kan alleen met de bijbehorende geheime sleutel.

End-to-end-encryptie werkt als volgt. Stel, Alice wil een berichtje naar Bob sturen. Het berichtje wordt dan eerst op de telefoon van Alice versleuteld met de publieke sleutel van Bob. Daarna wordt het versleutelde bericht naar de centrale server verstuurd en die stuurt het weer door naar Bobs telefoon. Op Bobs telefoon wordt het bericht pas weer ontsleuteld, met de geheime sleutel die alleen Bob heeft. De centrale server heeft Bobs geheime sleutel natuurlijk niet, en kan het berichtje dan ook niet lezen. Bij end-to-end-encryptie is een berichtje dus van het ene eindpunt tot het andere – oftewel van zender tot ontvanger – versleuteld. Vandaar de term ‘end-to-end’.

Als je Signal of WhatsApp gebruikt, hoef je niks te doen om end-to-end-encryptie te gebruiken. Het is standaard ingeschakeld. Het enige wat je ervan ziet, is een slotje op het scherm, ter bevestiging. Het echte werk gebeurt achter de schermen. Op het moment dat je een chat-app als Signal of WhatsApp voor het eerst op je telefoon installeert, wordt er automatisch een publieke en geheime sleutel voor je aangemaakt. Je publieke sleutel wordt naar de centrale server gestuurd, zodat anderen die kunnen gebruiken om berichten aan jou te kunnen versleutelen. En als jij een berichtje naar iemand anders wil sturen, vraagt de app automatisch de publieke sleutel van de ontvanger op bij de centrale server. Het gaat dus allemaal vanzelf.

Beperkingen van end-to-end-encryptie
End-to-end-encryptie is een belangrijk onderdeel van de beveiliging van je communicatie. Als je het gebruikt, is het verleidelijk je helemaal onbespied te wanen. Toch is er helaas een aantal beperkingen. Het is goed om daar bij stil te staan.

Ten eerste kan end-to-end-encryptie niet voorkomen dat de metadata (ook wel gedragsgegevens) van je communicatie zichtbaar blijft. De inhoud van je berichten is weliswaar versleuteld, maar het is nog steeds mogelijk om op de centrale server te zien met wie je communiceert, wanneer je dat doet en vanaf welk IP-adres. De leverancier van de chatdienst kan die informatie gebruiken om een profiel over je bij te houden, of gedwongen worden die informatie af te staan aan een opsporingsdienst.

Signal slaat gelukkig heel erg weinig gegevens over zijn gebruikers op. In 2016 werd Signal door de Amerikaanse overheid gedagvaard om gegevens over twee Signal-gebruikers te overhandigen. Maar de enige informatie die Signal kon geven, was het tijdstip waarop het account was aangemaakt en het tijdstip waarop dat account voor het laatst was gebruikt. Dit privacyvriendelijke beleid van Signal is helaas eerder uitzondering dan regel. Andere chat-apps, zoals WhatsApp, slaan veel meer metadata van hun gebruikers op.

Ten tweede speelt end-to-end-encryptie alleen een rol zolang het berichtje onderweg is van zender naar ontvanger. Maar wat er daarna met een berichtje gebeurt, is natuurlijk ook belangrijk. Als je bijvoorbeeld je berichten op je telefoon bewaart, en je telefoon wordt gestolen, gehackt of in beslag genomen, dan kunnen je berichten mogelijk alsnog in verkeerde handen vallen.

Zo geeft WhatsApp je de mogelijkheid om een backup van je berichten te bewaren op Google Drive of iCloud van Apple. Dat kan erg handig zijn, maar via deze backups kunnen je berichten ook in verkeerde handen vallen. Je bent voor de beveiliging van deze backups volledig overgeleverd aan Google of Apple. Signal biedt geen mogelijkheid om je berichten in de cloud te backuppen, juist om dit risico uit te sluiten.

De derde beperking van end-to-end-encryptie heeft te maken met de zogeheten authenticiteit van publieke sleutels. Als Alice een berichtje naar Bob wil sturen, heeft ze de publieke sleutel van Bob nodig. Die vraagt haar telefoon op bij de centrale server. Maar hoe kan Alice zeker weten dat die publieke sleutel écht van Bob is, en niet van iemand die zich als Bob voordoet? Als ze dat zeker wil weten, moet ze dat samen met Bob controleren.

De meeste chat-apps, waaronder Signal en WhatsApp, bieden je de mogelijkheid om te controleren of een publieke sleutel de juiste is. Iedere publieke sleutel heeft namelijk een (onvervalsbaar) uniek nummer. Dat unieke nummer wordt vaak een fingerprint, een safety number of een security number genoemd. Om te controleren dat een publieke sleutel echt van Bob is, vergelijk je het safety number van Bobs publieke sleutel op jouw telefoon met het safety number van Bobs publieke sleutel op Bobs eigen telefoon. Als de safety numbers overeenkomen, weet je zeker dat je de publieke sleutel van Bob hebt. Hoe je dat vergelijken precies doet, hangt af van de app die je gebruikt – zie bijvoorbeeld de instructies voor Signal of voor WhatsApp.

Conclusie
End-to-end-encryptie is dus een belangrijke verbetering van de beveiliging van je communicatie. Het zorgt ervoor dat alleen de zender en de ontvanger het bericht kunnen lezen. Maar om valse verwachtingen te voorkomen, is het verstandig je bewust te zijn van de beperkingen.

  1. Kea

    https://www.wired.com/2017/02/3-years-gmails-end-end-encryption-still-vapor/
    Google heeft het plan om end-to-end encryptie in zijn mail toe te passen laten varen. Bovenstaande link uit Wired.

    Vraag: bedrijven als Threema (chat app) en Wire( chat + videobellen) en Apple zeggen end-to-end encryptie toe te passen. Is dit dan te controleren, ondanks het feit dat ze gedeeltelijk private, dus niet helemaal open source zijn?

  2. Simon

    Het feit dat één partij de volledige controle over een bepaald medium heeft (whatsapp, signal, etcetc) vind ik veel gevaarlijker dan het gebrek aan E2E encryptie. In geval van whatsapp worden alternatieve clients zelfs actief geweerd van het netwerk. Gebruikers worden gesommeerd ze niet te gebruiken, op basis van een verbanning van het netwerk. De enige toegestaande client is dus gesloten software. Dan kun je public keys gaan vergelijken tot je op een roze wolk zit, maar wat de software werkelijk doet, buiten jouw zicht, is onduidelijk.

    Een ander te groot nadeel is dat je gebonden bent aan één apparaat. Ik verwacht gewoon vanaf meerdere apparaten gelijktijdig te kunnen inloggen, zodat ik kan chatten vanaf het apparaat dat op dat moment het handigst is. Soms telefoon, soms laptop, soms desktop, soms tablet, etc. En dan wil ik ook gewoon toegang hebben tot de chat-historie, ongeacht apparaat. Good old e-mail met IMAP IDLE doet het wat dat betreft perfect.

    Het eerste punt weerhoudt me van het gebruik van whatsapp, snapchat, signal en alle andere gecentraliseerde diensten. Centralisatie is precies wat we níet moeten willen.
    Het tweede punt weerhoudt me vooralsnog van het gebruik van tox.chat en ring.cx. Er is daar wel ontwikkeling gaande. Wellicht dat Matrix nog betere papieren heeft. Voorlopig blijf ik echter bij XMPP.

    • B. ter Weten

      Beste Simon,
      Signal is open source, dus je kunt de boel eigenhandig controleren. Voor Android is Signal zelfs afgestapt van de Google Service, zodat Google daar geen gegevens langs kan ontfutselen.

      Als dat onvoldoende waarborg geeft, kun je het best stoppen met de mobile telefoon, want SMS, MMS en gewoon bellen is minder veilig dan Signal.

      • Peter1984

        Beste,

        Signal is slechts gedeeltelijk open source, de onderdelen om te bellen zijn closed source.

        Ik heb gelezen dat Signal ook beschikbaar komt zonder dat Google Apps (GCM) geïnstalleerd hoeft te zijn, maar kan hierover niets vinden op de website van Signal. Waar zou ik deze versie kunnen downloaden?

    • Simon

      Beste B,

      Ja, dat is mij bekend. Maar nog steeds is het een gecentraliseerd systeem. Als Whisper Systems morgen besluit het protocol aan te passen of de stekker eruit te trekken, of om jou te blokkeren, dan sta je met lege handen. Bij een decentraal systeem geef je ze dan de vinger en ga je naar een andere aanbieder op hetzelfde netwerk.

    • Peter1984

      Voor iedereen die op zoek is naar de officiële Signal versie zonder GCM:
      https://whispersystems.org/android/apk/

      Deze apk kan nu rechtstreeks van de website van Signal gedownload worden, zonder Google (Play) Account. De nieuwste versie stelt automatisch vast of je een telefoon zonder Gapps/GCM gebruikt (zoals CopperheadOS, BlackBerry, Jolla, etc.) en schakelt dan over op een WebSocket verbinding. De aangepaste versie van LibreSignal is dus niet meer nodig.

  3. Kea

    Bij Wire heb je geen telefoonnummer nodig om te kunnen chatten. Dat lijkt me een voordeel t.o.v. Signal.

    • Jaap

      Hoi,

      volgens Moxie Marlinspike is het mogelijk om met een ander nummer dan je gebruikelijke nummer Signal te gebruiken: ‘If you don’t want to use your phone number, don’t use it. You can register with any GV, Twilio, Voicepulse, or other throwaway VoIP number.’ bron: https://news.ycombinator.com/item?id=10664834 ‘Moxie, 456 days ago’

      Groet

  4. PréBoffer

    @ BOF Bofferts

    Idee verzoek ter overweging.

    Wanneer we het over versleuteld emailverkeer hebben dan is 1 van de conclusies bij het gebrek aan succes dat het gewoon te ingewikkeld is voor veel mensen, dan heb ik het natuurlijk over PGP.
    Zelfs voor mensen die bijvoorbeeld wel de weg hebben gekregen naar of hebben weten te vinden naar privacy browser oplossingen als Torbrowser.

    Slimme Bofferts snappen hoe PGP versleuteling van email werkt.
    Vele anderen, maar ook privacy geïnteresseerden boffen op dat vlak wat minder en vinden die implementatie te ingewikkeld of snappen het gewoon niet.
    Dat betekent dat uiteindelijk ook BOF daar zelf de dupe van wordt.
    Want niet encrypted benaderbaar voor mogelijke ideeën en tips.
    Via email dan.

    Dat kan op zich wel eenvoudig ‘opgelost worden’.
    Door als Bofferts de communicatiekanalen waarop je bereikbaar bent wat uit te breiden.
    Zo schijnen er diverse gratis / low cost email oplossingen in de markt te bestaan die versleuteling aanbieden op email.
    Dat werkt zolang zowel de ontvanger als de verzender gebruikmaken van dezelfde service.

    Ziedaar de oplossing die BOF nog kan oppikken, het aanmaken van een paar extra email accounts bij een paar emailproviders die een simpele 1 druk op de knop encryptie aanbieden op emailverkeer, met BOF bijvoorbeeld 😉

    Een andere extra oplossing voor tips zou kunnen zijn jullie aan te sluiten bij iets dat de pers in de lucht houdt maar een beetje lijkt te zijn vergeten, ; Publeaks.
    Jullie zijn ook pers en willen toch ook graag voor jullie relevante informatie kunnen ontvangen?
    Het zou tevens ook een eenvoudig kanaal kunnen zijn voor het in eenrichting verkeer ontvangen van tips.

    Bovenstaande oplossingen natuurlijk gebruiken in combinatie met Torbrowser, die tip moet je dan eventueel aan gebruikers er nog wel meegeven.
    Maar ik denk dat de drempel om jullie encrypted te kunnen benaderen nogal wordt verlaagd.
    Als we de “what Facebook?! appers” even buiten beschouwing laten.

    Dan nog dit, nieuws dat hier in nl niet erg is opgepikt.
    Google heeft de handdoek in de ring gegooid voor haar e2e project op gmail.
    Dat wil zeggen, elegant doorgeschoven hete aardappel naar de open source community om het zelf te gaan oplossen.

    https://www.wired.com/2017/02/3-years-gmails-end-end-encryption-still-vapor/

    Misschien is dat wel beter?
    Geen Gmail kan natuurlkijk ook, en geen Facebook of is dat een gepasseerd station en zijn ze bijgezet in de eregalerij van de eerste levensbehoeften?
    Ai.

    Privacy groet

    • Kea

      Ik ben overgestapt van gmail naar Tutanota en Protonmail en heb daar geen spijt van. Maar hoe krijg je anderen zover? Mensen willen of durven niet over te stappen. Hetzelfde met zoekmachines: Qwant via Firefox en via Tor werkt prima, toch is Google voor velen nog een onaantastbare autoriteit.
      Chatapps als Signal en Threema, en Wire, het alternatief voor Skype, verdienen een kans, maar komen er moeilijk doorheen.
      Ik denk dat nieuwe, veilige alternatieven op scholen geïmplementeerd zouden moeten worden, als voorbeelden van it-hygiëne. Ook jonge ouders zouden voorlichting moeten krijgen over de mogelijkheden ( bv. over Qwant Junior).

    • Hans de Zwart

      Dank voor deze uitgebreide reactie. Op zich zouden account bij Protonmail en Tutanota natuurlijk handig kunnen zijn. Maar we moeten heel zorgvuldig met onze tijd omgaan en ik vermoed dat de baten daarbij niet opwegen tegen de lasten (we moeten dan mailboxen gaan monitoren, en dat kan niet vanuit één client). Mensen kunnen velen van ons via Signal bereiken (06-nummers staan op de site) en je kunt natuurlijk altijd langs komen wandelen. Publeaks is wellicht een goed idee. Ik ga eens kijken of daar mogelijkheden zijn.

      En Google en end-to-end versleuteling: toch weer een voorbeeld dat Google erg klantgedreven kan zijn (ze hebben bijvoorbeeld na Snowden pas in https voor alles geïnvesteerd).

  5. Richard

    Copy and Paste, Zie tevens link website voor meer info.

    Voor alle duidelijkheid: de veiligheid van berichten-apps zoals Whatsapp, Signal en andere apps die je berichten versleutelen voordat ze verstuurd worden zijn niet in het geding. Het is juist doordat de grote stroom berichten nauwelijks meer af te luisteren is dat organisaties als de CIA zich richten op de telefoons zelf. Als je kunt zien wat iemand aan het typen is, maakt het namelijk niet meer uit dat het bericht daarna veilig verstuurd wordt.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd.

Deze website gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.

Help mee en steun ons

Door mijn bijdrage ondersteun ik Bits of Freedom, dat kan maandelijks of eenmalig.