Wat is symmetrische versleuteling?

Delen
Copied to clipboard!
Wat is symmetrische versleuteling?
Luister naar het artikel
00:00 / 00:00

Symmetric Key encryptie (of symmetrische encryptie) is een encryptiemethode waarbij dezelfde sleutel wordt gebruikt om berichten te coderen en te decoderen. Deze vorm van informatieversleuteling is de afgelopen decennia veel gebruikt om geheime communicatie tussen overheden en militairen te vergemakkelijken. Tegenwoordig worden symmetrische versleutelingsalgoritmen op grote schaal toegepast in computersystemen om de gegevensbeveiliging te verbeteren.


Hoe werkt symmetrische versleuteling?

Een symmetrisch encryptieschema is gebaseerd op een enkele sleutel die gedeeld wordt tussen twee of meer gebruikers. Dezelfde sleutel wordt gebruikt voor het coderen en decoderen van de zogenaamde platte tekst (die het bericht of het stukje data vertegenwoordigt dat wordt gecodeerd). Het versleutelingsproces bestaat uit het verwerken van een platte tekst (input) aan de hand van een versleutelingsalgoritme dat een cipher wordt genoemd en dat op zijn beurt een ciphertext (output) genereert.

Als het encryptieschema sterk genoeg is, is de enige manier waarop een persoon de informatie in de ciphertext kan lezen of raadplegen door de corresponderende sleutel te gebruiken om deze te ontcijferen. Het proces van ontcijfering komt er in principe op neer dat de cijfertekst weer wordt omgezet in platte tekst.

De veiligheid van symmetrische encryptiesystemen is gebaseerd op hoe moeilijk het is om de overeenkomstige sleutel willekeurig te raden. Het zou bijvoorbeeld miljarden jaren duren om een 128-bits sleutel te raden met behulp van gewone computerhardware. Hoe langer de encryptiesleutel is, hoe moeilijker deze te kraken is. Sleutels met een lengte van 256 bits worden over het algemeen beschouwd als zeer veilig en zijn theoretisch bestand tegen brute force attacks met quantumcomputers. 

Twee van de meest gebruikte symmetrische encryptiemethoden zijn gebaseerd op block- en stream ciphers. Block ciphers groeperen gegevens in blokken van vooraf bepaalde grootte; elk blok wordt vervolgens versleuteld met behulp van de bijbehorende sleutel en een encryptiealgoritme ( 128-bits platte tekst wordt bijvoorbeeld versleuteld in 128-bits ciphertext). Stream ciphers versleutelen daarentegen niet met blokken, maar in stappen van 1 bit (per keer wordt 1-bit platte tekst wordt gecodeerd in 1-bit ciphertext).


Symmetrische vs. asymmetrische versleuteling

Symmetrische versleuteling is een van de twee belangrijkste methoden om gegevens in moderne computersystemen te versleutelen. De andere is asymmetrische encryptie, soms ook wel public key-encryptie genoemd. Het belangrijkste verschil tussen deze methoden is het feit dat asymmetrische systemen gebruik maken van twee sleutels in plaats van één, zoals symmetrische systemen doen. Een van de sleutels kan openbaar worden gedeeld (de publieke sleutel), terwijl de andere geheim blijft (de private sleutel).

Het gebruik van twee sleutels in plaats van één resulteert in meerdere functionele verschillen op tussen symmetrische en asymmetrische encryptie. Asymmetrische algoritmes zijn bijvoorbeeld complexer en langzamer dan symmetrische. Omdat de publieke en private sleutels die in asymmetrische encryptie worden gebruikt tot op zekere hoogte wiskundig aan elkaar gerelateerd zijn, moeten de sleutels zelf ook aanzienlijk langer zijn om een veiligheidsniveau te bieden dat vergelijkbaar is met dat van kortere symmetrische sleutels.


Toepassing in moderne computersystemen

