Op de voordeur zit een slot, zo kan je ervoor zorgen dat mensen niet zomaar jouw huis binnenkomen. Hetzelfde kan je doen bij berichten op het internet; je kan het "versleutelen". Dit gebeurde vroeger ook al, bij de Romeinen werden berichten bijvoorbeeld al versleuteld.
Hierboven zie je de Caesarrotatie. Deze manier van versleutelen is vrij simpel, maar kan toch zorgen dat een bericht op het eerste gezicht niet te lezen is. Je kiest een getal, bijvoorbeeld 3, en schuift alle letters zoveel plaatsen op.
Een andere methode om berichten te versleutelen ontstond aan het einde van de Middeleeuwen. Het Vigenèrecijfer
is een soortgelijke manier van versleutelen als bij Caesar, maar nu is het niet altijd 3 stappen bijvoorbeeld. Met behulp van een schema van alle mogelijke alfabetten is het mogelijk om een tekst te versleutelen of juist ontsleutelen.
Hierboven zie je zo'n schema. De truc is dat je een codewoord gebruikt om jouw boodschap te versleutelen. We kiezen het codewoord KAMEEL. We gaan de zin "VERSLEUTELEN IS LASTIG"
versleutelen met behulp van het codewoord en het schema.
HOE WERKT HET?
1)
Kijk links in het schema en zoek de letter V, dan ga je naar de bovenin zoeken naar de letter K. Je krijgt dan de letter F.
2)
Nu zoek je links naar de letter E en bovenin naar de letter A. Je krijgt dan de letter E.
3)
De derde letter is de R, bovenin zoek je naar de M. Je krijgt dan de letter D.
De eerste 3 letters van ons versleuteld bericht zijn FED. Heb je alle letters van KAMEEL gehad? Dan begin je gewoon opnieuw. Het codewoord is dus eigenlijk KAMEELKAMEELKAMEEL.
Uiteindelijk wordt het bericht: FEDWPPETQPIY SS XEWESG.
Tegenwoordig doen computers veel van ons versleutelwerk, dat scheelt een hoop tijd en is een stuk veiliger. Toch kan het voorkomen dat een wachtwoord wordt gekraakt of dat een website wordt gehackt.
We zoomen even in op het opslaan van wachtwoord. Stel je voor dat je een website hebt waar gebruikers een gebruikersnaam en wachtwoord moeten invullen, je moet deze dan veilig ergens opslaan. Vroeger werden deze gegevens nog wel eens zonder versleuteling in de database gezet. Maar als iemand dan in de database kon komen waren alle wachtwoorden te zien. Men is toen gaan versleutelen, een van de makkelijkste manieren om een wachtwoord onleesbaar op te slaan is het gebruik van een MD5-hash. Deze methode is anno 2021 niet meer veilig (eigenlijk al 10 jaar niet meer), maar wordt toch nog wel eens gebruikt.
Het idee van een MD5-hash
is dat je altijd een even lange reeks karakters krijgt, ongeacht wat je erin stopt.
Je ziet hier dat de letter "M", de tekst "My Name" en de tekst "My Name Is John" allen een reeks karakters oplevert die allemaal even lang zijn. Ze zijn wel anders omdat er andere input is.
Als jouw wachtwoord op deze manier wordt opgeslagen is deze niet direct uit te lezen in een database. Alhoewel...
Sinds het begin van MD5 zijn er mensen geweest die ALLE mogelijkheden (a, aa, aaa etc.) hebben uitgeprobeerd in MD5 en hebben opgeslagen. Zo kan je heel snel MD5-hashes opzoeken, dit noemt men een Rainbow table.