Wat is versleuteling en hoe werkt het?

Versleuteling heeft een lange geschiedenis die teruggaat tot de tijd dat de oude Grieken en Romeinen geheime berichten stuurden door letters te vervangen die alleen ontcijferd konden worden door een geheime sleutel. Doe met ons mee voor een korte geschiedenisles en leer meer over hoe encryptie werkt.

In de huidige editie van HTG Explains geven we je een korte geschiedenis van versleuteling, hoe het werkt en enkele voorbeelden van verschillende soorten versleuteling. Bekijk ook de vorige editie, waar we hebben uitgelegd waarom zoveel nerds internet haten Ontdekkingsreiziger.

Afbeelding door xkcd, klaarblijkelijk.

De vroege dagen van versleuteling

zeus_story

beeldDe oude Grieken gebruikten een hulpmiddel genaamd Scytale om hun berichten sneller te versleutelen met behulp van een transpositiecijfer – ze wikkelden gewoon de strook perkament om de cilinder, schreven het bericht uit en toen het afwikkelen geen zin had.

Deze versleutelingsmethode kan natuurlijk vrij gemakkelijk worden verbroken, maar het is een van de eerste voorbeelden van versleuteling die in de echte wereld wordt gebruikt.

Julius Caesar gebruikte in zijn tijd een enigszins vergelijkbare methode door elke letter van het alfabet een aantal posities naar rechts of links te verschuiven – een coderingstechniek die bekend staat als het cijfer van Caesar. Als u bijvoorbeeld het onderstaande voorbeeldcijfer gebruikt, schrijft u “GEEK” als “JHHN”.

Plain:  ABCDEFGHIJKLMNOPQRSTUVWXYZ
Cipher: DEFGHIJKLMNOPQRSTUVWXYZABC

Aangezien alleen de beoogde ontvanger van het bericht het cijfer kende, zou het moeilijk zijn voor de volgende persoon om het bericht te ontcijferen, wat zou overkomen als wartaal, maar de persoon die het cijfer had, kon het gemakkelijk decoderen en lezen.

Andere eenvoudige versleutelingscodes, zoals het Polybius-vierkant, gebruikten een polyalfabetisch cijfer dat elke letter opsomde met de overeenkomstige numerieke posities aan de boven- en zijkant om aan te geven waar de positie van de letter was.

beeld

Als u een tabel als de bovenstaande gebruikt, zou u de letter ‘G’ als ’23’ of ‘GEEK’ als ’23 31 31 43′ schrijven.

Enigma-machine

beeld

Tijdens de Tweede Wereldoorlog gebruikten de Duitsers de Enigma-machine om versleutelde uitzendingen heen en weer te sturen, wat jaren duurde voordat de Polen de berichten konden kraken en de oplossing gaven aan de geallieerde strijdkrachten, die bepalend waren voor hun overwinning.

De geschiedenis van de moderne encryptie

Laten we eerlijk zijn: moderne versleutelingstechnieken kunnen een extreem saai onderwerp zijn, dus in plaats van ze alleen met woorden uit te leggen, hebben we een stripverhaal samengesteld die vertelt over de geschiedenis van versleuteling, geïnspireerd door Jeff Moser’s stick figure-gids voor AES. Let op: we kunnen duidelijk niet alles over de geschiedenis van encryptie in een stripverhaal overbrengen.

Destijds hadden mensen geen goede versleutelingsmethode om hun elektronische communicatie te beveiligen.

Lucifer was de naam die werd gegeven aan een aantal van de vroegste civiele blokcijfers, ontwikkeld door Horst Feistel en zijn collega’s bij IBM.

De Data Encryption Standard (DES) is een blokcodering (een vorm van gedeelde geheime codering) die in 1976 door het National Bureau of Standards werd geselecteerd als een officiële Federal Information Processing Standard (FIPS) voor de Verenigde Staten en die vervolgens op grote schaal is toegepast internationaal gebruiken.

Bezorgdheid over de beveiliging en de relatief trage werking van DES in software-gemotiveerde onderzoekers om een ​​verscheidenheid aan alternatieve blokcoderingsontwerpen voor te stellen, die eind jaren tachtig en begin jaren negentig begonnen te verschijnen: voorbeelden zijn onder meer RC5, Blowfish, IDEA, NewDES, SAFER, CAST5 en FEAL

Het Rijndael-versleutelingsalgoritme werd door de Amerikaanse overheid aangenomen als standaard symmetrische sleutelversleuteling, of Advanced Encryption Standard (AES). AES werd op 26 november 2001 door het National Institute of Standards and Technology (NIST) aangekondigd als US FIPS PUB 197 (FIPS 197) na een standaardisatieproces van 5 jaar waarin vijftien concurrerende ontwerpen werden gepresenteerd en geëvalueerd voordat Rijndael als de meest werd geselecteerd. geschikt versleutelingsalgoritme.