Symmetrische versleutelingsalgoritmen worden in veel moderne computersystemen gebruikt om de veiligheid van gegevens en de privacy van de gebruiker te waarborgen. De Advanced Encryption Standard (AES) die veel wordt gebruikt in zowel beveiligde berichtenapplicaties als in cloud-opslag is een goed voorbeeld van dergelijke symmetrische versleuteling.

Naast software-implementaties kan AES ook direct in computerhardware worden geïmplementeerd. Op hardware gebaseerde symmetrische encryptieschema's maken meestal gebruik van AES 256, een specifieke variant van de Advanced Encryption Standard met een sleutelgrootte van 256 bits.

Het is het vermelden waard dat de blockchain van Bitcoin geen gebruik maakt van encryptie in tegenstelling tot wat velen denken. In plaats daarvan gebruikt het een zogenaamd digital signature algorithm (DSA), ook wel bekend als het Elliptic Curve Digital Signature Algorithm (ECDSA), dat digitale handtekeningen genereert zonder gebruik te maken van encryptie.

Een veelvoorkomend punt van verwarring is dat het ECDSA gebaseerd is op elliptical-curve cryptografie (ECC). Deze vorm van encryptie wordt niet alleen ingezet voor versleuteling, maar ook voor digitale handtekeningen en pseudo-willekeurige generators. Het ECDSA op zichzelf kan echter niet worden gebruikt voor encryptie.

 

Voor- en nadelen

Symmetrische encryptie zorgt voor een vrij hoog beveiligingsniveau, terwijl tegelijkertijd berichten snel versleuteld en gedecodeerd kunnen worden. De relatieve eenvoud van symmetrische systemen is ook een logistiek voordeel, omdat ze minder rekenkracht vereisen dan asymmetrische systemen. Bovendien kan de veiligheid van symmetrische encryptie eenvoudig worden opgeschaald door de sleutellengte te vergroten. Voor elk bit dat aan de lengte van een symmetrische sleutel wordt toegevoegd, neemt de moeilijkheid om de encryptie te kraken exponentieel toe.

Hoewel asymmetrische encryptie een groot aantal voordelen biedt, heeft het een belangrijk nadeel: het inherente probleem van het versturen van de sleutels die gebruikt worden om gegevens te coderen en te decoderen. Wanneer deze sleutels worden gedeeld via een onbeveiligde verbinding, zijn ze kwetsbaar voor onderschepping door kwaadwillenden. Als een onbevoegde gebruiker toegang krijgt tot een symmetrische sleutel, wordt de veiligheid van gegevens die met behulp van die sleutel zijn versleuteld in gevaar gebracht. Om dit probleem op te lossen, gebruiken veel webprotocollen een combinatie van symmetrische en asymmetrische encryptie om veilige verbindingen tot stand te brengen. Een van de meest in het oog springende voorbeelden van een dergelijk hybride systeem is het cryptografisch protocol Transport Layer Security (TLS) dat wordt gebruikt om grote delen van het moderne internet te beveiligen.

Ook moet worden opgemerkt dat alle soorten versleuteling onderhevig zijn aan kwetsbaarheden als gevolg van onjuiste implementatie. Hoewel een voldoende lange sleutel een aanval wiskundig onmogelijk kan maken, leiden fouten in de implementatie door programmeurs vaak tot zwakheden die de weg vrijmaken voor cyberaanvallen.


Tot slot

Dankzij de betrekkelijke snelheid, eenvoud en veiligheid wordt symmetrische versleuteling op grote schaal gebruikt in toepassingen die variëren van het beveiligen van internetverkeer tot het beschermen van gegevens die zijn opgeslagen op cloudservers. Hoewel het vaak wordt gecombineerd met asymmetrische versleuteling om het probleem van de veilige overdracht van sleutels op te lossen, zijn symmetrische encryptiesystemen nog steeds een essentieel onderdeel van de moderne computerbeveiliging.

Loading