Hoe houdt je je geheim geheim? 11B R. van Well 17-1-2016 tot 22-1-2016 Merijn Mekes Jori Lamboo Olle Colenbrander Inhoudsopgave Inhoudsopgave Voorwoord .............................................................................................................................................. 3 Wat is cryptografie?................................................................................................................................ 4 Symmetrische cryptografie ................................................................................................................ 4 Asymmetrische cryptografie .............................................................................................................. 4 Versleutel methodes .......................................................................................................................... 6 Priemgetallen .......................................................................................................................................... 7 Cryptografie in deze tijd ....................................................................................................................... 10 Authenticatie en autorisatie ............................................................................................................ 10 Authenticatie ................................................................................................................................ 10 Autorisatie..................................................................................................................................... 10 Grote priemgetallen ......................................................................................................................... 11 Zelf controleren op priemgetallen ................................................................................................... 12 Is het mogelijk priemgetallen te kraken? ........................................................................................ 13 (a)symmetrische encryptie ............................................................................................................... 14 Symmetrische encryptie ............................................................................................................... 14 Asymmetrische encryptie met priemgetallen ............................................................................. 14 Steganografie .................................................................................................................................... 14 Hashing.................................................................................................................................................. 15 Salt ..................................................................................................................................................... 16 Verschillende soorten “virussen” op de computer ............................................................................. 17 Spoofing ............................................................................................................................................ 17 Sniffing .............................................................................................................................................. 17 Poortscanner ..................................................................................................................................... 17 Keylogger .......................................................................................................................................... 17 Trojaans paard .................................................................................................................................. 18 Macrovirussen .................................................................................................................................. 18 Logboek Jori Lamboo ............................................................................................................................ 19 Logboek Olle Colenbrander .................................................................................................................. 21 Logboek Merijn Mekes ......................................................................................................................... 23 Nawoord ............................................................................................................................................... 25 2 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Voorwoord Wij, Jori Lamboo, Olle Colenbrander en Merijn Mekes maken een werkstuk over cryptografie. Dat leek ons een erg interessant onderwerp. Het sprak ons erg aan en daardoor leek het ons leuker en wat makkelijk om het werkstuk te maken. Ook komt iedereen elke dag in aanmerking met computers en dus ook cryptografie. We hebben een hoofdvraag en een aantal deelvragen bedacht. Onze hoofdvraag is “Hoe houd je je geheim geheim?”. Met behulp van een aantal deelvragen gaan we die vraag beantwoorden. Onze deelvragen zijn: Wat zijn priemgetallen? Wat is de geschiedenis van Cryptografie? Wat is cryptografie? Hoe ziet de cryptografie in deze tijd eruit? Hoe gebruik je priemgetallen in de cryptografie? Wat zijn de verschillende computervirussen? Hier gaat ons werkstuk over. Veel leesplezier! 3 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Wat is cryptografie? Al sinds het begin van het schrift wordt er gebruik gemaakt van geheimschriften, dit is om pottenkijkers te weerhouden van de informatie. Dit gebeurt op allerlei verschillende manieren, het kan door citroensap te gebruiken waardoor je alleen op een speciale manier de letters kan gebruiken. Dit gaat alleen niet met alles, je kan namelijk ook geen mailtje maken met citroensap. Daarom worden de mailtjes of berichten op een speciale manier gecodeerd zodat niet iedereen dit kan terug kan coderen. Dit noemen we cryptografie, stamt af van : κρυπτος = geheim en γραφειν = schrijven. Cryptografie is niet alleen wiskundig maar ook natuurkundig, dit is wanneer het gaat over quantumcryptografie. In het algemeen zijn er twee soorten cryptografie. Dit zijn: - Symmetrische cryptografie Asymmetrische cryptografie Symmetrische cryptografie Hierbij zijn de encryptie- en decryptiemachine’s zijn parametriseerbaar, dit houdt in dat ze afgesteld kunnen worden op de variabele. Dit wordt ook wel de sleutel genoemd. De sleutels worden zo ingesteld dat ze elkaar opheffen, hierdoor word het door de eerste machine versleuteld en door de ander ontcijferd. Hierin worden weer twee soorten algoritmen van elkaar onderscheiden. Bij de symmetrische algoritme bestaat het uit omkeerbare stappen, zoals keer, plus, kwadraat etc. Dit betekent dat de ontvanger dan de omgekeerde stap uit moet voeren om het te kunnen ontcijferen. Daarom is bij encryptie en decryptiesleutel de sleutel gelijk. Asymmetrische cryptografie Hier wordt er gebruik gemaakt van een asymmetrisch algoritme, dit houdt in dat de handeling wordt gedaan niet omkeerbaar is. Dit kan onder andere door reductie, dit houdt in dat je iets deelt door de rest. Maar natuurlijk is er een sleutel op bedacht om het weer te geven in de originele vorm, anders was het nutteloos. Alleen is dit niet te achterhalen via de sleutel. Aangezien de sleutel verschillend is spreek je van meerdere algoritme, oftewel asymmetrische algoritme. Doordat de tussenpersoon niks met de algoritme kan doen wordt er ook wel gesproken van een public-keycryptografie. 4 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo De Geschiedenis van cryptografie Cryptografie werd vroeger veel gebruikt, ook op diverse wijze. Het kon zijn door iemand kaal te scheren en dan te laten tatoeëren, hierdoor was de boodschap alleen leesbaar als de persoon weer werd kaal geschoren. Maar een andere manier die veel werd gebruikt in de tweede wereldoorlog is microdots. Dit zijn puntjes die even groot zijn als de normale punt, alleen bevatten deze minuscule informatie die op fotografische wijze is verkleind. Dit was alleen leesbaar door een andere computer of door het te lezen met een vergrootglas. Dit werd gedaan door mensen van “de zwarte kamer”. Dit was een soort van geheime dienst die elk land aan het eind van de 18e eeuw bezat, het was een team van codebrekers die zich ontfermden over geheimschriften. Het volk maakte vroeger ook gebruik van cryptografie, ze deden dit via de elektrische telegraaf. Ze probeerde hiermee te vermijden dat de telegrafist alle informatie te weten kon komen. Later kwam de radio en die zorgde ervoor dat de telegrafie verleden tijd werd, dit was namelijk de makkelijkste manier om te communiceren over lange afstanden. Tot aan de eerste wereldoorlog werd er nog gebruik gemaakt van pen-en-papier codes, dit was allemaal handgeschreven en erg onhandig. Naderhand ontstonden de eerst elektromechanisme coderingen, hierbij werden de letters omgezet in cijfers. Dit was bijvoorbeeld de Enigma-coderingsmachine en de Lorenz-machine. Deze machines waren onmogelijk om te kraken met de hand. Hierom werd er een voorloper van de computer gebouwd: De Colussus. Deze elektronische machine werd ook gebruikt om diverse codes sneller te kraken. Het werd ook gebruikt om berichten snel te ontsleutelen. Al snel werd er tegen een probleem aangelopen, dat was hoe de juiste sleutel bij de ontvanger aankomt. Dit werd eerst altijd gedaan via koeriers totdat Whitfield Diffie en Martin Hellman een oplossing hadden bedacht. Dit was het Diffie-Hellmansleuteluitwisselingsprotocol. Via dit protocol is het mogelijk om sleutels op elektronische manier veilig uit te wisselen, zelfs wanneer de informatie wordt afgetapt. Hiermee is de grondsteen van het cryptografie gelegd. Het beveiligen van berichten werd verzekerd door een handtekeningfunctie, zo wist je dat je bericht veilig en van de goede afzender kwam. 5 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Versleutel methodes Het versleutelen van de informatie kan gedaan worden door een soort van typmachines. Zoals de Enigma-coderingsmachine, deze machine werd in de Tweede Wereldoorlog door de Duitsers vertrouwd gebruikt tot aan het einde. Deze machine versleutelde alle berichten van de Duitsers, omdat het versleuteld was dachten ze dat niemand het begreep. Dit was een cruciale fout, de Britten en de Polen hadden de code doorbroken waardoor ze de berichten konden lezen. Het oudste geheimschrift dat is gevonden is Caesar-Cipher, dit is het geheimschrift van Julius Caesar. Dit deed hij door een letter te vervangen door een andere letter die een aantal plekken verder in het alfabet staan. In dit geval werd de A vervangen door de D, de B door de E en de C door de F. Dit geldt voor het hele alfabet. Hierdoor maakte het niet uit als de vijand een bericht in handen kreeg want ze begrepen er toch niks van. Dit werkte toen omdat het uniek was, maar nu is het gemakkelijk te achterhalen dus wordt het niet meer gebruikt. http://www.natuurkunde.nl/artikelen/1109/cryptografie www.fi.uu.nl/ctwo/WiskundeD/MateriaalDomeinenWiskundeD/CryptografieVwo/docs/Cryp tografie.doc 6 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Priemgetallen Iedereen kent priemgetallen wel en weet wat het zijn. Ongemerkt komen de priemgetallen nog veel vaker voor in het dagelijks leven. Veel computer zijn beveiligd met priemgetallen en veel wiskundige zitten hier dagelijks mee te spelen en er word elke dag gezocht naar het hoogste priemgetal. De persoon die een nog hoger priemgetal kan vinden dan 17.425.170 cijfers achter elkaar wint 150.000 dollar. Maar waar komen de priemgetallen vandaan en wie is de ontdekker? De bekende oude Griek Pythagoras, waar veel mensen wel over heeft gehoord, heeft veel betekent voor de wiskunde van nu en vroeger. Wij kennen hem van de rechthoekige driehoeken en van de stelling van Pythagoras. Maar hij heeft in zijn leven nog meer gedaan voor de wiskunde. Pythagoras stichtte rond 530 voor Christus in Crotona een gemeenschap. Die gemeenschap hield zich veel bezig met religie, wijsbegeerte, wiskunde en politiek. Daar hadden de mensen erg veel interesse in maar het meeste interesse hadden ze in cijfers en de eigenschappen van cijfers. Ze dachten dat alle natuurlijke getallen samen met hun verhoudingen de basis waren van alles op aarde, het leven en het heelal. Rond 400 v. C. ontdekte ze iets heel bijzonders over bepaalde getallen. Ze hadden getallen ontdekt die je niet in een rechthoek kon leggen. Stel je neemt het getal 6, met 6 steentjes. Dan kan je die dus in een rechthoek leggen van 3 bij 2. Als je het 5 neemt en dus ook 5 steentjes is dat onmogelijk om die in een rechthoek te leggen. Je kan die alleen op een rij leggen. Zo werd er een onderscheid gemaakt tussen de rechthoekige getallen (2, 4, 6, 8, 9, 10…) en de rechtlijnige getallen ( 2, 3 5, 7…) De Pythagorische mensen maakten zo een verschil tussen de getallen die in een rechthoek kunnen worden gelegd zoals 4, 6, 8, 9, 10… En de getallen die in een rechte lijn werden gelegd zoals 2, 3, 5, 7…. Het is waarschijnlijk geen verrassing dat de rechtlijnige getallen overeenkomen met wat wij nu priemgetallen noemen. 7 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Priemgetallen zijn dus getallen die alleen door 1 deelbaar zijn en door zichzelf. Eratostenes bedacht een manier om alle priemgetallen tot een bepaalde grote te kunnen weten, het heette de zeef van Eratostenes. Je begint met een lijst van getallen, je streept alle getallen weg die deelbaal zijn door 2, daarna alle getallen die deelbaar zijn door 3, daarna door 4 enzovoort. Euclides bewees later dat er oneindig veel priemgetallen zijn. Dat bewijs noemen ‘Het ongerijmde’. Daar is later veel gebruik van gemaakt en zonder die ontdekking waren de codes van nu een stuk onzekerder. De slimme wiskundige Leonhard Euler (1707-1783) bewees dat de reeks 1/2 + 1/3 + 1/5 + 1/7 + 1/11 ….. enzovoort…. Oneindig groot kan worden en er geen einde kan komen. Daarmee versterkte hij het bewijs van Euclides nog eens. De reeks heeft geen antwoord omdat de reeks nooit op kan houden en dus het antwoord oneindig groot is. Er werd een brief geschreven aan Euler door Christian Goldbach in 1730, hij had nog een nieuw bewijs dat priemgetallen oneindig groot waren. Daarmee maakte hij gebruik van Fermat-getallen. Fermat getallen zijn getallen in de vorm: 8 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Een Fermat-getal is een natuurlijk getal waarbij de ‘n’ voor een willekeurig natuurlijk getal staat. Zo ontstonden Fermat-priemgetallen, een Fermat-priemgetal is een Fermat getal was tegelijk ook een priemgetal was. Deze zijn oneindig groot. Zo zijn door de jaren heen nog veel bewijzen geweest over de priemgetallen en waren veel bewijzen ook niet waar. Men ging ook dingen proberen met de priemgetallen zoals codes maken. Men was al veel bezig met geheimschrift en ook het ontcijferen daarvan. Maar door de ontdekking van priemgetallen werden dat ontcijferen een stuk moeilijker. Zo ontstond de asymmetrische cryptografie. Dat was een systeem met 2 verschillende sleutels, een publieke sleutel die makkelijk te ontcijferen en door iedereen gebruikt kan worden. Maar de tweede code kan alleen ontcijfert worden door de verstuurder en de ontvanger. Het is te vergelijken met een hangslot, iedereen kan het dichtklikken maar alleen de persoon die de code weet kan hem weer openmaken. Een andere wiskundige Euclides had weer iets ontdekt. Hij schreef er een boek over, ‘De Elementen’. In dat boek stond dat alle ‘normale’ getallen gekoppeld waren aan priemgetallen, ze konen op een manier ontbonden worden in priemfactoren. Dus elk getal kan worden gemaakt door een aantal priemgetallen te vermenigvuldigen, er is voor elk getal maar een manier. 2, 3 en 7 zijn drie priemgetallen, als je die vermenigvuldigt krijg je 42. Dit is de basis van het magische hangslot. Om het getal 42 te ontcijferen zijn dus priemgetallen nodig, de maker van de code weet dit want die heeft eerst de priemgetallen uitgekozen. De ontcijferaar weet alleen 42 en niet de priemgetallen, dus is het voor he, bijna onmogelijk het slot te openen. Dus 42 klikt het slot dicht en 2, 3 en 7 maakt het slot weer open. Nog een voorbeeld, de publieke sleutel is 551 en daarmee is dus het slot dicht geklikt. De priemgetallen heb je nodig om het slot weer open te krijgen. De priemgetallen zijn 19 x 29 want dat is 551. Zo werden sloten vroeger gecodeerd. Hoe groter de priemgetallen des te beter het slot. Om een groot getal te ontbinden in priemgetallen is heel moeilijk. Dat kunnen nu zelf de beste computers niet eens. De boodschap is dus zeker veilig als je de twee priemgetallen maar hoog genoeg zijn. http://www.kennislink.nl/publicaties/priemgetallen-van-meer-dan-tien-miljoen-cijfers http://www.kennislink.nl/publicaties/de-simpele-magie-van-priemgetallen-in-geheimschrift http://www.kennislink.nl/publicaties/priemgetallen https://nl.wikipedia.org/wiki/Priemgetal http://www.wiskundemeisjes.nl/tag/priemgetallen/ 9 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Cryptografie in deze tijd Sinds het komen van het internet is er veel beveiliging nodig. Dit zodat er geen privacy geschonden wordt van mensen die op het internet zitten. Mails, foto’s, facebook profielen en je bankafschriften. Je wilt natuurlijk niet dat iemand zomaar geld van je bank af kan halen. Dit word dus beveiligd met cryptografie. Dit zodat alleen de verzender en ontvanger informatie hebben over wat er word verzonden. Authenticatie en autorisatie Authenticatie Authenticatie is het vaststellen dat de gebruiker daadwerkelijk degene is wie hij zegt te zijn. Stel iemand vraagt op straat wie ik ben dan kan ik zeggen dat ik Peter ben terwijl ik dat helemaal niet ben. Hiervoor is een geldig legitimatiebewijs nodig zoals een paspoort of een rijbewijs. Of wanneer ik met iemand een wachtwoord heb afgesproken en wij beide ervan uitgaan dat we het wachtwoord aan niemand anders hebben verteld. Dan zou je wanneer je het wachtwoord verteld aan de ander kunnen vaststellen dat hij ook degene is wie hij zegt te zijn. Zo word dit ook op websites gedaan. Sociale media, bankzaken, webwinkels. Hier kan de website jou aansprakelijk stellen over wat er gebeurd onder jouw gebruikersnaam, hierdoor is het onverstandig om je wachtwoorden door te vertellen en is het zelfs wettelijk verboden je pincode van je bank aan anderen te vertellen. Autorisatie Dit betekent volgens de van Dale het verlenen van bevoegdheid. Ofwel het toestaan om bepaalde handelingen te verlenen. Dit gebeurd pas nadat je weet aan wie je deze toestemming geeft. Dit door authenticatie. Het kan zijn dat na de authenticatie er geen bevoegdheid wordt verleend. Bijvoorbeeld als je weet dat iemand een bankrover is ga je hem geen toegang geven tot een geldkluis. De procedure is dus altijd eerst controleren wie diegene is en daarna bepalen wat diegene mag. Dus eerst authenticatie en daarna autorisatie. Authenticatie gebeurd op basis van gebruikersnaam en wachtwoord en autorisatie gebeurd op basis van gebruikersnaam. 10 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Grote priemgetallen Een hele goede manier van beveiligen die ook heel vaak gebruikt word is het gebruik maken van priemgetallen. Deze methode wordt gebruikt met hele grote priemgetallen van minimaal 150 cijfers. De eerste honderd priemgetallen zijn: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541 In het begin is het vinden van priemgetallen nog best makkelijk alhoewel het rond de honderd tallen zonder rekenmachine nog best pittig is. Maar als je echt grote priemgetallen krijgt wordt het heel moeilijk omdat er geen formule is om die getallen te berekenen. Wanneer je een reeks met priemgetallen hebt is het moeilijk om de volgende te bepalen. De enige manier om uiteindelijk priemgetallen te berekenen is door alle getallen te testen op deelbaarheid. Priemgetallen die klein zijn en vrij makkelijk om te berekenen heten ‘kleine priemgetallen’. Maar klein is een relatief begrip. Klein kan bij priemgetallen een heel groot getal zijn. Op een gegeven moment zijn de priemgetallen dus nauwelijks meer te berekenen en komen er gaten in de lijst van priemgetallen. 11 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Zelf controleren op priemgetallen Er zijn wel een aantal manieren om grote (priem)getallen te controleren op deelbaarheid. Als een getal eindigt op een 0 of een 5 weet je dat het deelbaar is door 5. Bijvoorbeeld: 749265 : 5 = 149853 8463563853750 : 5 = 1692712770750 Als je alle cijfers van een getal op zou tellen en dat is deelbaar door 9, dan is het cijfer uiteindelijk ook deelbaar door 9. Bijvoorbeeld: 2760165 : 9 = 306685 Want 2 + 7 + 6 + 0 + 1 + 6 + 5 = 27 (en dat is deelbaar door 9) 12345678 : 9 = 1371742 Want 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 = 36 ( en dat is deelbaar door 9) Ook weet je dat elk getal dat even is uitgezonderd van het getal 2 geen priemgetal is. Bij een computer kun je iets uitvoeren als een priemcontrole. Wanneer je alle priemgetallen met vijftig cijfers wilt weten kan je er ongeveer vanuit gaan dat een computer per getal een tiende seconde nodig heeft. Dan zou je dus alle oneven getallen met vijftig cijfers moeten berekenen. Dat zijn de getallen tussen de van: 10000000000000000000000000000000000000000000000001 t/m: 99999999999999999999999999999999999999999999999997 Als je de vorige regels bekijkt snap je waarom er een 7 staat aan het eind. Er staat geen 8 omdat het alleen maar oneven getallen kunnen zijn en er staat geen 9 omdat anders de optelsom van alle cijfers deelbaar is door 9. 12 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Is het mogelijk priemgetallen te kraken? Het aantal priemgetallen wat hieruit komt heeft in totaal ook 50 cijfers. Stel je zou een supercomputer hebben die 1 miljoen getallen per seconde kan controleren op het zijn van een priemgetal. En stel dat je 1 miljard van die computers zou hebben en tegelijkertijd aan zou zetten. Dan zou je dus per seconde 1 miljoen x 1 miljard is 1.000.000.000.000.000 getallen kunnen controleren. Wanneer je dan wat cijfers (nullen) zou wegstrepen bij beide kanten houd je 50 - 16 = 34 cijfers over. Het zou dan dus een getal van 34 cijfers seconden duren om al die priemgetallen te berekenen. Dit zou rond de 3,5 x 10^24 jaar duren. Dit is dus gewoon onmogelijk. Maar wanneer je alleen maar 1 getal met 150 cijfers wilt controleren op het zijn van een priemgetal dan kan een computer dit toch in minder dan een seconde berekenen. Aangezien er vrij veel priemgetallen zijn kan je na het invoeren van een paar willekeurige priemgetallen toch een priemgetal vinden. Wanneer je een priemgetal met 150 cijfers vermenigvuldigd met een ander priemgetal met 150 cijfers, dan krijg je een getal met 300 cijfers. Stel dat je een getal met 300 cijfers krijgt en je weet dat het een product is van twee grote priemgetallen. Je weet niet welke priemgetallen dat zijn. Zou je dan die priemgetallen kunnen terugvinden? Nee dit kan niet, (tenzij de twee priemgetallen gelijk zijn dan zou je gewoon kunnen worteltrekken) want dat getal met 300 cijfers is alleen maar deelbaar door die 2 priemgetallen. Dat is een kenmerk van elk priemgetal. Wanneer je twee priemgetallen met elkaar vermenigvuldigd zijn dat ook de enige twee cijfers waardoor het getal wat er uitkomt gedeeld kan worden. Bijvoorbeeld 3 en 7 zijn priemgetallen, hier komt 21 uit als je ze vermenigvuldigd. Maar 21 kan alleen maar gedeeld worden door 7 en 3 en niet door 8 of 4 bijvoorbeeld. Zo werkt dit dus ook bij de hoge priemgetallen. Om deze priemgetallen te vinden moet je alle priemgetallen nagaan om te kijken of het deelbaar is door het getal met 300 cijfers. Wanneer dit zou lukken en je vind dit getal weet je het andere priemgetal uiteraard ook maar omdat het vinden van het eerste getal al onmogelijk is kan dat niet. De kans word zelfs kleiner geschat dan 1 atoom het het gehele heelal. 13 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo (a)symmetrische encryptie Symmetrische encryptie Dit houd in dat je het versleutelen doet door middel van het gebruik maken van dezelfde sleutel. Dus de verzender en de ontvanger gebruiken hetzelfde wachtwoord. Waardoor ze beiden de informatie kunnen waarnemen. (zie eerder in het werkstuk) Asymmetrische encryptie met priemgetallen Dit houd in dat er 2 verschillende sleutels nodig zijn om aan de informatie te komen. Stel er is een kluis met een heel speciaal slot. Wanneer de kluis open is kan je met elk van die sleutels de kluis dichtdoen. Maar als deze op slot is kan hij alleen maar geopend worden met de andere sleutel. Dus wanneer ik een sleutel heb en jij, en ik kan de kluis openen weet ik zeker dat jij hem op slot hebt gedaan en andersom. Dus wanneer ik een sleutel voor mezelf houd en ergens verstop en de andere sleutel een aantal keer kopieer. En dat ik die sleutels aan de mensen geef waarmee ik wil communiceren. Dan weet diegene zeker dat ik het ben en niet iemand die zich als mij voordoet. Dus wanneer ik iets in de kluis doe en de ander opent het weet hij zeker dat het van mij is. Wanneer de ander bijvoorbeeld zijn creditcard nummer in de kluis doet en hem dan op slot doet kan alleen ik die kluis openen, zelfs kan hij hem zelf niet meer openen. Dit verhaaltje heeft te maken met wat ik vertelde over de priemgetallen. De 2 sleutels zijn dus eigenlijk de twee priemgetallen die samen de kluis open kunnen maken. Steganografie Steganografie is het niet laten zien dat je een geheime boodschap verstuurd. Wanneer je iets over het internet verstuurd wat gecodeerd is kan er wel gezien worden dat je iets verstuurd maar niet wat. Steganografie is het versturen van iets zonder dat iemand vermoed dat je iets geheims verstuurd. Dit door bijvoorbeeld een (vakantie)foto te versturen en in de foto op een bepaalde manier in het klein een geheime code te verbergen. Dan zal niemand verwachten dat jij iets geheims verstuurd. 14 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Hashing Hashing wordt gebruikt bij het opslaan van wachtwoorden. Een hash is een wachtwoord maar dan anders opgeschreven. Van elk wachtwoord kan de computer met behulp van een algoritme de hash bepalen. Maar het is onmogelijk om van de hash terug te komen naar het wachtwoord. Een paar eigenschappen van Hashing zijn: De lengte bij het soort hash wat we hier bespreken (Md5) is altijd 32 cijfers lang. Een stukje tekst moet altijd dezelfde hash genereren. Een hash mag niet terug gerekend kunnen worden naar het wachtwoord. Tekst Hash van tekst Byte over hashing cc967ac33065d74f72590edd4f5491d5 Byte over hashing. 95ed53c538bfa7471cf2a0604094555e Je ziet hierboven dat in het stukje tekst de punt alleen verschilt en de hele hash anders is. Een voorbeeld: Wanneer een bepaalde website gehackt wordt en alle gebruikersnamen en wachtwoorden komen op straat te liggen dan is dat heel vervelend omdat veel mensen hun wachtwoorden en gebruikersnamen bij meerdere sites gelijk is. Zo kunnen de hackers ook nog daarin hacken. Wanneer dit gebeurd zal het er ongeveer zo uitzien: Naam Jan Piet Kees Wachtwoord 123456 Wachtwoord 123456 Wanneer een bepaalde website gehackt wordt en de wachtwoorden zijn gehasht dan kunnen de hackers de hash niet zomaar terugdraaien naar het wachtwoord. Dit ziet er dan zo uit: Naam Wachtwoord Hash van wachtwoord Jan 123456 e10adc3949ba59abbe56e057f20f883e Piet Wachtwoord 701f33b8d1366cde9cb3822256a62c01 Kees 123456 e10adc3949ba59abbe56e057f20f883e Dit is nog steeds niet 100% veilig. Omdat 1% van de mensen 123456 als wachtwoord heeft en ze weten hoe de hash van 123456 eruit ziet dan kunnen ze bijvoorbeeld alle mensen met dat wachtwoord hacken. Hierop hebben ze nog iets bedacht. 15 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Salt Salt is het hashen van de gebruikersnaam en wachtwoord samen. Dit is veiliger, zo hebben mensen met hetzelfde wachtwoord toch een andere hash. Bijvoorbeeld: Naam Wachtwoord Jan 123456 Piet wachtwoord Kees 123456 Te hashen tekst Jan + 123456 Piet + wachtwoord Kees + 123456 Hash 90b60bac3e1113e180ddefed30c37b6e d9bc513252dede0277c864f23df84039 6cf875073050de4d260580c39a782e03 In de vorige tabel zag je dat de hash van Kees en Jan gelijk was. In deze tabel is dat niet zo ook al hebben ze hetzelfde wachtwoord. Daarom is deze manier veiliger. Nog een weetje: Wanneer je op een beveiligde website zit kun je meestal links of rechtsboven op het slotje klikken en dan kun je zien hoe deze pagina versleuteld is. http://www.henk-reints.nl/math/encryptie.htm https://www.byte.nl/kennisbank/item/gegevens_beveiligen_met_encryptie_en_hashing 16 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Verschillende soorten “virussen” op de computer Hacken is eigenlijk het indringen van een andermans computer en dan meekijken met de gegeven van die persoon. Veel mensen zien hacken als iets negatiefs, maar dat hoeft helemaal niet. Er word veel onderzocht door middel van hackers en veel problemen kunnen worden opgelost. Ook kunnen hackers veel dingen verbeteren en sneller maken zoals computers en verbindingen. Een hacker kan ook worden ingezet tijdens het controleren van de veiligheid van een systeem, zo kunnen lekken in de beveiliging worden ontdekt en opgelost worden. Ook kunnen hackers systemen beveiligen tegen hackers die willen inbreken in het systeem. Zo zie je dat hacken best handig is maar ook gevaarlijk. Het kan dus heel handig zijn alleen het is gevaarlijk wanneer er misbruik van gemaakt wordt. Er zijn veel verschillende vormen van hacken, ik ga de belangrijkste en meest bekende kort beschrijven: Spoofing Spoofing is het voordoen als iemand anders. Dat kan gaan met e-mails maar ook om in beveiligde systemen te komen. Om in systeem te komen doet de hacker zich voor als een bevriend systeem waardoor hij de beveiliging makkelijk kan omzeilen. Bijvoorbeeld als ik in systeem X wil ‘inbreken’ en ik weet dat Y zonder wachtwoord kan inloggen, doe ik me voor als Y om zo binnen te komen. Dit word veel gebruikt bij spam omdat de afzender onbekend en ook onbestaand. De spammer wil zo veel mogelijk mensen iets laten doen, bijvoorbeeld hun website bekijken of iets kopen. Een andere reden is om een bestaand adres van iemand anders dan de verstuurder mee te geven, en zo te hopen dat de persoon iets terugstuurt met vertrouwelijke informatie en informatie waar de hacker iets aan heeft. Sniffing Sniffing is simpel gezegd het afluisteren van een netwerkverbinding. Een gesprek via mail of telefoon wordt afgeluisterd of gelezen door een derde persoon. Dit word veel gebruikt om belangrijke gesprekken af te luisteren en dit gebeurde vorig jaar dan ook een aantal keer. Poortscanner Een poortscan word gebruikt om vast te stellen welke diensten een bepaalde server aanbied en welke niet. Elke server heeft weer een andere poort en ze zijn via al die verschillende poorten wel op dezelfde server bereikbaar. Zo werkt http via poort 80 en je verstuurd je mails via poort 25. Dat is handig te weten omdat als je weet was zo’n server aanbied als je van plan in te breken op zo’n server. Als je met alle poorten kunt verbinden en dus communiceren krijg je die informatie. En zo kun je per stukje informatie uitzoeken of deze kwetsbaar is en bruikbaar. Keylogger Keylogger is een programma dat bijhoudt welke toetsen er worden gebruikt door de gebruiker. Die gegevens worden vervolgen automatisch doorgestuurd naar de hacker. Keylogger word niet door jezelf geïnstalleerd op je computer maar door de hacker. Dit word 17 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo ook gedaan door ouders die in de gaten willen houden wat hun kinderen op de computer doen, het hoeft dus helemaal niet slecht te zijn. Trojaans paard Het trojaans paard komt af van het geschiedenis verhaal met het trojaanse paard. Het betekent dus eigenlijk dat het eruitziet als een goed programma maar dat het eigenlijk alles van je computer kan zien en wijzigen. Een trojaans paard is vrijwel altijd negatief en vrijwel de meest gevaarlijke infectie op je computer. Macrovirussen Macrovirussen zijn virussen die word of excel documenten kunnen veranderen door letters door elkaar te gooien. Dit programma verspreid zich snel en is daarom gevaarlijk. Dus gelukkig hebben we priemgetallen die het deze virussen erg moeilijk maken. Zonder deze beveiliging zou al het internet verkeer zichtbaar zijn voor iedereen en dat kan erge gevolgen hebben. http://mediatechweb.nl/~mt10716/hackenenvirussen/hacken_soorten.html http://pc-en-internet.infonu.nl/anti-virus/3227-virussen-de-verschillende-soorten.html 18 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Logboek Jori Lamboo Ik heb het werkstuk gemaakt samen met Merijn Mekes en Olle Colenbrander Woensdag 13 januari Vandaag zijn we op zoek gegaan naar een onderwerp voor onze praktische opdracht. We hebben een aantal dingen op een rijtje gezet en hier gaan we uit kiezen. We hebben iets over vliegtuigen, mobiele telefonie, kansberekening bij pokeren en/of blackjack, algoritmes en cryptografie gevonden. We willen een van deze onderwerpen gaan kiezen. We gaan morgen uitzoeken welke. ( 1,5 uur ) Donderdag 14 januari Vandaag zijn we op zoek gegaan welk onderwerp ons het best te doen is. Ook kijken we welk onderwerp wij het meest interessant vinden. Dit omdat ik denk hoe interessanter het onderwerp hoe fijner en leuker het maken van het werkstuk wordt. We hebben vandaag mobiele telefonie en algoritmes besloten niet te doen. Dit omdat ik denk dat dat niet geschikte onderwerpen zijn waar we genoeg over kunnen vertellen en omdat ik de andere onderwerpen interessanter vind. (dit hebben we afgesproken via whatsapp omdat ik ziek was vandaag) ( 30 minuten ) Vrijdag 15 januari Vandaag was ik ook ziek, we hebben wel ons onderwerp definitief besloten vandaag. We hebben besloten het te doen over cryptografie. Dit omdat het mij erg interessant lijkt en het ook veel gebruikt wordt bij computers. Ik vind het werken met computers altijd best interessant. Ik maak thuis ook vaak puzzels met codes die gekraakt moeten worden, daarom vind ik geheimtaal best interessant. ( 30 minuten ) Maandag 18 januari Vandaag hebben we ons begin gemaakt van het werkstuk, we hebben de taken verdeeld. Ik doe het over de cryptografie in deze tijd. Dit gaat over hoe websites nu beveiligd worden. Ook ga ik iets vertellen over de verschillende soorten “virussen” op de computer. Merijn verteld wat over priemgetallen van vroeger tot nu. Olle verteld over wat cryptografie is in het algemeen. ( 1,5 uur ) 19 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Dinsdag 19 januari Vandaag hebben we onze hoofdvraag veranderd, eerst was de hoofdvraag: ‘hoe zou de wereld eruitzien zonder cryptografie. Nu is dat: ‘Hoe houd je een geheim geheim? Ook zijn we begonnen na te denken over onze Praktische Opdracht. We gaan zelf proberen een geheimschrift te ontwikkelen. ( 1,5 uur ) Woensdag 20 januari Vandaag ben ik verder gegaan met mijn werkstuk, op school en thuis. Ik ben thuis alvast verder gegaan zodat ik het op tijd af krijg. Ik heb vandaag het onderwerp cryptografie afgemaakt. En morgen begin ik aan de “virussen” die je computer kunnen binnendringen. ( 4,5 uur ) Donderdag 21 januari Vandaag heb ik het onderwerp over virussen afgemaakt. Merijn had daar voor mij alvast een begin van gemaakt en ik heb het afgemaakt. Toen ik klaar was heb ik het naar mezelf toegemailt. We hadden afgesproken het vrijdag allemaal bij elkaar te doen en er een mooi geheel van te maken. ( 2,5 uur ) Vrijdag 22 januari Vandaag hebben we het werkstuk afgemaakt. Ik heb het deel ‘cryptografie in deze tijd’ gemaakt. Alleen de praktische opdracht moet nog af. Die gaan we in het weekend maken. 20 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Logboek Olle Colenbrander Het werkstuk is gemaakt in samenwerking met Merijn Mekes en Jori Lamboo. Woensdag 17 januari Vandaag zijn we begonnen met brainstormen over onderwerpen die ons interessant leken en waar we ons werkstuk over wilde maken. We kwamen op een aantal ideeën: kansberekening bij poker of blackjack, vliegtuigen, cryptografie, algoritmes en telefonie. We hebben over alles iets opgezocht om te kijken wat het interessantste was. Donderdag 14 januari Deze dag zijn we nog verder gaan zoeken naar de onderwerpen en of hier genoeg informatie over was om een werkstuk van te maken. We kwamen erachter dat we algoritme en telefonie toch niet zo een heel goed onderwerp was en die hebben we die van het lijstje geschrapt. Over telefonie was niet echt informatie te vinden die ermee te maken had. Terwijl er voor algoritmes zoveel te vinden was dat het te ingewikkeld werd. Vrijdag 15 januari Deze dag hebben we besloten dat we het over cryptografie gaan doen, dit omdat het bijna overal in zit. Ook was er veel over te vinden op verschillende fronten. Maandag 18 januari Vandaag zijn we begonnen met het PO, ieder met zijn eigen deel. Na een tijdje kwamen we er achter dat de deelvragen niet helemaal klopte en daardoor de rolverdeling ook niet. We hadden 3 vragen die erg op elkaar leken en anders zou er veel overlapping zijn in de deelvragen en er veel dezelfde informatie. Dus hadden we bedacht om alles aan te passen en andere deelvragen te gebruiken. Dinsdag 19 januari Deze dag hebben we bedacht wat we gingen doen als praktische opdracht en dat is een eigen geheimschrift maken en we hebben de hoofdvraag veranderd naar “Hoe houd ik mijn geheim geheim”. Ik ben meer onderzoek gaan doen naar hoe en wat. 21 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Woensdag 20 januari Vandaag zijn we allemaal ver gegaan met het zoeken naar informatie en dit verwerken. Ik ben er achter gekomen dat het redelijk moeilijk is om diepgaande informatie of cryptografie te vinden. De meeste bronnen hebben een algemeen verhaal, maar sommige gaan er wel dieper op in. Donderdag 21 januari Vandaag was de mediatheek bezet dus konden we niet achter een computer. Wij zijn verhuist naar een lokaal met wel een computer en daar hebben we alle informatie achter elkaar gezet tot een geheel. We hebben hier een aantal uitgezocht en zijn we begonnen met onze eigen opdracht. Dat was een geheimschrift bedenken. Vrijdag 22 januari Vandaag hebben we de laatste loodjes gelegd aan het PO, dit was door alles samen te voegen en er een mooi verhaaltje van te maken. 22 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Logboek Merijn Mekes Ik maak mijn werkstuk samen met Jori en Olle en hieronder lees hoe we te werk zijn gegaan. Woensdag 13 januari Vandaag zijn we gaan kijken welke onderwerpen ons interessant leken en waar we ons werkstuk over wilde maken. We kwamen op een aantal ideeën: algoritmes, kansberekening bij poker of blackjack, cryptografie, vliegtuigen en telefonie. We hebben opgezocht of het ons interessant leek en of er voldoende informatie over op te zoeken was. ( 1,5 uur ) Donderdag 14 januari Deze gaan we nog verder gaan zoeken naar de onderwerpen en of hier genoeg informatie over was om een werkstuk van te maken. We kwamen erachter dat we algoritme en telefonie toch niet zo een heel goed onderwerp was en die hebben we die van het lijstje geschrapt. Over telefonie was weinig informatie te vinden die met wiskunde te maken had en algoritmes leek ons erg ingewikkeld en ook niet zo interessant. ( 30 minuten ) Vrijdag 15 januari Vandaag hebben we besloten dat we cryptografie gaan doen omdat ons dat erg interessant leek en er veel informatie over te vinden was. We hebben de taken verdeeld zodat iedereen ongeveer evenveel deed. ( 30 minuten ) Maandag 18 januari Vandaag zijn we begonnen met het maken van het werkstuk, ieder voor zich. Na een tijdje kwamen we er achter dat de deelvragen niet helemaal klopte en daardoor de rolverdeling ook niet. We hadden 3 vragen die erg op elkaar leken en anders zou er veel overlapping zijn in de deelvragen en er veel dezelfde informatie. Dus dat hebben we dat aangepast en we hebben nog wat meer deelvragen erbij bedacht. ( 1,5 uur ) 23 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Dinsdag 19 januari Deze dag hebben we bedacht wat we gingen doen als praktische opdracht en dat is een eigen geheimschrift maken en we hebben de hoofdvraag veranderd naar “Hoe houd ik mijn geheim geheim”. Ik ben verder bezig geweest met mijn deelvraag over de geschiedenis van de priemgetallen. ( 1,5 uur) Woensdag 20 januari Vandaag zijn we alle drie druk bezig geweest met ons deel van het werkstuk en mijn deelvraag heb ik afgemaakt. Deze les heb ik echt hard gewerkt en hebben we met z’n drieën flinke stappen vooruit gemaakt met het werkstuk. Ook ben ik bezig geweest met het geheimschrift en ben ik hier al over nagedacht, hoe het er ongeveer uit moet zien en ben ik gaan brainstormen daarover. ( 2,5 uur ) Donderdag 21 januari Vandaag was de mediatheek bezet dus konden we niet achter een computer. Wij zijn verhuist naar een lokaal met wel een computer en daar hebben we alle informatie achter elkaar gezet tot een geheel. Ik ben bezig geweest met het geheimschrift en heb dit op het bord getekend en hebben we nagedacht over onze presentatie, hoe we dat ongeveer gaan doen. ( 2,5 uur ) Vrijdag 22 januari Ik heb vandaag het logboek bijgewerkt. Ook heb ik het voorwoord/inleiding geschreven. Hierna heb ik het naar Jori gestuurd en heeft hij er een geheel van gemaakt. 24 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo Nawoord Wij vonden het erg leuk om dit werkstuk te maken, dat heeft deels te maken met de keuze en deels met de goedlopende samenwerking. Cryptografie sprak ons allemaal erg aan en we vonden het allemaal wel interessant, waardoor we met meer motivatie te werk konden gaan. De samenwerking verliep erg goed en de taken waren erg goed verdeeld waardoor we altijd wel iets te doen hadden en onze tijd in de mediatheek goed hebben gebruikt. Over het eindresultaat zijn we alle drie zeer tevreden en je ziet er ook wel in terug dat we interessant vinden en er hard aan gewerkt hebben. Vriendelijke groet, Merijn Mekes, Jori Lamboo, Olle Colenbrander. 25 Werkstuk wiskunde Cryptografie Door Olle Colenbrander, Merijn Mekes en Jori Lamboo