H17: Beveiliging en cryptografie Firewall en Virusscanner Toegangsbeveiliging De Caesar-codering De poly-alfabetische substitutiemethode De Vernam-codering DES RSA SSL Digitale handtekening PGP 1 Sondervick College Informatica
Sondervick College Informatica Firewall Een firewall blokkeert internettoegang voor alle programma’s, tenzij je specifiek toestemming geeft. De firewall beschermt tegen aanvallen van hackers. Jij bepaalt welke poorten openstaan, dus welke pakketjes van welke IP-adressen wel zijn toegestaan. Windows (XP en Vista) heeft een ingebouwde firewall. 2 Sondervick College Informatica
Sondervick College Informatica Virusscanner Een virus is een stukje code dat zich aan een programma hecht en zich bij uitvoering verder verspreidt. Een bootsectorvirus is al actief voor dat andere bestanden (bijvoorbeeld je virusscanner) worden opgestart en zijn moeilijk te verwijderen. Virussen zitten tegenwoordig ook veel in script-talen zoals javascript, en in macro's. Een hoax is een "grapje". Meestal gaat het om een mailtje waarin je wordt verzocht om een bepaald bestand van je pc te verwijderen omdat het een virus bevat. En je wordt verzocht om het mailtje naar zoveel mogelijk mensen door te sturen. 3 Sondervick College Informatica
Sondervick College Informatica Spyware Spyware is software dat zich op je computer nestelt zonder dat je het in de gaten hebt. Het stuurt bijv. privégegevens van je pc door naar anderen. Of het zorgt er bijv. voor dat vanuit jouw pc spam wordt verstuurd. Soorten spyware: Adware reclameboodschappen Trojaans paard maakt je pc toegankelijk voor anderen Worm verspreid zichzelf bijv. via adressenboek Browser hijack je startpagina wordt gewijzigd 4 Sondervick College Informatica
Sondervick College Informatica Toegangsbeveiliging Vaak m.b.v. gebruikersnaam en wachtwoord Het kan ook m.b.v. een pasje (smartcard) en inlogcode Steeds vaker m.b.v. fysieke kenmerken (biometrie) irisscan vingerafdruk Bij vingerafdrukken wordt gelet op de minutiae: rimpeleindes en rimpelvertakkingen zijn de voornaamste kenmerken 5 Sondervick College Informatica
Sondervick College Informatica De Caesar-codering Het verschuiven van het alfabet (het is een mono-alfabetische substitutiemethode) Als c het nummer van de gecodeerde letter in het alfabet is, en o is het nummer van de ongecodeerde letter, en er is over k letters verschoven, dan geldt: n = o + k (mod 26) Voorbeeld: Voor: DITIS EENVO ORBEE LDVAN DEBRO NTEKS T Na: GLWLV HHQYR RUEHH OGYDQ GHEUR QWHNV W De sleutel k zoeken door de frequentiedichtheid van de letters van de tekst op te stellen 6 Sondervick College Informatica
De poly-alfabetische substitutiemethode Sleutel: WISKUNDE Voor: DITIS EENVO ORBEE LDVAN DEBRO NTEKS T sleutel: WISKU NDEWI SKUND EWISK UNDEW ISKUN D Na: ZQLSM RHRRW GBVRH PZDSX XREVK VLOEF W Hoe vind je de eerste gecodeerde letter? Zoek de D op in de eerste kolom, de W in de eerste rij, de gecodeerde letter staat op het kruispunt van de bijbehorende rij en kolom (zie volgende dia) 7 Sondervick College Informatica
Decoderen van de poly-alfabetische substitutiemethode De lengte van de sleutel bepalen door de frequentiedichtheid van de samenvallende letters bij verschillende verschuivingen van de tekst op te stellen De sleutel zoeken door de frequentiedichtheid van de letters van delen van de tekst op te stellen Uit gecodeerde tekst en sleutel de oorspronkelijke tekst afleiden Voor: ZQLSM RHRRW GBVRH PZDSX XREVK VLOEF W Na: WZQLS MRHRR WGBVR HPZDS XXREV KVLOE F Na: VKVLO EFWZQ LSMRH RRWGB VRHPZ DSXXR E 8 Sondervick College Informatica
De poly-alfabetische substitutiemethode Sondervick College Informatica Voor: D I T sleutel: W I S Na: Z Q L A B C D E F G H I J K L M N O P Q R S T U V W X Y Z I S W W D D Z Z I Q T L 9 Sondervick College Informatica
De Vernam-codering (one-time-pad) Voor: DITIS EENVO ORBEE LDVAN DEBRO NTEKS T Sleutel: G] 1&Œ‘$`K6ƒ_w…‘^$X™`JZ@CD2ˆ|N‰5~ Na: #4T–B&itJ–$6l-•`t^H<ooJ›?"1+\jm—=‰A~ ASC-code Teken Binair - 32 Voor D 36 0100100 Sleutel G 39 0100111 XOR Na # 3 0000011 10 Sondervick College Informatica
DES (Data Encryption Standard) De DES-methode dateert van 1970 en de verbeterde versies worden nog steeds veel gebruikt. Verbeterde versies: IDEA 128-bits sleutel Triple DES (3DES) voert het DES-algoritme drie keer uit AES husselt de bits anders door elkaar, en de sleutel is 128, 192 of 256 bits lang. 11 Sondervick College Informatica
DES (symmetrische encryptie) Anna schrijft een bericht: Bouke leest het bericht + DES-versleuteling versleuteld bericht + 12 Sondervick College Informatica
Sondervick College Informatica Wiskunde i.v.m. RSA Een priemgetal kun je alleen delen door 1 en het getal zelf, bijv. 73 47 + 59 (mod 26) = 21 + 7 (mod 26) = 28 (mod 26) = 2 47 x 59 (mod 26) = 21 x 7 (mod 26) = 147 (mod 26) = 147 – 5x26 =17 592 (mod 26) = 72 (mod 26) = 49 (mod 26) = 23 De ggd van 796 en 756 volgens het algoritme van Euclides: 796 – 756 = 40, dus ggd(796, 756) = ggd(756, 40) 756 – 18 x 40 = 36, dus ggd(756, 40) = ggd(40, 36) 40 – 36 = 4, dus ggd(40, 36) = ggd(36, 4) 36 – 9 x 4 = 0, dus 36 is deelbaar door 4. Dus de ggd is 4 De functie Φ(n) van Euler geeft het aantal positieve gehele getallen a die kleiner dan n zijn, en waarvoor geldt dat ggd(a, n) = 1 Als p een priemgetal is dan geldt Φ(p)=p-1 Als p en q priemgetallen zijn dan geldt Φ(p x q)=(p-1) x (q-1) De stelling van Euler: Als a geen factor gemeenschappelijk heeft met n = p x q (waarbij p en q priemgetallen zijn) dan geldt: a(p-1) x (q-1)= 1 (mod n) 13 Sondervick College Informatica
Codering m.b.v. een publieke sleutel De RSA-methode dateert van 1978 en is genoemd naar de ontdekkers Rivest, Shamir en Adleman A wil gecodeerde boodschappen ontvangen. Dan moet hij het volgende voorbereidende werk uitvoeren: Zoek 2 grote priemgetallen (circa honderd cijfers per priemgetal) p en q. Bereken N = p.q en X = (p-1)(q-1) (N = modulus) Zoek een (groot) getal S (S < X) waarvoor geldt: de ggd van S en X is 1 (S = coderingsexponent) Bereken D (D<X) zodat D · S = 1 (mod X) (D = decoderingsexponent) De getallen N en S worden publiek gemaakt, terwijl de getallen p, q, X en D geheim worden gehouden. 14 Sondervick College Informatica
Sondervick College Informatica RSA B wil een boodschap x naar A sturen. Hij kent N en S van A (de publieke sleutel). Dan moet hij het volgende doen: De boodschap x omzetten in een groot getal m. Dat gebeurt meestal m.b.v. de ASC-code, van een aantal tekens bijelkaar genomen. Bereken c = mS (mod N) Stuur c naar A. A wil te weten komen wat de boodschap c betekent. Hij doet hiervoor het volgende. Hij berekent m = cD (mod N) 15 Sondervick College Informatica
Sondervick College Informatica SSL SSL staat voor Secure Sockets Layer Het is de meest gebruikte manier voor beveiligde electronische transacties op het internet. De methode gebruikt publieke sleutel cryptografie om beveiligd de sessiesleutel te genereren en uit te wisselen De sessiesleutel (dat is de DES-sleutel) wordt gebruikt voor symmetrische versleuteling (meestal AES) Met een SSL Certificaat kan de publieke sleutel worden opgehaald SSL is te herkennen aan https en het slotje op de statusbalk of in de titelbalk 16 Sondervick College Informatica
Sondervick College Informatica Certificaten Een certificaat is een speciaal tekstbestand dat twee delen bevat Het bevat informatie over de eigenaar, de uitgever van het certificaat, etc. Het bevat de publieke sleutel van de eigenaar. Certification Authorities (CA's) geven voor een zeker bedrag certificaten uit. Een paar CA's: VeriSign, Thawte en CACert 17 Sondervick College Informatica
Sondervick College Informatica SSL: eerste stap Anna ontvangt certificaat van ING Anna wil tele-bankieren bij ING: Veri-sign leest het ver-zoek RSA RSA + + MijnING.nl public key van Verisign MijnING.nl + RSA RSA MijnING.nl versleuteld + private key van Verisign 18 Sondervick College Informatica
Sondervick College Informatica SSL: tweede stap Anna stuurt DES-sleutel naar ING: ING heeft nu de sessie sleu-tel Anna en ING communiceren nu verder m.b.v. symmetrische encryptie DES of opvolger AES + DES-sleutel (sessiesleutel) public key van ING RSA RSA versleutelde sessiesleutel + private key van ING 19 Sondervick College Informatica
Digitale handtekening Een digitale handtekening bevat een controlegetal van het bericht, de zogenaamde hash-waarde. Bij ontvangst wordt opnieuw dezelfde controleberekening gemaakt, waarmee kan worden vastgesteld of het bericht is gewijzigd. Drie redenen waarom een digitale handtekening wordt gebruikt Authenticiteit De ontvanger weet nu dat de zender van het bericht inderdaad de genoemde afzender is. De afzender tekent het bericht met zijn/haar geheime sleutel, de ontvanger verifieert met de publieke sleutel van de afzender. Integriteit De ontvanger weet zeker dat het bericht niet veranderd is tijdens het verzenden. Onweerlegbaarheid De verzender kan niet ontkennen dat hij/zij een bepaald bericht verzonden heeft 20 Sondervick College Informatica
Sondervick College Informatica PGP PGP (pretty good privacy) gebruikt: IDEA, conventioneel 128 bit encryptie MD5-hash met 128 bit hash code RSA, public key encryptie, met 1024 bit key Compressie; helpt ook mee tekst onherkenbaar te maken In plaats van PGP kan ook S/MIME worden gebruikt. 21 Sondervick College Informatica
Anna's PGP boodschap aan Bouke Bouke ontsleutelt het bericht en de hash-code met Anna's public key en de ontsleutelde IDEA-sleutel Einde 22 Sondervick College Informatica