Versleutelingsalgoritme Prestaties

Er bestaan ​​veel versleutelingsalgoritmen, en ze zijn allemaal geschikt voor verschillende doeleinden. De twee belangrijkste kenmerken die het ene versleutelingsalgoritme identificeren en van het andere onderscheiden, zijn het vermogen om de beschermde gegevens te beveiligen tegen aanvallen en de snelheid en efficiëntie waarmee dit wordt gedaan.

Als een goed voorbeeld van het snelheidsverschil tussen verschillende soorten versleuteling, kunt u het hulpprogramma voor benchmarking gebruiken dat is ingebouwd in de TrueCrypt-wizard voor het maken van volumes – zoals u kunt zien, is AES verreweg het snelste type sterke versleuteling.

beeld

Er zijn zowel langzamere als snellere versleutelingsmethoden, en ze zijn allemaal geschikt voor verschillende doeleinden. Als u gewoon af en toe een klein stukje gegevens probeert te decoderen, kunt u het zich veroorloven om de sterkst mogelijke codering te gebruiken, of deze zelfs twee keer te coderen met verschillende soorten codering. Als je snelheid nodig hebt, wil je waarschijnlijk AES gebruiken.

Voor meer informatie over het benchmarken van verschillende soorten codering, bekijk een rapport van de Washington University of St. Louis, waar ze een heleboel tests hebben uitgevoerd op verschillende routines, en het allemaal in een zeer nerds artikel hebben uitgelegd.

Soorten moderne versleuteling

Al het fraaie coderingsalgoritme waar we het eerder over hebben gehad, wordt meestal gebruikt voor twee verschillende soorten codering:

  • Symmetrische sleutelalgoritmen gebruik gerelateerde of identieke coderingssleutels voor zowel codering als decodering.
  • Asymmetrische sleutelalgoritmen gebruik verschillende sleutels voor versleuteling en ontsleuteling — dit wordt gewoonlijk Public-key Cryptography genoemd.

Symmetrische sleutelversleuteling

Om dit concept uit te leggen, gebruiken we de postdienstmetafoor die wordt beschreven in Wikipedia om te begrijpen hoe symmetrische sleutelalgoritmen werken.

Alice stopt haar geheime bericht in een doos en sluit de doos af met een hangslot waaraan ze een sleutel heeft. Ze stuurt de doos vervolgens per gewone post naar Bob. Wanneer Bob de doos ontvangt, gebruikt hij een identieke kopie van de sleutel van Alice (die hij eerder op de een of andere manier heeft verkregen, misschien door een persoonlijke ontmoeting) om de doos te openen en het bericht te lezen. Bob kan dan hetzelfde hangslot gebruiken om zijn geheime antwoord te sturen.

symmetric_encryption_diagram

Symmetrische sleutelalgoritmen kunnen worden onderverdeeld in stroomcijfers en blokcijfers – stroomcijfers versleutelen de bits van het bericht een voor een, en blokcijfers nemen een aantal bits, vaak in blokken van 64 bits per keer, en versleutelen ze als een enkele eenheid. U kunt uit veel verschillende algoritmen kiezen: de meer populaire en gerespecteerde symmetrische algoritmen zijn onder meer Twofish, Serpent, AES (Rijndael), Blowfish, CAST5, RC4, TDES en IDEA.

Asymmetrische versleuteling

In een asymmetrisch sleutelsysteem hebben Bob en Alice aparte hangsloten, in plaats van het enkele hangslot met meerdere sleutels uit het symmetrische voorbeeld. Opmerking: dit is natuurlijk een sterk versimpeld voorbeeld van hoe het echt werkt, wat veel gecompliceerder is, maar je krijgt het algemene idee.

Eerst vraagt ​​Alice aan Bob om zijn geopende hangslot per post naar haar te sturen, terwijl hij zijn sleutel voor zichzelf houdt. Als Alice het ontvangt, gebruikt ze het om een ​​doos met haar bericht op slot te doen en stuurt ze de gesloten doos naar Bob. Bob kan dan de doos ontgrendelen met zijn sleutel en het bericht van Alice voorlezen. Om te antwoorden, moet Bob op dezelfde manier Alice’s open hangslot krijgen om de doos op slot te doen voordat hij het naar haar terugstuurt.

asymmetric_encryption_diagram

