14-09-2015, 12:06 door Ken055: Bij e-mail is het net zo wenselijk om de gegevens te beveiligen en misschien nog wel meer om te weten of je email wel echt van de afzender komt waarvan deze zegt te komen.
Omdat je steeds meer hoort over phising-mails die zich voordoen als een bank, of iets dergelijks, lijkt het me erg handig te weten of de e-mail ook daadwerkelijk van de bank afkomstig is.
Exact, veel mail is helemaal niet zo vertrouwelijk, maar omdat het doodsimpel is om een afzenderadres te vervalsen, is het m.i. in veel meer gevallen wenselijk dat je redelijk zeker weet wie de afzender is. Bovendien is versleutelen complexer (daarover straks meer) en last but not least kan iedereen digitaal ondertekende mails gewoon lezen (ook als de ontvanger geen moeite doet om de handtekening te controleren).
Technisch zou dit misschien met een soortgelijk systeem kunnen werken waar webbrowsers nu gebruik van maken. Een bedrijf zou zijn mails dan met zijn private key vesleutelen zodat deze met de public key kan worden gelezen door de e-mail client. Zo weet je zeker dat de e-mail van de bank afkomstig is, lijkt me.
Versleutelen doe je nooit met een private key. Immers, ontsleutelen moet dan met de public key. Aangezien die vrij verspreid wordt kan iedereen zo'n mail decrypten. Hoewel je dat wel zekerheid geeft over de afzender, wordt in de praktijk altijd versleuteld met de public key(s) van de ontvanger(s) zodat uitsluitend die ontvangers kunnen decrypten.
Maar daarmee weet een ontvanger weer niet zeker wie de afzender is!
Daarvoor dient een digitale handtekening. Die berekent de verzender (zijn e-mail programma) door een cryptografische hash over de inhoud van de mail (en bij voorkeur ook onderwerp, datum en tijd) te bepalen. Die
hash versleutelt de verzender vervolgens met zijn private key. De mail zelf kan daarna, optioneel, ook versleuteld worden (gebruikmakend van public keys van ontvangers) waarna deze wordt verzonden.
Kortom, om te kunnen versleutelen moet je exact weten wie de ontvangers zijn
en moet je over hun public keys beschikken (en je moet zeker weten dat die public keys daadwerkelijk van de bedoelde ontvangers zijn).
Om, als ontvanger, een digitale handtekening (en dus de authenticiteit van een mail, d.w.z. te weten wie de afzender is) te kunnen controleren, moet je:
1) over de public key van de verzender beschikken -en-
2) zeker weten dat die public key van die verzender is -en-
3) ervan opaan kunnen dat de verzender zorgvuldig met zijn private key omgaat en zijn PC niet is gehacked.
Er bestaan twee systemen om public keys te distribueren:
1) Losse public keys waarbij je zelf moet vaststellen of die key is van wie hij zegt dat hij is;
2) Public key certificaten waarbij een derde partij, meer of minder zorgvuldig, heeft vastgesteld dat een publuc key daadwerkelijk van de opgegeven persoon is. (Aanvulling 14:33: Handig is dat dit certificaat gewoon als bijlage van de e-mail kan worden verzonden).
Beide systemen werken onvoldoende goed om digitaal gesigneerde mail een succes te laten zijn, alle pogingen ten spijt. Probleem is ook dat veel mail programma's ofwel geen van beide methodes ondersteunen, of slechts 1 waardoor er geen standaard komt "bovendrijven".
Maar het zou zeker goed zijn als er een soort EV-certificaten zouden bestaan met garanties t.a.v de identiteit van de eigenaar van een public key.
Want, als je nu toegang hebt (legitiem of illegaal) tot een mailbox kun je gratis een certificaat voor een jaar krijgen, zonder daarbij op andere wijze te hoeven aantonen dat jij jij bent. Aangezien veel mailboxes met zwakke wachtwoorden worden beschermd en/of een kleine wijziging in de spelling slechts de suggestie biedt aan een specifiek persoon toe te behoren, zijn dit soort cettificaten een wassen neus en ondermijnen het hele systeem (net als "domain validated" certificaten voor servers).