Het cruciale voordeel van een asymmetrisch sleutelsysteem is dat Bob en Alice nooit een kopie van hun sleutels naar elkaar hoeven te sturen. Dit voorkomt dat een derde partij (misschien in het voorbeeld een corrupte postbode) een sleutel kopieert terwijl deze onderweg is, waardoor deze derde partij alle toekomstige berichten tussen Alice en Bob kan bespioneren. Bovendien, als Bob onzorgvuldig was en iemand anders liet kopiëren zijn sleutel, zouden de berichten van Alice aan Bob gecompromitteerd worden, maar de berichten van Alice aan andere mensen zouden geheim blijven, aangezien de andere mensen verschillende hangsloten zouden verstrekken die Alice kon gebruiken.

Bij asymmetrische codering worden verschillende sleutels gebruikt voor codering en decodering. De ontvanger van het bericht maakt een privésleutel en een openbare sleutel aan. De openbare sleutel wordt verdeeld onder de afzenders van het bericht en zij gebruiken de openbare sleutel om het bericht te versleutelen. De ontvanger gebruikt zijn persoonlijke sleutel voor alle gecodeerde berichten die zijn gecodeerd met de openbare sleutel van de ontvanger.

Er is een groot voordeel om op deze manier codering uit te voeren in vergelijking met symmetrische codering. We hoeven nooit iets geheims (zoals onze coderingssleutel of wachtwoord) via een onveilig kanaal te verzenden. Uw openbare sleutel gaat de wereld in – hij is niet geheim en dat hoeft ook niet. Uw privésleutel kan knus en gezellig op uw pc blijven, waar u deze heeft gegenereerd – hij hoeft nooit ergens per e-mail te worden verzonden of door aanvallers te worden gelezen.

Hoe versleuteling de communicatie op internet beveiligt

Al vele jaren beveiligt het SSL-protocol (Secure Sockets Layer) webtransacties met behulp van versleuteling tussen uw webbrowser en een webserver, waardoor u wordt beschermd tegen iedereen die in het midden op het netwerk kan rondneuzen.

SSL zelf is conceptueel vrij eenvoudig. Het begint wanneer de browser om een ​​beveiligde pagina vraagt ​​(meestal https: //)

De webserver stuurt zijn openbare sleutel met zijn certificaat.

De browser controleert of het certificaat is uitgegeven door een vertrouwde partij (meestal een vertrouwde root-CA), of het certificaat nog geldig is en of het certificaat gerelateerd is aan de gecontacteerde site.

De browser gebruikt vervolgens de openbare sleutel om een ​​willekeurige symmetrische coderingssleutel te coderen en verzendt deze naar de server met de vereiste gecodeerde URL en andere gecodeerde http-gegevens.

De webserver decodeert de symmetrische coderingssleutel met behulp van zijn privésleutel en gebruikt de symmetrische sleutel van de browser om de URL- en http-gegevens te decoderen.

De webserver stuurt het gevraagde html-document en http-gegevens versleuteld terug met de symmetrische sleutel van de browser. De browser decodeert de http-gegevens en het html-document met behulp van de symmetrische sleutel en geeft de informatie weer.

En nu kun je veilig dat eBay-item kopen dat je echt niet nodig had.

Heb je iets geleerd?

Als je zover bent gekomen, zijn we aan het einde van onze lange reis om encryptie te begrijpen en een beetje hoe het werkt – beginnend bij de vroege dagen van encryptie bij de Grieken en Romeinen, de opkomst van Lucifer en ten slotte hoe SSL maakt gebruik van asymmetrische en symmetrische codering om u te helpen dat donzige roze konijn op eBay te kopen.


We zijn grote fans van codering hier bij How-To Geek, en we hebben veel verschillende manieren behandeld om dingen te doen, zoals:

  • Aan de slag met TrueCrypt (om uw gegevens te beveiligen)
  • Voeg automatische websitecodering toe aan Firefox
  • BitLocker To Go versleutelt draagbare flashdrives in Windows 7
  • Hoe u uw Linux-pc kunt beveiligen door uw harde schijf te versleutelen
  • Voeg opties voor versleutelen / ontsleutelen toe aan het rechtsklikmenu van Windows 7 / Vista
  • Aan de slag met TrueCrypt Drive Encryption op Mac OS X

Versleuteling is natuurlijk een veel te ingewikkeld onderwerp om echt alles uit te leggen. Hebben we iets belangrijks gemist? Voel je vrij om wat kennis over je medelezers te leggen in de commentaren.

Nieuwste artikelen

spot_img

Related Stories

Leave A Reply

Vul alstublieft uw commentaar in!
Vul hier uw naam in