Toepassing van cryptografische
|
|
|
- Bram ten Hart
- 8 jaren geleden
- Aantal bezoeken:
Transcriptie
1 G Toepassing van cryptografische technieken W. S. de Groot RE RA 1 1 Inleiding G Algemeen G Leeswijzer G Basisbegrippen G Cryptografische algoritmen G Hoofdindeling crypto-algoritmen G DES G Inleiding G Werking DES G De DES-modi G Veiligheid DES G De opvolging van DES G RSAG Inleiding G Werking RSAG Veiligheid RSAG Andere asymmetrische algoritmen G W. S. de Groot RE RAis werkzaam als IT-auditor bij de belastingdienst die voor de informatiebeveiliging mede gebruikmaakt van cryptografische technieken. Het voornemen van de Belastingdienst is het gebruik van deze technieken in de komende jaren uit te breiden.
2 G Toepassing van cryptografische technieken 3.4 Hashing algoritmen G Algemeen G De verjaardagsparadox G De DES-hash G De MD-algoritmen G Secure Hashing Algorithm (SHA-1) G RIPEMD-160 G Voorbeelden van gebruik G Beoordelingsaspecten G Voorbeeld 1 G Voorbeeld 2 G Voorbeeld 3 G Voorbeeld 4 G Voorbeeld 5 G Voorbeeld 6 G Voorbeeld 7 G Voorbeeld 8 G Voorbeeld 9 G Sleutelbeheer G Rollenspel sleutelbeheer G Sleutelsystemen G Levenscyclus van een sleutel G Aanmaak van een sleutel (of sleutelpaar) G Distributie van sleutels G Opslag van sleutels G Wisseling van sleutels G Vernietiging van sleutels G Het gebruik van chipkaarten bij sleutelbeheer G Archivering van berichten G Aandachtspunten voor de IT-auditor G De rol van de IT-auditor bij de keuze van een cryptosysteem G Aandachtspunten voor het werkprogramma van de IT-auditor G Aanbevolen literatuur en software G Literatuur G
3 G Inleiding 1.1 Algemeen 1.2 Leeswijzer De term cryptografie roept bij een aantal mensen romantische beelden op van uitgezonden spionnen, verzegelde codeboeken, listig verborgen zendapparatuur en heimelijk gekopieerde stafkaarten. Kortom, een wereld van vaderlandsliefde, geheime missies, list, intrige en verraad. De moderne IT-auditor zal bij de term cryptografie veel minder associaties leggen met dergelijke beelden. Het huidige gebruik van cryptografische technieken (beter: cryptologische technieken) kent een beduidend minder Mata Hari - of 007 -gehalte dan derden vermoeden. Het gebruik van cryptografische technieken kan een aantal kwaliteitswaarborgen bewerkstelligen bij bijvoorbeeld datacommunicatie. Zo kunnen de kwaliteitsaspecten integriteit, exclusiviteit, authenticiteit en onweerlegbaarheid bij berichtuitwisseling door middel van cryptografische technieken worden gewaarborgd, waardoor de belangstelling voor cryptografische technieken de laatste jaren sterk is toegenomen. In dit hoofdstuk wordt een aantal cryptografische grondbeginselen uitgelegd. Daarbij is gekozen voor een pragmatische invalshoek en is getracht de wiskundige onderbouwing van een aantal uitspraken te minimaliseren. Degenen die daar wél in geïnteresseerd zijn, alsmede degenen die zich breder willen oriënteren op cryptografie en haar toepassingen, worden verwezen naar de literatuuropgave aan het einde van dit hoofdstuk. Tevens worden op meerdere plaatsen in de tekst aanwijzingen gegeven, waar de IT-auditor aandacht aan kan schenken bij de beoordeling van het gebruik van cryptografische technieken. In het vervolg van dit hoofdstuk wordt in paragraaf 2 kort een aantal cryptografische basisbegrippen behandeld. Paragraaf 3 bevat een uiteenzetting over de te gebruiken technieken. Er wordt ingegaan op de werking van de Data Encryption Standard (DES) en het crypto-algoritme van Rivest, Shamir and Adleman (RSA). Deze paragraaf wordt afgesloten met een behandeling van hashingalgoritmen. De lezer, die minder is geïnteresseerd in de technische bagage, wordt geadviseerd in ieder geval paragraaf 3.1. door te lezen. In paragraaf 4 wordt de praktische toepassing van cryptografische technieken aan de hand van een aantal voorbeelden toegelicht. Paragraaf 5 richt zich op de organisatorische inbedding van de cryptotechnieken en wel met name op de administratief-organisatorische procedures rondom het sleutelbeheer. Paragraaf 6 geeft een samenvatting van de aandachtspunten waar de IT-auditor, belast met de advisering en de beoordeling van de toepassing van de hier behandelde technieken, rekening mee kan houden.
4 G Toepassing van cryptografische technieken De aandacht wordt erop gevestigd dat dit hoofdstuk is geschreven naar de stand van de techniek van medio Er wordt op gewezen dat door de voortschrijding van de techniek sommige veiligheidsmarges kunnen verlopen. 2 Basisbegrippen Cryptografie vormt een onderdeel van de cryptologie. Cryptologie vormt een samentrekking van de Griekse woorden cruptos (verborgen) en logo (woord) ofwel de leer van het verborgen houden van informatie voor derden. Cryptografie behelst de leer van het vercijferen (coderen). Een tweede onderdeel van de cryptologie is de cryptoanalyse (ook wel: cryptanalyse). Deze discipline houdt zich bezig met methoden en technieken om cijferteksten te breken of te kraken. Onder encryptie wordt het proces van vercijferen verstaan. Dit gebeurt met behulp van een sleutel. De tegenhanger decryptie betreft het proces om de originele tekst (de klare tekst ofwel de boodschap) weer terug te krijgen. Klare tekst is dus de door middel van encryptie te beschermen tekst. De klare tekst wordt ook aangeduid met het begrip boodschap(b). Cijfertekst (C) is de geëncrypte klare tekst. 3 Cryptografische algoritmen Alvorens in te gaan op een tweetal specifieke algoritmen, wordt hieronder eerst een hoofdindeling van crypto-algoritmen gegeven. 3.1 Hoofdindeling crypto-algoritmen De meest gebruikelijke onderverdeling van de crypto-algoritmen is die in de symmetrische en de asymmetrische algoritmen. De verschillen ogen gering, maar de gevolgen zijn fundamenteel verschillend voor de implementatie en het gebruik van het cryptosysteem, waarin de algoritmen zijn verwerkt. Er wordt gesproken van een symmetrisch algoritme als er, zowel bij encryptie als decryptie, dezelfde sleutel wordt gebruikt. Bij een asymmetrisch algoritme daarentegen worden er voor het encryptie- en decryptieproces verschillende sleutels gebruikt. Dit kan als volgt worden weergegeven: Bij toepassing van een asymmetrisch algoritme wordt er op een zeker moment een sleutelpaar gegenereerd door de gebruiker van het cryptosysteem. Deze twee sleutels (s1 en s2) horen bij elkaar. Het enkele bezit van één der sleutels geeft echter niet de mogelijkheid om de bijbehorende sleutel te berekenen.
5 G Encryptie Decryptie Boodschap E Cijfertekst D Boodschap Sleutel(s) = Sleutel(s) Figuur 1. Symmetrisch algoritme Encryptie Decryptie Boodschap E Cijfertekst D Boodschap Sleutel(s1) <> Sleutel(s2) Figuur 2. Asymmetrisch algoritme. De zender van de te versturen informatie behoudt één sleutel (s1 of s2) en geeft de bijbehorende sleutel (s2 of s1) aan de ontvanger van de informatie. Het maakt daarbij dus niet uit of de zender s1 of s2 behoudt en respectievelijk s2 of s1 afgeeft. Beide sleutels hebben dezelfde cryptografische mogelijkheden. Let wel: het is dus niet zo dat het onderscheid in symmetrische en asymmetrische algoritmen iets omtrent de symmetrie van het algoritme zelf aanduidt. Het onderscheid is alleen aanwezig in de al dan niet identieke sleutel(s) die bij de encryptie, dan wel decryptie worden gebruikt. Er zijn meerdere symmetrische en asymmetrische crypto-algoritmen. Aangezien dit hoofdstuk vooral gericht is op de aandachtspunten voor de IT-auditor bij (de beoordeling van) het gebruik van cryptografische technieken, wordt in de volgende paragrafen één symmetrisch en één asymmetrisch algoritme behandeld. Dit betreft respectievelijk de Data Encryption Standard (DES) en het asymmetrische RSA-algoritme, vernoemd naar de ontwerpers Rivest, Shamir en Adleman. DES en RSAkunnen beide beschouwd worden als vertegenwoordigers van geldende industriestandaarden. Men kan zich afvragen waarom er gebruik dient te worden gemaakt van een standaardcryptosysteem. Het gebruik van niet-gestandaardiseerde cryptosystemen (bedrijfseigen of proprietary systems) kan zeker zinvol zijn bij datacommunicatie binnen één en dezelfde organisatie. Voor de communicatie tussen verschillende organisaties is het zinvol een standaardcryptosysteem te hanteren, enerzijds vanwege hun bewezen veiligheid, anderzijds van-
6 G Toepassing van cryptografische technieken wege het open karakter (in de zin van de openbaarheid van het algoritme) van dergelijke standaarden. 3.2 DES Inleiding Werking DES Aan het begin van de zeventiger jaren kreeg het Amerikaanse National Institute for Standards and Technology (NIST), toen nog het National Bureau of Standards (NBS) geheten, de opdracht federale richtlijnen op te stellen voor effectief en efficiënt gebruik van informatietechnologie. Hieruit vloeide een taak voort ten aanzien van informatiebeveiliging. Het NBS schreef daarvoor in mei 1973 een oproep voor een vercijferingsalgoritme uit. De respons was teleurstellend, waarna een tweede oproep in augustus 1974 volgde. Van de inzendingen van deze tweede oproep bleek één inzending aan de gestelde eisen te voldoen: het door IBM ontwikkelde Lucifersysteem. Een aangepaste versie van dit systeem werd in 1977 als een federale standaard geaccepteerd onder de naam Data Encryption Standard (DES). Het algoritme is later tevens tot standaard verheven door het American National Standards Institute (ANSI) onder de naam Data Encryption Algorithm (DEA). Zoals ook in de volgende paragraaf wordt aangetoond, is het DES-algoritme openbaar. Deze openbaarheid van DES gold vanaf het eerste moment. De ontwerpcriteria van DES zijn echter pas in de jaren negentig gepubliceerd. Inmiddels heeft het NIST op 12 september 1997 een nieuwe oproep gedaan voor een symmetrisch crypto-algoritme, de Advanced Encryption Standard (AES). Zie verder paragraaf De Data Encryption Standard (DES) is een blokvercijferingsalgoritme. Dit betekent dat de te vercijferen boodschap wordt opgesplitst in blokken (bij DES ieder 64 bits groot) die achtereenvolgens worden vercijferd. Het maakt daarbij niet meer uit of de boodschap een tekstbestand, een programma, of zelfs gedigitaliseerd beeld of geluid is. De enige te stellen eis betreft het in digitale vorm voorhanden zijn van de boodschap. De sleutel, die bij de vercijfering wordt gehanteerd, is ook 64 bits lang. Van deze sleutel worden echter slechts 56 bits gebruikt; de overige 8 bits zijn pariteitsbits. Het aantal mogelijke sleutels is dus 2 56, ofwel 7, De oorspronkelijke Lucifervariant van DES kende overigens een blok- en sleutellengte van 128 bits. Het vercijferen van een invoerblok gaat in 16 ronden. Bij iedere ronde wordt gebruikgemaakt van een, van de 64-bit sleutel afgeleide, subsleutel met een lengte van 48 bits. De sterkte van een crypto-algoritme wordt wel aangegeven met de term lawine-effect (avalanche). Dit is de maat voor het aantal bits dat wijzigt in het uitvoerblok na één versleutelronde als er in het inputblok één bit wordt gewijzigd. Men spreekt van een ideaal lawine-effect als de helft van het aantal bits in het uitvoerblok na één ronde is gewijzigd, nadat er in het invoerblok één bit is veranderd. DES kent een sterk lawine-effect. In algemene zin dient de IT-auditor het lawine-effect van het te beoordelen algoritme te kennen.
7 G In figuur 3 op de volgende pagina wordt het principeschema van DES weergegeven Invoer (64 bit) Permutatie Linkerblok (32 bits) Rechterblok (32 bits) s1 t/m s16 Herhaling 16 keer + F Voormalig rechterblok Vercijferd linkerblok Permutatie Uitvoer (64 bit) Figuur 3. Het DES-principeschema. Op het invoerblok van 64 bits wordt eerst een permutatie uitgevoerd; een omwisseling van bits volgens een vast patroon. Vervolgens wordt het 64-bit blok gesplitst in twee 32-bit blokken. In ieder van de 16 ronden wordt het linkerblok gexored met de uitkomst van de cijferfunctie F. Voor deze cijferfunctie wordt het rechterblok van 32 bits als invoer gebruikt, alsmede de desbetreffende subsleutel. Vervolgens worden het linker- en rechterblok verwisseld voor de volgende van de 16 ronden. Iedere blokhelft wordt dus acht keer vercijferd. De XOR-functie zelf wordt in onderstaande tabel aangegeven. Deze functie kan gemakshalve worden voorgesteld als een binaire optelling, waarbij de eventuele carry s buiten beschouwing worden gelaten. XOR Na 16 ronden worden de twee 32-bit blokken weer samengevoegd tot één 64-bit blok; er vindt weer een permutatie plaats
8 G Toepassing van cryptografische technieken (de inverse van de oorspronkelijke permutatie aan het begin van de 16 vercijferronden). Aldus ontstaat er een 64-bit uitvoerblok. In het DES-schema is een zogenaamd Feistel-netwerk te herkennen. Dit komt in veel symmetrische crypto-algoritmen voor. De structuur hiervan is als volgt: linker invoerblok rechter invoerblok deelsleutel F bijv. XOR voormalig rechterblok voormalig linkerblok Figuur 4. Een Feistel-netwerk. Bij een Feistel-netwerk wordt het invoerblok gesplitst in een linker- en een rechterblok. Eén van de blokken doorloopt de cryptofunctie F. Daarbij wordt per ronde een (andere) deelsleutel gebruikt. Het resultaat hiervan wordt bijvoorbeeld gexored met het rechterblok. DES gebruikt de XOR-functie, maar er zijn ook andere mogelijkheden. Vervolgens worden de twee blokken verwisseld om de volgende versleutelronde in te gaan. Terug naar DES: de cijferfunctie F van DES wordt nader beschouwd. Zie figuur 5. Het rechterblok (32 bits) wordt volgens een vaste systematiek geëxpandeerd tot 48 bits. Er worden dus volgens een vast patroon 16 bits tussen- of bijgevoegd. Het resultaat wordt gexo- Red met de voor de desbetreffende vercijferronde valide subsleutel. Het resultaat (48 bits) wordt verdeeld in acht blokjes van zes bits die als invoer dienen voor evenzovele substitutieboxen.
9 G rechterbl. 32 bits E Expansie 48 bits subsleutel 48 bits + XOR-functie S1 S2 S3 S4 S5 S6 S7 S8 substitutieboxen 8 maal 4 bits output P permutatie uitvoer (32 bits) Figuur 5. De cijferfunctie F van DES. Per substitutiebox worden de zes invoerbits vervangen (gesubstitueerd) door vier uitvoerbits. Deze vier uitvoerbits van alle acht substitutieboxen worden vervolgens samengevoegd tot 32 uitvoerbits, die na wederom een permutatie, de uitvoer van de cijferfunctie F vormen. Het is deze uitvoer die weer met het 32-bit linkerblok gexored wordt. Uit het voorgaande mag niet de indruk worden gewekt dat de werking van de substitutieboxen een complexe zaak is: feitelijk is hier sprake van een tabel, met 2 6 = 64 waarden. Hierbij geven het eerste en het laatste bit van het invoerblokje de rij en de overige vier bits de kolom aan, waar op het snijpunt de substitutiewaarde van vier bits wordt gevonden. In figuur 6 wordt een voorbeeld gegeven van de werking van een substitutiebox: in dit geval substitutiebox 6. De reden waarom hier de werking van DES gedetailleerd wordt beschreven, is niet alleen om duidelijk te maken hoe DES werkt. Het dient tevens om aan te tonen dat er op dit vlak geen geheimen aan DES kleven: de werking van DES, haar cijferfunctie en de inhoud van alle substitutieboxen zijn in de literatuur beschreven.
10 G Toepassing van cryptografische technieken Invoer Uitvoer Figuur 6. Substitutiebox 6. Het decryptieproces is identiek aan het encryptieproces, met dien verstande dat daar waar in het encryptieproces de subsleutels in de volgorde 1 tot en met 16 worden gebruikt, dit bij het decryptieproces in omgekeerde volgorde (16 t/m 1) wordt gedaan. DES kent een viertal zwakke sleutels en een zestal semi-zwakke sleutelparen. Een zwakke DES-sleutel levert na tweevoudige vercijfering dus na tweevoudige encryptie, wederom de boodschap in klare tekst op. Dit betekent dat bij een zwakke sleutel de afgeleide subsleutel s1 gelijk is aan s16, s2 aan s15, etc. Een semi-zwak sleutelpaar is een sleutelpaar waarbij na encryptie met de ene sleutel en encryptie met de tweede sleutel wederom de klare tekst resulteert. De zwakke en semi-zwakke sleutels zijn bekend. Bij iedere hard- of software-implementatie van DES dient er te worden getoetst of er voor het cryptoproces geen zwakke of semi-zwakke sleutel wordt gehanteerd. Hier ligt een aandachtspunt voor de IT-auditor De DES-modi DES kent een aantal varianten. Er zijn meerdere mogelijkheden in het aantal vercijferronden, de lengte van de sleutel en de wijze van het gebruik: de DES-modi. DES kan in een viertal modi worden toegepast, te weten: de Electronic Codebook Mode (ECB-mode); de Cipher Block Chaining Mode (CBC-mode); de k-bit Cipher Feedback Mode (CFB-mode); de k-bit Output Feedback Mode (OFB-mode). Uitsluitend de eerste twee modi zullen hierna worden behandeld. Daarnaast zal in paragraaf stil worden gestaan bij het
11 G principe van one-way DES-hashtotalen, toegepast in de CBCmodus. Electronic Codebook Mode (ECB-mode) De ECB-modus is de meest eenvoudige werkingswijze van DES B1 B2 B3 s DES s DES s DES C1 C2 C3 Figuur 7. De ECB-modus van DES. De boodschap wordt in 64-bit blokken opgedeeld, B1, B2, enzovoorts. Deze worden vercijferd met behulp van de DES-sleutel s. Het resultaat is een cijfertekst C1, C2, etc. Het voordeel van dit mechanisme is de geringe foutpropagatie: een omgevallen bitje in één van de cijfertekstblokken leidt in principe bij het decrypten tot slechts een gelimiteerde schade ter grootte van het desbetreffende 64-bit boodschapblok. Het systeem kent echter ook een tweetal nadelen, te weten: het encryptieproces is slechts afhankelijk van één sleutel. Raakt deze sleutel bekend, dan zijn alle cijferteksten te decrypten; gelijke delen van de boodschap kunnen tot gelijke delen cijfertekst leiden. Dit betekent dat er in de cijfertekst terugkerende patronen kunnen voorkomen, een gegeven dat cryptoanalisten houvast geeft. Een oplossing voor deze nadelen is te vinden in het gebruik van DES in de CBC-modus. Cipher Block Chaining mode (CBC-mode) In de CBC-modus van DES wordt er naast een DES-sleutel gebruikgemaakt van een initiële vector (IV). Deze wordt, voordat de daadwerkelijke vercijfering plaatsvindt, gexored met het eerste 64-bit boodschapblok. De resulterende cijfertekst vervangt vervolgens de initiële vector, en wordt gexored met het tweede 64-bit boodschapblok, enzovoorts. Het gevolg is dus dat de ontstane cijfertekst wordt gebruikt bij het vercijferen van het volgende 64-bitblok. Dit mechanisme kan echter tot een grote foutpropagatie leiden.
12 G Toepassing van cryptografische technieken IV B1 B2 B s DES s DES s DES C1 C2 C3 Figuur 8. De CBC-modus van DES Veiligheid DES Van meet af aan is er discussie geweest omtrent de veiligheid van DES. Aanvankelijk gebeurde dit, omdat men daar de ontwerpcriteria eerst niet waren gepubliceerd vreesde voor een achterdeur in het algoritme. Dit zou ten behoeve van bepaalde nationale diensten opgenomen kunnen zijn. Na meer dan twintig jaar zoeken is er echter nimmer een dergelijke achterdeur aangetoond. Verder bestaat er twijfel rond de veiligheid van DES in verband met de relatief korte sleutellengte (56 bits). Er zijn in de literatuur specifieke machines beschreven die zich richten op het door middel van uitputtend sleutelonderzoek breken van DES-cijferteksten. Dergelijke machines zijn ook daadwerkelijk gebouwd. De relatief korte sleutellengte is de voornaamste reden waarom het NIST haar oproep voor de Advanced Encryption Standard (AES) heeft doen uitgaan. Bij dit alles dient de IT-auditor zich wel bewust te zijn van de noodzaak van een risicoafweging. In het normale zakelijke verkeer is het vereiste niveau van de informatiebeveiliging niet steeds even hoog als voor staatsgeheimen van een land in oorlog. Een gebruikswijze van DES die vooralsnog wél als veilig wordt beschouwd, is de toepassing van het zogenaamde Triple-DES. Triple-DES kan bijvoorbeeld worden toegepast voor het veilig opslaan van DES- en/of RSA-werksleutels. Triple-DES wordt onder meer in de bancaire wereld veelvuldig gebruikt. Van Triple-DES zijn twee varianten te onderscheiden, een tweesleutel Triple-DES en een driesleutel Triple-DES. Bij het tweesleutel Triple-DES wordt de boodschap eerst geëncrypt met
13 G sleutel 1, vervolgens gedecrypt met sleutel 2 en daarna nogmaals geëncrypt met sleutel 1 (E s1 D s2 E s1 ). Bij het driesleutel Triple-DES hanteert men bij de derde keer dat DES wordt gebruikt een derde sleutel (E s1 D s2 E s3 ). Een driesleutel Triple-DES is aanmerkelijk sterker dan een tweesleutel Triple-DES. Wel moet de IT-auditor bij beide verschijningsvormen van Triple-DES er op letten dat de drie versleutelronden volledig na elkaar worden uitgevoerd. Een toepassing van Triple-DES, waarbij de drie versleutelronden in elkaar vervlochten werden toegepast, bleek zwakheden te vertonen. De sterkte van deze laatste variant bleek vrijwel overeen te komen met een single-des toepassing De opvolging van DES Zoals in paragraaf al is aangegeven, heeft het National Institute for Standards and Technology (NIST) in september 1997 een oproep gedaan voor de Advanced Encryption Standard (AES). Aan de AES worden de volgende eisen gesteld: het moet een symmetrisch crypto-algoritme betreffen; het moet een blokvercijferingsalgoritme (en dus niet een random getallengenerator) betreffen; de sleutellengte moet 128, 196 of 256 bit lang zijn, terwijl het invoerblok en het uitvoerblok 128 bit lang moeten zijn; en heel belangrijk: het gebruik moet vrij zijn van royalties en dergelijke. In augustus 1998 zijn er vijftien AES-inzendingen bekendgemaakt. Het betreft: CAST-256 CRYPTON DEAL DFC E2 FROG HPC LOKI97 MAGENTA MARS RC6 RIJNDAEL SAFER+ SERPENT TWOFISH. De meeste van deze algoritmen betreffen Feistel-netwerken. In augustus 2000 wordt de winnaar bekendgemaakt. Meer informatie is verkrijgbaar op RSA Inleiding In 1976 publiceerden Diffie en Helman het artikel New directions in cryptography. In dit stuk werden de basisprincipes voor een 2-sleutel cryptosysteem beschreven. Diffie en Helman spra-
14 G Toepassing van cryptografische technieken ken overigens van een public-key-system, omdat één van de twee sleutels geheim blijft en de andere openbaar kan worden gemaakt. In 1978 kwamen Rivest, Shamir en Adleman met de eerste concrete invulling voor een asymmetrisch cryptosysteem. Dit algoritme is gepatenteerd in de Verenigde Staten. De exclusieve licentierechten van deze patenten worden gehouden bij Public Key Partners (PKP) of Sunnyvale in California. In Europa is de octrooiaanvraag door de eerdere publicatie van Diffie en Helman afgewezen. Het DES-algoritme is overigens niet gepatenteerd, niet in de Verenigde Staten en ook niet daarbuiten. Daarnaast is het gebruik van het DES- en RSA-algoritme onderhevig aan wettelijke exportbepalingen: op de hardware- en softwareproducten, waarin de algoritmes zijn verwerkt, rust in principe een exportverbod. De twee belangrijkste wetten op dit gebied zijn de Export Administration en de Arms Export Control Act. De National Security Agency (NSA) dient in principe positief te adviseren over het afgeven van een exportlicentie. De Amerikaanse overheid heeft echter in september 1998 versoepelingen van deze regelgeving aangekondigd. Overigens is er buiten de Verenigde Staten een aantal leveranciers, die het DES- en RSA-algoritme zelf in hun hard- en/of software hebben geïmplementeerd Werking RSA De werking van het RSA-algoritme berust op een wiskundig principe. Alvorens daar op ingegaan kan worden, dient een tweetal wiskundige begrippen kort te worden belicht: de priemgetallen en modulobewerkingen. Priemgetallen: priemgetallen zijn gehele getallen, die uitsluitend deelbaar zijn door het getal 1 en het priemgetal zelf. Voorbeelden van priemgetallen zijn: 1, 2, 3, 5, 7, 11, 13, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, enzovoorts. Modulobewerkingen: Als wordt geschreven: a = b mod n(uit te spreken als: a is gelijk aan b modulo n), wordt bedoeld dat a gelijk is aan b op een veelvoud van n na. Een andere schrijfwijze zou dus zijn: a=b+k n. Bijvoorbeeld: 26 = 2 mod 4 want 26 = 2 + k 4 bij k = 6. De werking van het RSA-algoritme verloopt in enkele stappen: kies twee grote priemgetallen, bijvoorbeeld x en y; bepaal het product hiervan: z = x y; kies een willekeurig getal a dat voldoet aan de volgende conditie: 3<a<(x-1) (y-1), waarbij tevens geldt dat het getal a een relatieve priem is, ten opzichte van het product (x-1) (y-1). Dit laatste betekent dat de grootste gemene deler van a en (x-1) (y-1) het getal 1 is; bereken het getal b uit de formule: a b = 1 mod (x-1) (y-1). Bij RSAworden de geheime en de openbare sleutels vervolgens gevormd door de combinaties (a,z) en (b,z) of andersom (b,z) en
15 G (a,z). De kern van het RSA-algoritme berust op de onmogelijkheid om b te berekenen uit alleen de getallen a en z of a uit de getallen b en z. Zowel de encryptie als de decryptie vindt plaats via machtsverheffen. Als een karakter uit de boodschap in klare taal met de letter B wordt voorgesteld, dan vindt de encryptie plaats door C = B a mod z. De decryptie vindt plaats via de formule: B=C b mod z. Een verduidelijkend voorbeeld is hier wel op zijn plaats. Allereerst worden de geheime en openbare RSA-sleutels berekend uit de vier hierboven weergegeven stappen: kies twee grote priemgetallen. Voor de eenvoud van dit getallenvoorbeeld worden twee kleine priemgetallen genomen: 11 en 13; bereken het product: z=x y, z is dus ofwel 143. Voor het gemak wordt ook meteen het product berekend (x-1) (y- 1), dus = 120; kies een getal a waarbij geldt dat 3 bereken b uit de formule: a b = 1 mod (x-1) (y-1) ofwel 7b = 1 mod 120. Hieruit volgt dat b = 143, want = , bijk=6. Stel dat een klare tekst moet worden geëncrypt. Deze tekst luidt: HELP. Deze tekst kan decimaal worden voorgesteld als De encryptie vindt dan plaats via de formule:c=b a mod z, ofwelc=b 7 mod 143. De code luidt dan: De ontvanger kan deze boodschap decrypten met behulp van de formuleb=c b mod z, ofwel B=C 103 mod 143. Het rekenwerk lijkt erg complex. Alhoewel er enerzijds een aantal wiskundige technieken gebruikt kan worden om het rekenwerk te vereenvoudigen en anderzijds dit rekenwerk door de computer zal worden uitgevoerd, is dit toch de reden waarom RSAin de praktijk relatief traag is Veiligheid RSA Het RSA-algoritme wordt tot op heden betrouwbaar geacht. Wel wordt internationaal nog steeds gezocht naar grote priemgetallen, het startpunt voor de berekening van een RSA-sleutelpaar. Dit verklaart de jacht op de grote priemgetallen waar onderzoekscentra regelmatig mee schermen. Zo werd in februari 1999 nog bekendgemaakt dat een getal van 140 cijfers was ontbonden in twee priemgetallen van ieder 70 cijfers. Een dergelijk getal van 140 cijfers, ook wel aangeduid als RSA-140, komt ongeveer overeen met een RSA-sleutel van 465 bits. Dit betekent dat in de praktijk een RSA-systeem, waarbij sleutels van 465 bits of minder worden toegepast, niet gebruikt kan worden indien men een voldoende niveau van beveiliging wenst te realiseren. Alhoewel er absoluut geen zekerheden zijn te geven omtrent de
16 G Toepassing van cryptografische technieken toekomstvastheid van RSA-sleutels kan uitsluitend ter illustratie de volgende tabel dienen: RSA-sleutellengte in bits Verwachte veiligheid van het systeem in jaren tot tot tot 9 Door de krachtiger hard- en software nemen de mogelijkheden nog steeds toe om grote getallen te ontleden in priemgetallen. Daarnaast wordt voor dergelijke enorme rekenklussen regelmatig een beroep gedaan op de grote aantallen PC s die op het Internet zijn aangesloten. De techniek om het rekenprobleem op te splitsen in te distribueren delen schrijdt gestaag voort. Uiteraard dient er altijd op basis van een risicoanalyse een balans te worden gevonden tussen de waarde van datgene wat men wenst te beschermen en de middelen die daarvoor op doelmatige wijze dienen te worden aangewend Andere asymmetrische algoritmen Naast RSAbestaat er een aantal andere asymmetrische cryptoalgoritmen, zoals ElGamal, Guillou-Quisquartier, Rabin, DSA, enzovoorts. RSAis vermoedelijk veruit het meest in de praktijk toegepaste systeem. Wel worden andere asymmetrische algoritmen in de praktijk gebruikt in sleuteldistributiemechanismen. Een veelbelovend nieuw asymmetrisch cryptosysteem betreft de zogenaamde Elliptische Curven. De achterliggende theorie is relatief complex. Alhoewel de mathematische achtergrond van de elliptische curven reeds lang bekend was, is de belangstelling ervoor pas de afgelopen jaren toegenomen, mede door de noodzaak steeds langere sleutellengtes te hanteren bij bijvoorbeeld RSAteneinde een voldoende niveau van beveiliging te realiseren. Ondanks de mathematische complexiteit is het rekenwerk bij toepassing van elliptische curven veel sneller uit te voeren. Ook zijn de benodigde sleutellengtes veel korter dan bij toepassing van RSA(bij een gelijkwaardig niveau van beveiliging) en neemt dit voordeel alleen maar toe bij langere sleutellengtes. In onderstaande tabel wordt dit toegelicht: RSA-sleutellengte EC-sleutellengte bij vergelijkbaar niveau van beveiliging Verhouding , , ,4
17 G Omtrent elliptische curven is veel literatuur verschenen. Praktijktoepassingen worden de komende jaren in toenemende mate verwacht. 3.4 Hashing algoritmen Algemeen De verjaardagsparadox Eén van de meest gebruikte toepassingen van cryptografie is vermoedelijk, naast berichtencryptie, het berekenen van hashtotalen. Een hashtotaal wordt berekend met als doelstelling de integriteit van een bericht te waarborgen. Onder integriteit wordt de betrouwbaarheid verstaan. Het begrip integriteit valt onder te verdelen in de volledigheid, de juistheid en de tijdigheid van bijvoorbeeld berichtuitwisseling. Maatregelen die de integriteit waarborgen, zijn gericht op het voorkomen van onbevoegd muteren of verminken van gegevensstromen, dan wel het tijdig detecteren hiervan. Een hashtotaal bestaat uit een aantal bits (het aantal ligt veelal tussen 32 en 256), dat als het ware een vingerafdruk vormt van een boodschap (een tekst- of een ander bestand), onafhankelijk van de lengte van de originele boodschap. Een kenmerkende eigenschap van een goed hashing algoritme betreft de onmogelijkheid wijzigingen in de originele boodschap aan te brengen zonder dat daarbij het hashtotaal verandert. Bedenk hierbij dat kwaadwillenden ernaar kunnen streven inhoudelijke wijzigingen in de boodschap te compenseren met wijzigingen die niet direct opvallen. Zo kunnen door bijvoorbeeld extra spaties aan te brengen inhoudelijke wijzigingen gecompenseerd worden, waarbij het hashtotaal dus ongewijzigd blijft ten opzichte van het originele hashtotaal. Dit stelt enerzijds eisen aan de kwaliteit van het hashing algoritme dat collission-free moet werken. Anderzijds stelt dit eisen aan de lengte van het hashtotaal. Onderstaand wordt eerst aan de hand van de zogenaamde verjaardagsparadox inzicht gegeven in de minimaal noodzakelijke lengte van hashtotalen. Daarna volgen enkele voorbeelden van hashing algoritmen, waarbij er ook enkele algoritmen worden genoemd waarvan inmiddels bekend is dat ze niet collision-free zijn. Een hashtotaal met een lengte van 32 bits levert ,3 miljard (4, ) mogelijkheden op. Dit lijkt enorm veel, maar is in werkelijkheid niet zoveel als op het eerste gezicht gedacht wordt. Dit zal worden toegelicht aan de hand van de verjaardagsparadox. Stel dat een aantal personen één voor één een kamer binnenloopt. Hoeveel personen moeten dan in de kamer aanwezig zijn om meer dan 50% kans te hebben dat twee personen op dezelfde datum jarig zijn? Het antwoord is verrassend laag: al bij 23 binnengelopen personen bestaat er een kans van meer dan 50% dat twee personen op eenzelfde dag jarig zijn. De kans (K) dat twee personen op eenzelfde dag jarig zijn, valt ook andersom voor te stellen, namelijk de kans dat twee perso-
18 G Toepassing van cryptografische technieken nen niet op eenzelfde dag jarig zijn moet kleiner zijn dan 50% (1- K). De vraag wordt dan: hoeveel personen moeten de kamer binnentreden om de kans dat twee personen niet op eenzelfde dag jarig zijn, kleiner te houden dan 50%? Bij de eerste persoon die binnentreedt, is het simpel: hij mag op 365 dagen van een kalenderjaar jarig zijn. De tweede binnentredende persoon mag echter op slechts 364 dagen jarig zijn om niet op eenzelfde dag jarig te zijn. Dat betekent dat de kans dat ze niet tegelijkertijd jarig zijn 365/ /365 = 0,997 (99,7%) is. Een derde binnentredende persoon mag op slechts 363 van de 365 kalenderdagen jarig zijn om niet tegelijk met één van de twee reeds aanwezigen jarig te zijn. De combinatiekans dat ze niet tegelijkertijd jarig zijn wordt dan 365/ / /365 = 0,992, enzovoorts. In de figuur op de volgende pagina is weergegeven wat er gebeurt met deze combinatiekans als dertig personen één voor één de kamer binnenlopen. Uit de figuur blijkt dat het omslagpunt bij 23 personen ligt. Kans dat twee personen niet op eenzelfde dag jarig zijn 1,000 0,900 0,800 0,700 0,600 0,500 0,400 0,300 0,200 0,100 Verjaardagsparadox , Aantal personen in de kamer Figuur 9. De verjaardagsparadox. De verklaring voor dit fenomeen ligt in het feit dat er eigenlijk niet van 23 personen gesproken mag worden, maar van 253 personenparen. Bij drie personen kunnen er 3 (3-1)/2 = 6 paren gevormd worden; bij vier personen 4 (4-1)/2 = 12 paren; bij 23 personen 23 (23-1)/2 = 253 paren; bij X personen X (X-1)/2 paren. Wat betekent dit nu voor de lengte van het hashtotaal? Stel dat de lengte van het hash Y bits bedraagt. Een (lees: één) tekst levert maximaal 2 Y mogelijke hashcodes op. Bij X teksten ontstaan er echter X (X-1)/2 tekstparen, waarbij de kans dat een tekstpaar een gelijke hashcode oplevert 1 gedeeld door 2 Y bedraagt. Als X (X-1)/2 = 2 Y X (X-1) = 2 Y+1 X 2 -X=2 Y+1 X 2 2 Y+1 X (2 Y+1 ) X 2 Y/2.
19 G Dit betekent dus dat er bij een lengte van de hashcode van 32 bits er geen ,3 miljard (4, ) boodschappen beoordeeld behoeven te worden, maar er slechts ongeveer 2 16, ofwel boodschappen moeten worden onderzocht om twee verschillende boodschappen te vinden die een gelijk hashtotaal opleveren. (Noot: in het hier gekozen voorbeeld is omwille van de eenvoud met lage waarden voor X en Y gewerkt; dit leidt tot een grote relatieve fout in de uitkomst. Bij hogere waarden van X en Y wordt de relatieve fout steeds kleiner.) De volgende gebruiksregel kan worden gehanteerd: Wil men de kans dat een hashtotaal gekraakt wordt kleiner houden dan bijvoorbeeld 1 op de 2 64, dan dient de lengte van het hashtotaal minimaal 2 64 = 128 bits te zijn De DES-hash Het berekenen van een DES-hashtotaal betreft een zogenaamde one-way DES-functie, toegepast in de CBC-modus (zie paragraaf 3.2.3). Deze one-way DES-functie werkt als volgt: na iedere vercijfering van 64 bits wordt de originele 64-bit boodschap gexored met de uitkomst van de vercijfering Boodschap s DES XOR-functie + Cijfertekst Figuur 10. De one-way hashfunctie van DES. Het heeft geen zin meer de ontstane cijfertekst C te decrypten; daarvoor dient eerst (het bitpatroon van) de boodschap te worden afgetrokken van de cijfertekst en de doelstelling van de decryptie was nu juist het verkrijgen van deze boodschap. Om deze reden heet dit een one-way encryption. De berekening van de DES-hash betreft de toepassing van deze one-way DES-functie in de CBC-mode. Daarbij vervangt de ontstane cijfertekst van het eerste 64-bit blok de sleutel bij de ver-
20 G Toepassing van cryptografische technieken cijfering van het tweede 64-bit blok van de boodschap, enzovoorts B1 B2 B3 s DES DES DES C1 C2 C3 Figuur 11. Toepassing van de one-way DES hashfunctie in de CBC-modus. Uitsluitend het laatste blokje cijfertekst van 64 bits geldt als het DES-hashtotaal (of message digest) van de boodschap. Door het lawine-effect van DES zal er een totaal ander DES-hashtotaal ontstaan indien er in de boodschap slechts een bit of byte wordt veranderd. Een aldus berekend DES-hashtotaal van 64 bits kan dus niet worden gedecrypt. Het vaststellen van de integriteit van de boodschap gebeurt door de herberekening van een DES-hashtotaal en verificatie hiervan met het oorspronkelijke DES-hashtotaal. De uniciteit (beter Nederlands voor de mate van uniekheid ) van het DES-hashtotaal dient uiteraard vast te staan. Daarom dient het DES-hashtotaal niet te kort te zijn (64 bits, maar liever 128 of 256 bits). In dat laatste geval worden de laatste twee of vier 64- bit blokjes bewaard als de DES-hash De MD-algoritmen In tegenstelling tot de hiervoor beschreven DES-hash zijn er ook algoritmen ontwikkeld die zich uitsluitend op de hashingfunctie richten. Een aantal daarvan zijn ontwikkeld door Ron Rivest: de zogenaamde MD-algoritmen (MD is Message Digest): van het MD-1-algoritme is niets bekend. Misschien heeft het nooit bestaan, misschien is het al direct na de ontwikkeling onvoldoende gebleken om als praktisch toepasbaar algoritme te gelden; van MD-2 is meer bekend. Het MD-2-algoritme is een oneway hashalgoritme met een lengte van 128 bits. Het betreft een vrij simpel algoritme, waarbij feitelijk alleen XOR- en mo-
21 G dulo-256 berekeningen worden gebruikt. Er zijn zwakheden in het algoritme ontdekt. Daarnaast is de traagheid van het algoritme een bezwaar; het MD-3-algoritme heeft het nimmer verder gehaald dan de ontwerptafel van de ontwikkelaar. Al vlot na de realisatie bleek het algoritme niet collision-free te zijn. Het algoritme is overigens wel gepubliceerd; ook het in 1990 ontwikkelde MD-4-algoritme betreft een 128 bit one-way hashalgoritme. Als ontwerpcriteria golden veiligheid, snelheid, eenvoud en de toepasbaarheid op PC-processoren (Intel). Het algoritme werkt intern met 16 blokken van 32 bits, die steeds een drietal verschillende functies doorlopen. Nadat van verschillende kanten succesvolle aanvallen op ofwel de eerste twee functies, ofwel de laatste twee functies waren uitgevoerd, besloot de ontwerper, Ron Rivest, MD-4 te versterken. Dit leidde uiteindelijk tot MD-5. Ook andere algoritme-ontwikkelaars hebben MD-4 als basisconcept gehanteerd; zie de volgende twee paragrafen. In 1998 werd de ondeugdelijkheid van MD-4 aangetoond door de Duitser Hans Dobbertin. Hij toonde niet alleen aan dat het mogelijk was binnen enkele seconden twee boodschappen te genereren die een gelijke MD-4-hashcode opleverden, maar ook dat boodschappen inhoudelijk aangepast konden worden zonder dat het hashresultaat veranderde. Tot slot werd het one-way karakter van MD-4 ter discussie gesteld, evenals een 256-bit variant van MD-4; de belangrijkste verbetering van het MD-5-algoritme ten opzichte van MD-4 betreft het toevoegen van een vierde functie voor ieder 32-bit blok. Toch is de basisgedachte van MD-4 redelijk onveranderd gebleven in MD-5. Ook hier worden iedere ronde 16 blokken van 32 bits aangeboden aan een viertal (zoals gezegd bij MD-4 een drietal) nonlineaire functies. Deze nonlineaire functies hanteren uitsluitend XOR-, AND-, OR- en NOT-bewerkingen. Het hashresultaat van MD-5 kent, net als MD-4, een lengte van 128 bits. Hans Dobbertin, die de ondeugdelijkheid van MD-4 aantoonde, stelt dat verfijning van de voor MD-4 gehanteerde methode ook effectief zal blijken voor MD-5. Alhoewel tot op heden de ondeugdelijkheid van MD-5 niet onomstotelijk is aangetoond, adviseert ook de ontwerper van MD-5 een terughoudend gebruik van het algoritme in applicaties die toekomstvast moeten zijn. Uit het voorgaande zou de conclusie kunnen worden getrokken dat de MD-algoritmen het resultaat zijn van slecht ontwerpwerk. Deze conclusie is niet terecht. De ontwikkeling van de MD-algoritmen hebben cryptologen veel inzicht gegeven in de sterktes en zwakheden van hashingalgoritmen. Daarnaast heeft de ontwikkeling van met name MD-4 geleid tot enkele sterke hashingalgoritmen, die in de volgende twee paragrafen worden besproken.
22 G Toepassing van cryptografische technieken Secure Hashing Algorithm (SHA-1) RIPEMD-160 De Secure Hashing Algorithm betreft een algoritme dat wordt toegepast in de Secure Hash Standard (SHS). SHA-1 betreft een verbeterde versie van SHAen is door het National Institute for Standards and Technology (NIST) tezamen met het National Security Agency (NSA) ontwikkeld voor toepassing in zogenaamde digitale handtekeningen (zie paragraaf 4, voorbeeld 6). Op dit moment vormt SHA-1 vermoedelijk de internationale standaard op hashfunctiegebied. Het algoritme wordt geacht een voldoende niveau van beveiliging te kunnen waarborgen. De standaardlengte van het hashtotaal is 160 bits. Evenals bij MD-4 en MD-5 wordt er gewerkt met invoerblokken van 512 bits. SHAen SHA-1 kunnen dan ook als verbeterde versies van MD-5 worden beschouwd. Door de langere hashlengte is het algoritme aanmerkelijk veiliger dan MD-4 of MD-5 (zie ook paragraaf inzake de verjaardagsparadox). Alhoewel SHA min of meer de internationale standaard is, is RI- PEMD-160 vermoedelijk een iets sterker hashalgoritme. RI- PEMD-160 is een verbeterde versie van RIPE-MD. Dit laatste algoritme is een Message Digest (MD) product van een onderzoek in opdracht van de Europese Gemeenschap, het zogenaamde RACE-project (Research and Development in Advanced Communication Technologies in Europe) Integrity Primitives Evaluation ( ). Bij de ontwikkeling van RIPEMD-160 is sterk gekeken naar de sterke en zwakke punten van MD-4, MD-5 en RIPE-MD. Ook RIPEMD-160 werkt met invoerblokken van 512 bits. De lengte van het hashresultaat is, net als bij SHA, 160 bits lang. Uitsluitend ter illustratie is op de volgende pagina het cryptoschema weergegeven. Het 512-bit invoerblok wordt gesplitst in twee delen (de linker en rechter message words), die simultaan worden verwerkt. Het uitvoerblok (de updated chaining words) dient als input (chaining words) voor een volgende versleutelronde. In de vijf functies vinden 16 bewerkingen plaats. Het uitvoerresultaat is dus het product van 160 (5 2 16) bewerkingen. Dit is aanmerkelijk meer dan de eerder behandelde hashfuncties. Een vergelijking tussen de laatstbehandelde hashingalgoritmen wordt hieronder weergegeven: Algoritme Aantal functies Bewerkingen per functie Totaal aantal bewerkingen MD MD SHA RIPEMD maal Alhoewel er bij RIPEMD-160 geen sleutels worden gehanteerd, kan het algoritme toch toegepast worden in Message Authenti-
23 G Chaining words XOR OR-XOR2 M M e s Mux1 Mux2 e s s s a a g e OR-XOR1 OR-XOR1 g e w w o o r d Mux2 Mux1 r d s s OR-XOR2 XOR Updated chaining words Figuur 12. Het RIPEMD-160 cryptoschema.
24 G Toepassing van cryptografische technieken cation Codes (MAC s). Voor de desbetreffende standaarden wordt verwezen naar ISO/IEC (CD ): MDx-MAC en HMAC. 4 Voorbeelden van gebruik Na de theoretische grondslagen van paragraaf 3 wordt in deze paragraaf door middel van een aantal voorbeelden een praktische invulling van het gebruik van cryptografische technieken weergegeven. De voorbeelden richten zich steeds op de beveiliging van datacommunicatie tussen twee participanten namelijk Aen B. 4.1 Beoordelingsaspecten Bij de behandeling van de voorbeelden zal de uitwerking van het behandelde cryptosysteem steeds tegen een viertal kwaliteitsaspecten worden aangehouden. Dit zijn: integriteit exclusiviteit authenticiteit onweerlegbaarheid. Onder integriteit wordt, zoals reeds eerder opgemerkt, de betrouwbaarheid verstaan. Het begrip integriteit valt onder te verdelen in de volledigheid, de juistheid en de tijdigheid van de datacommunicatie. Maatregelen die de integriteit waarborgen, zijn gericht op het voorkomen van onbevoegd muteren of verminken van gegevensstromen, dan wel het tijdig detecteren hiervan. Onder exclusiviteit wordt de vertrouwelijkheid verstaan. Maatregelen die de exclusiviteit waarborgen zijn gericht op het voorkomen van onbevoegde kennisname van gegevensstromen. Met het begrip authenticiteit wordt geduid op de zekerheid, dat de afzender van de gegevens inderdaad degene is die hij pretendeert te zijn. Maatregelen die authenticiteit waarborgen zijn gericht op het voorkomen van onbevoegd verzenden van gegevens. Het begrip onweerlegbaarheid wordt gehanteerd voor de situatie waarbij het niet mogelijk is dat de verzender ontkent de gegevens verzonden te hebben. Een tweede kant van het begrip onweerlegbaarheid wordt gevormd in het niet kunnen ontkennen van de ontvangst door de ontvanger van de gegevens. Het begrip onweerlegbaarheid wordt ook wel aangeduid met het nonrepudiation-risico. In het vervolg van dit hoofdstuk wordt het begrip onweerlegbaarheid alleen in de eerstgenoemde betekenis gehanteerd (het niet kunnen ontkennen van de verzending door de zender).
25 G De desbetreffende waarborgen om de genoemde vier aspecten af te dekken, dienen uiteraard niet alleen effectief te zijn, doch ook efficiënt. Dit betekent dat de performance van de berichtuitwisseling niet te veel mag worden gereduceerd door de te nemen beveiligingsmaatregelen. Tevens dient er een relatief eenvoudig sleutelbeheer mogelijk te zijn. In de navolgende voorbeelden wordt er steeds van uitgegaan dat degenen die willen communiceren zelf beschikken over hun eigen geheime RSA-sleutels, alsmede over alle openbare RSAsleutels van alle anderen. Bovendien wordt ervan uitgegaan dat eenieder beschikt over (geheime) DES-sleutels voor de communicatie met ieder andere participant van het netwerk. In de onderstaande figuur betekent dat dus dat Adrie geheime DESsleutels heeft, namelijk ten behoeve van de communicatie met B, CenD. Geheime RSA-sleutel A, openbare RSA-sleutels B, C, D en geheime DES-sleutels B, C, D A Geheime RSA-sleutel B, openbare RSA-sleutels A, C, D en geheime DES-sleutels A, C, D B D Geheime RSA-sleutel D, openbare RSA-sleutels A, B, C en geheime DES-sleutels A, B, C C Geheime RSA-sleutel C, openbare RSA-sleutels A, B, D en geheime DES-sleutels A, B, D Figuur 13. Uitgangspunt bij de voorbeelden. Het gebruik van symmetrische cryptosystemen kan bij de communicatie met vele partners tot een sleutelbeheerprobleem leiden. Indien men namelijk met een miljoen anderen wenst te communiceren, dient men minstens één miljoen sleutels geheim te houden. Dit leidt tot een sleutelbeheerprobleem. Bij toepassing van een symmetrisch cryptosysteem kan ook het totaal aantal in gebruik zijnde sleutels erg groot worden als het aantal participanten toeneemt. Men spreekt dan ook wel van een sleutelexplosie. Als ervan uit wordt gegaan dat iedere participant voor de beveiliging van zijn datacommunicatie (zowel zenden als ontvangen) een verschillende sleutel met iedere andere participant afspreekt, kan het maximaal in gebruik zijnde aantal sleutels worden berekend met de formule: aantal sleutels = N(N-1)/2 waarbij N het aantal participanten representeert. In de grafiek op de volgende pagina wordt de sleutelexplosie grafisch weergegeven (let op de schaalverdeling).
26 G Toepassing van cryptografische technieken Sleutelexplosie bij gebruik symmetrisch cryptosysteem Maximum aantal in gebruik zijnde sleutels Aantal participanten Figuur 14. Sleutelexplosie. Bij toepassing van een asymmetrisch cryptosysteem kent men dit probleem feitelijk niet: er hoeft dan slechts één sleutel geheim te blijven, namelijk de eigen (geheime) RSA-sleutel. Alle andere sleutels zijn immers openbaar Voorbeeld 1 Awil een bericht naar B sturen; hij wil echter niet dat derden het bericht ongemerkt aanpassen of verminken. Een mogelijke oplossing is dat Aniet het gehele bericht encrypt, maar een controlegetal toevoegt. Dit kan in de vorm van een DES-hashtotaal. De nadelen zijn echter ook duidelijk. Uitsluitend de betrouwbaarheid is afgedekt, niet de vertrouwelijkheid of de onweerlegbaarheid. Wel wordt, bij gebruik van een DES-hashtotaal, de authenticiteit afgedekt: bij een sluitende verificatie van dit hashtotaal heeft ontvanger B immers niet alleen de zekerheid dat de boodschap integer was, maar tevens dat hij de boodschap van Aheeft ontvangen. Alleen deze beschikte over de desbetreffende geheime DES-sleutel. De onweerlegbaarheid wordt echter niet af-
27 G Uitgangspositie: Boodschap DES DES-sleutel Te verzenden: Boodschap hash Figuur 15. Voorbeeld 1. gedekt. Akan altijd de verzending van het bericht ontkennen, daarbij wijzend op het feit dat B óók over de geheime DES-sleutel beschikt en derhalve zelf het bericht aangemaakt kan hebben. Tot slot kan er, bij gebruik van DES, het beschreven sleutelbeheerprobleem ontstaan. Het hanteren van het hashtotaal als authenticiteitswaarborg wordt ook wel aangeduid met de term Message Authentication Code ofwel een MAC. In onderstaande tabel worden de afgedekte aspecten met een kruisje aangegeven. Voorbeeld Voorbeeld 2 Integriteit Exclusiviteit Authenticiteit Onweerlegbaarheid Snelheid Sleutelbeheer Awil een bericht naar B sturen. Hij wenst nu echter dat het voor derden niet mogelijk is kennis te nemen van het bericht. De eerste oplossing die geboden wordt is dat Ahet gehele bericht encrypt met DES en vervolgens het geëncrypte bericht naar B verzendt. X X X Let erop dat het zwaartepunt van de beveiliging bij deze implementatie van DES verschuift van het geheimhouden van het bericht naar het geheimhouden van de sleutel. Er kan nu worden gesteld dat ook de integriteit en de authenticiteit worden afgedekt. De integriteit kan worden vastgesteld doordat er, bij verandering of verminking van de code, geen leesbare klare tekst zal ontstaan.
28 G Toepassing van cryptografische technieken Uitgangspositie: Boodschap DES DES-sleutel Te verzenden: Cijfertekst Figuur 16. Voorbeeld 2. Dit geldt temeer indien DES wordt toegepast in de CBC-modus (zie paragraaf ). Ook de authenticiteit wordt verzekerd. De ontvanger B weet dat alleen zender Aook over de desbetreffende geheime DES-sleutel beschikt; daardoor kan niet een ander de boodschap hebben verzonden. De onweerlegbaarheid van de verzending is echter wederom niet gegarandeerd. Deze gedachtegang lijkt gerechtvaardigd en is dat vermoedelijk ook voor boodschappen in de vorm van een wat langere tekst. Het is echter ook mogelijk dat Aeen boodschap naar B wil toezenden die slechts uit enkele bytes bestaat. Als de te verzenden boodschap uit bijvoorbeeld slechts enkele stuurparameters bestaat, kan niet worden gesteld dat de integriteit onomstotelijk wordt afgedekt. Het is mogelijk dat het bericht gecorrumpeerd is, maar bij decryptie een weliswaar andere maar op zich wel valide stuurparameter oplevert. Teneinde boodschaponafhankelijk te kunnen werken, wordt er dus niet van uitgegaan dat de integriteit en authenticiteit in het cryptoschema van voorbeeld 2 worden afgedekt. Tot slot kan er door het uitsluitende gebruik van DES een sleutelbeheerprobleem ontstaan. Voorbeeld 1 2 Integriteit X Exclusiviteit X Authenticiteit X Onweerlegbaarheid Snelheid X X Sleutelbeheer Voorbeeld 3 Wederom wil Aeen bericht naar B sturen en wenst hij dat het voor derden niet mogelijk is kennis te nemen van het bericht. De tweede oplossing die geboden wordt, is dat Ahet gehele bericht encrypt, doch ditmaal met behulp van het RSA-algoritme. Hij gebruikt daarbij B s openbare RSA-sleutel.
29 G Uitgangspositie: Boodschap RSA Openbare RSA-sleutel van B Te verzenden: Cijfertekst Figuur 17. Voorbeeld 3. Alleen B is hierdoor in staat het bericht te decrypten (zelfs A kan dat niet). Het probleem is nu echter dat B niet (zeker) weet van wie het bericht afkomstig is. Het kan zijn dat C of D het ontvangen bericht hebben opgesteld, geëncrypt en verzonden. B kan ook niet écht de integriteit van het bericht verifiëren (zie voorbeeld 2), maar zelfs al zou hij dat kunnen, dan zegt deze integriteit niet zoveel: het bericht kan ronduit vals zijn. Door de enkele toepassing van RSAbehoeft er geen sleutelbeheerproblematiek te ontstaan. De snelheid (lees: het gebrek aan snelheid) van deze implementatie zal echter in de praktijk op bezwaren stuiten. Voorbeeld Integriteit X Exclusiviteit X X Authenticiteit X Onweerlegbaarheid Snelheid X X Sleutelbeheer X Let erop dat de exclusiviteitswaarborging ook nog onder druk kan staan: zowel C als D kennen ook B s openbare RSA-sleutel. Zij zijn in principe in staat net zo lang boodschappen te genereren totdat de geëncrypte versie van de gegenereerde boodschap overeenstemt met de onderschepte cijfertekst Voorbeeld 4 Zender Ais geschrokken van het ontbreken van de authenticiteitswaarborgen in het voorgaande voorbeeld. Ditmaal maakt A met B de afspraak dat Avoortaan al zijn berichtenverkeer gaat encrypten met behulp van het RSA-algoritme, waarbij A gebruik gaat maken van zijn eigen geheime sleutel.
30 G Toepassing van cryptografische technieken Uitgangspositie: Boodschap RSA Geheime RSA-sleutel van A Te verzenden: Cijfertekst Figuur 18. Voorbeeld 4. Een eerdere eis van A, namelijk het waarborgen van de geheimhouding van het berichtenverkeer, wordt bij deze implementatie niet langer ingevuld. Eenieder beschikt immers over de voor decryptie noodzakelijke openbare RSA-sleutel van A. Wel wordt de authenticiteit en ditmaal voor het eerst de onweerlegbaarheid afgedekt. Alleen A kan de verzonden code genereren; hij kan de verzending achteraf dan ook niet meer ontkennen. Voorbeeld Integriteit X Exclusiviteit X Authenticiteit X X X Onweerlegbaarheid X Snelheid X X Sleutelbeheer X X Voorbeeld 5 Ais ook niet bijster gelukkig met het resultaat uit de voorgaande situatie. Hij wenst wederom met B te communiceren. Ditmaal wil Aenerzijds dat alleen B kennis kan nemen van het bericht en anderzijds dat B de zekerheid krijgt dat het ontvangen bericht daadwerkelijk van Aafkomstig is. Ahanteert nu een tweetraps raket. Hij gaat het gehele bericht vercijferen met behulp van het RSA-algoritme. Hij gebruikt daarbij in een eerste vercijferronde zijn eigen geheime RSA-sleutel en in de tweede ronde van de encryptie de openbare RSA-sleutel van B. De decryptieslag vormt het spiegelbeeld. B decrypt het bericht, waarbij hij in de eerste ronde gebruik maakt van zijn eigen geheime RSA-sleutel en in de tweede ronde van A s openbare RSAsleutel. Aan een aantal beoordelingscriteria is nu voldaan: de exclusiviteit, authenticiteit, onweerlegbaarheid en sleutelbeheergemak
31 G Uitgangspositie: Boodschap RSA Geheime RSA-sleutel van A Cijfertekst RSA Openbare RSA-sleutel van B Te verzenden: Cijfertekst Figuur 19. Voorbeeld 5. zijn afgedekt. Alleen de integriteit en de snelheid van (twee ronden!) RSA-gebruik vormt een praktische hindernis. Voorbeeld Integriteit X Exclusiviteit X X Authenticiteit X X X X Onweerlegbaarheid X X Snelheid X X Sleutelbeheer X X X Voorbeeld 6 Awil een bericht naar B sturen. Op grond van een risicoanalyse schat hij de noodzaak tot encryptie van het gehele bericht laag in. Wel wenst hij B zekerheid te geven dat het bericht van hem (A) afkomstig is. Tot slot stelt Adat de werking van het cryptosysteem voldoende snel moet zijn. Een mogelijke oplossing is dat Aeen hashtotaal over het bericht berekent met behulp van one-way-des. Als DES-sleutel hanteert hij een willekeurig gegenereerde, niet vooraf met B afgesproken, DES-sleutel. Het hashtotaal encrypt Amet zijn eigen geheime RSA-sleutel. Tot slot voegt hij het geëncrypte hashtotaal toe aan het bericht, evenals de random DES-sleutel. Let erop dat deze DES-sleutel in klare tekst aan het bericht kan worden toegevoegd. Als variant kan zowel de DES-hash als de DESsleutel met de geheime RSA-sleutel van A geëncrypt worden.
32 G Toepassing van cryptografische technieken Uitgangspositie: Boodschap DES Random DESsleutel Boodschap hash DESsl. RSA Geheime RSA-sleutel van A Te verzenden: Boodschap Dig ht. DESsl. Figuur 20. Voorbeeld 6. B, maar ook ieder ander (C of D), kan het vercijferde hashtotaal decrypten met behulp van A s openbare RSA-sleutel. Vervolgens kan de integriteit van het bericht worden geverifieerd door, met behulp van de toegevoegde random DES-sleutel het DES-hashtotaal opnieuw uit te rekenen en te vergelijken met het aan het bericht toegevoegde hashtotaal. Let erop dat, indien de verificatie van het hashtotaal niet lukt, de ontvanger van het bericht geen unieke foutindicatie heeft: zowel de authenticiteit als de integriteit van het bericht kan de oorzaak van het ongelijk zijn van het toegevoegde en het door de ontvanger berekende hashtotaal vormen. Doordat de DES-sleutel aan het bericht is toegevoegd, hoeft er ondanks het hybride gebruik van DES én RSA geen sleutelbeheerproblematiek te ontstaan. Voorbeeld Integriteit X X Exclusiviteit X X Authenticiteit X X X X X Onweerlegbaarheid X X X Snelheid X X X Sleutelbeheer X X X X De hierboven weergegeven methodiek wordt in de praktijk veelvuldig toegepast. Het hier beschreven mechanisme, waarbij een
33 G DES-hashtotaal wordt geencrypt met de geheime RSA-sleutel van de zender, staat bekend als de digitale handtekening Voorbeeld 7 Ahecht in tegenstelling tot het voorgaande voorbeeld toch veel waarde aan de exclusiviteit. Bovendien stelt hij eisen aan de snelheid van het cryptosysteem. Het cryptosysteem dient dus een hoge mate van exclusiviteit en performance (snelheid) in zich te hebben. Aencrypt hiervoor het bericht met behulp van een willekeurig gegenereerde (random) DES-sleutel. Vervolgens encrypt hij deze random DES-sleutel met de openbare RSA-sleutel van B Uitgangspositie: Boodschap DES Cijfertekst RSA Openbare RSA-sleutel van B Te verzenden: Cijfertekst Random DESsleutel DESsl. DESsl. Figuur 21. Voorbeeld 7. Het is duidelijk dat uitsluitend B het bericht kan decrypten. Dit cryptosysteem, dat ook wel bekend staat als digitaal envelopperen, kent echter geen waarborgen ten behoeve van de authenticiteit en onweerlegbaarheid. Wel is aan de eisen van snelheid en sleutelbeheer voldaan. Voorbeeld Integriteit X X Exclusiviteit X X X Authenticiteit X X X X X Onweerlegbaarheid X X X Snelheid X X X X Sleutelbeheer X X X X X
34 G Toepassing van cryptografische technieken Voorbeeld 8 Voor de laatste twee voorbeelden geldt dat de formulering van het eindresultaat het meest eenvoudig is: Awenst dat aan alle zes genoemde beoordelingscriteria wordt voldaan. De uitwerkingen zijn daardoor het meest complex van de hier getoonde voorbeelden. Ahanteert in dit eerste voorbeeld een drietraps raket, schematisch weergegeven op de volgende pagina. Hij encrypt wederom het bericht met een random DES-sleutel. Vervolgens voegt hij deze DES-sleutel aan het bericht toe en encrypt dit eerst met zijn eigen geheime RSA-sleutel en vervolgens met de openbare RSA-sleutel van B Uitgangspositie: Boodschap DES Cijfertekst RSA Geheime RSA-sleutel van A Cijfertekst RSA Openbare RSA-sleutel van B Te verzenden: Cijfertekst Random DESsleutel DESsl. DESsl. DESsl. Figuur 22. Voorbeeld 8. Het decryptieproces dat zich bij B afspeelt, zal zich in omgekeerde volgorde afspelen. B decrypt de gecodeerde DES-sleutel derhalve eerst met behulp van zijn eigen geheime RSA-sleutel en vervolgens met de openbare RSA-sleutel van A. Tot slot decrypt hij met de DES-sleutel (die nu in klare tekst is) het bericht zelf. Het zal, na de voorgaande voorbeelden, duidelijk zijn dat nu aan bijna alle beoordelingscriteria wordt voldaan.
35 G Voorbeeld Integriteit X X Exclusiviteit X X X X Authenticiteit X X X X X X Onweerlegbaarheid X X X X Snelheid X X X X X Sleutelbeheer X X X X X X Voorbeeld 9 Uiteraard zijn er nog meer combinaties denkbaar. Het laatste voorbeeld vormt feitelijk een combinatie van de digitale handtekening (toegelicht in paragraaf ) en het digitaal envelopperen (toegelicht in paragraaf ). Zonder hier verder op in te gaan, wordt hieronder het cryptoschema getoond: Hierbij worden de volgende aspecten afgedekt: Voorbeeld Integriteit X X X Exclusiviteit X X X X X Authenticiteit X X X X X X X Onweerlegbaarheid X X X X X Snelheid X X X X X X Sleutelbeheer X X X X X X X Een aanvullend voordeel van dit laatste cryptoschema kan naast het afdekken van de zes beoordelingscriteria liggen in de mogelijkheid om foutallocatie toe te passen. Dit geldt indien het DES-hashtotaal wordt aangevuld met de persoonsgegevens van de zender. Indien de decryptie van dit DES-hashtotaal naast het echte hashtotaal geen leesbare persoonsgegevens oplevert, dan is er een authenticiteitsprobleem. Levert de ontcijfering van de DES-hash wél leesbare afzendergegevens op, maar klopt de verificatie van het echte DES-hashtotaal vervolgens niet, dan kan de oorzaak daarvan alleen nog liggen in een integriteitsprobleem.
36 G Toepassing van cryptografische technieken Uitgangspunt: Boodschap Stap 1: Berekening van een DES-hash m.b.t. een eerste, willekeurig gegenereerde DES-sleutel. DES 1e random DESsleutel Boodschap Stap 2: Encryptie v.d. boodschap met behulp van een tweede willekeurige DES-sleutel. De DES-sleutel wordt toegevoegd. Stap 3: Encryptie van de DES-hash met de geheime RSA-sleutel van de afzender (= digitale handtekening). DES Cijfertekst Geheime RSA-sleutel A RSA 2e random DESsleutel DEShash DEShash DESsl2 DESsl1 Cijfertekst dig. ht. DESsl2 DESsl1 Stap 4: Encryptie van de twee DES-sleutels met de publieke RSA-sleutel van de ontvanger (= digitale envelopperen). Openbare RSA-sleutel B RSA Te verzenden: Cijfertekst dig. ht. DESsleutels Figuur 23. Voorbeeld 9. 5 Sleutelbeheer In deze paragraaf wordt uitsluitend ingegaan op de technische en organisatorische aspecten van de interne inrichting van het sleutelbeheer. Zaken als een Trusted Third Party, in de vorm van een Certification Authority of in de vorm van een Notarisfunctie, zullen hier niet worden behandeld.
37 G Rollenspel sleutelbeheer 5.2 Sleutelsystemen 5.3 Levenscyclus van een sleutel Aanmaak van een sleutel (of sleutelpaar) Het gebruik van cryptosystemen maakt sleutelbeheer noodzakelijk. In enkele voorbeelden van paragraaf 4 is aangeduid hoe het belang van het geheimhouden van het bericht verschuift naar het geheimhouden van de sleutel. Een kwalitatief goed ingevuld sleutelbeheer is een randvoorwaarde voor een effectief en efficiënt gebruik van een cryptosysteem. Het sleutelbeheer mag niet gezien worden als een last voor de organisatie, maar veeleer als een mogelijkheid om de beveiliging van het berichtenverkeer te verankeren in de administratieve organisatie. Door het aanbrengen van functiescheidingen tussen het sleutelbeheer en het berichtenbeheer, alsmede door het aanbrengen van functiescheidingen binnen deze twee functies, kan de organisatie waarborgen voor de beheersing en beveiliging van haar berichtenverkeer verkrijgen. Sleutelbeheer betreft een lijnfunctionaliteit. De in sommige organisaties gekozen oplossing, waarbij beveiligingsfunctionarissen (security-officers) vanwege het specialistische karakter van de werkzaamheden belast zijn met (een aspect van) het sleutelbeheer is, uit hoofde van functiescheiding, ongewenst. Bij het sleutelbeheer kan een hiërarchie in de sleutels worden aangebracht. Als voorbeeld moge een drielagenstructuur dienen met daarin op het laagste niveau werksleutels voor de vercijfering van data. Daarboven vinden we metasleutels die bijvoorbeeld dienen om de werksleutels vercijferd op te slaan (opslagsleutels) en/of te distribueren (transportsleutels). Aan de top van de hiërarchie is de hoofdsleutel (master key) te vinden die dient om de metasleutels vercijferd op te slaan, dan wel te distribueren. De hoofdsleutel zal veelal handmatig worden overgedragen. Vervolgens kunnen de metasleutels en de werksleutels vercijferd geautomatiseerd worden uitgewisseld. Als fasen van de levenscyclus van een sleutel worden onderscheiden de aanmaak, distributie, opslag, gebruik, vervanging en vernietiging van een sleutel. Het mechanisme om nieuwe sleutels te genereren dient geheim te zijn. Hierdoor wordt voorkomen dat nieuwe sleutels voorspelbaar zijn. Tevens dient het gebruik van zwakke sleutels te worden vermeden. Dit betekent niet alleen dat de in paragraaf beschreven zwakke en semi-zwakke DES-sleutels niet mogen worden gebruikt, maar tevens dat er implicaties zijn voor de minimale lengte van de DES- of RSA-sleutels. Hierdoor worden derhalve ook eisen gesteld aan de grootte van de bij de berekening van een RSA-sleutelpaar gebruikte priemgetallen. De aanmaak van sleutels kan op drie manieren gebeuren: handmatig, door invoering van een bitstring of een wachtwoord(-zin). Het verdient bij handmatige sleutelaanmaak aanbeveling twee functionarissen een sleutel te laten genereren
38 G Toepassing van cryptografische technieken en deze twee sleutels te XORen tot de te gebruiken sleutel; machinaal via een random-generator. Let erop dat deze nooit helemaal willekeurig werken; het is beter te spreken van pseudo-random-generators; machinaal door een sleutel volgens een bepaald algoritme af te leiden uit een voorgaande sleutel. Een dergelijke sleutel noemt men ook wel een transformatiesleutel Distributie van sleutels Opslag van sleutels Tijdens het maken van de afspraken voor de berichtuitwisseling, vastgelegd in een Interchange Agreement, zullen de sleutelgevers zich dienen te vergewissen van de identiteit van de ander. Bij zowel de initiële als iedere volgende sleuteldistributie dient de zekerheid te worden verkregen dat de sleutels worden ontvangen van degene (en afgegeven aan degene) met wie men de Interchange Agreement heeft afgesloten. Sleuteldistributie zal zeker bij de initiële distributie via een ander medium worden verzorgd. Zo kan de eerste keer dat sleutels worden uitgewisseld een hexadecimale representatie van de sleutel op papier worden afgedrukt en fysiek worden verzonden. Latere vervolgsleutels kunnen via hetzelfde medium worden verzonden als de berichtuitwisseling plaatsvindt. Men kan de te verzenden werksleutels dan bijvoorbeeld vercijferen met een (hogere) transportsleutel. Een andere wijze om op een beveiligde manier (symmetrische) sleutels uit te wisselen wordt hieronder in een vereenvoudigd voorbeeld weergegeven: Aen B wensen sleutels uit te wisselen. Zij hebben daartoe al eerder op een beveiligde wijze een initieel grondtal g uitgewisseld. Aen B genereren nu een deelsleutel a, respectievelijk b. Voor de daadwerkelijke sleuteluitwisseling kunnen Aen B zonodig gebruikmaken van een minder beveiligd netwerk. Azendt namelijk B het getal g a toe en B doet het getal g b naar Atoekomen. Aberekent vervolgens (g b ) a en B berekent (g a ) b. Omdat zowel (g b ) a als (g a ) b identiek zijn aan g ab, beschikken Aen B nu beide over een gemeenschappelijke nieuwe sleutel (g ab ). De opslag van sleutels dient zodanig te zijn dat uitsluitend geautoriseerde personen toegang hebben tot deze sleutels. Naast allerlei vormen van fysieke en logische toegangsbeveiliging worden de werksleutels veelal geëncrypt opgeslagen (bijvoorbeeld met triple-des), of opgeslagen in een Hardware Security Module (HSM). Een HSM kan worden voorgesteld als een harde schijf vervat in een kluis. Op de HSM zijn enkele fysieke sloten aanwezig; deze dienen bijvoorbeeld om een toetsenbord aan te kunnen sluiten. Een HSM zal zijn geheugen automatisch wissen bij een fysieke inbraakpoging. Let erop dat ook openbare RSA-sleutels beveiligd dienen te worden opgeslagen ter voorkoming van de mogelijkheid dat iemand ze verwisseld door het openbare deel van een door hemzelf gegenereerd RSA-sleutelpaar. Alsdan kan deze persoon zich voordoen als degene wiens openbare RSA-sleutel hij heeft vervan-
39 G gen. Dit risico wordt aangeduid met de term masquerading of een man-in-the-middle attack Wisseling van sleutels Vernietiging van sleutels Het gebruik van chipkaarten bij sleutelbeheer Periodiek zal de gebruikte sleutel moeten worden gewisseld. De sleutelwisseling dient op basis van een risicoanalyse te gebeuren, waarbij als relevante factoren zijn te benoemen: de gevoeligheid van de te beschermen data, de geldigheidsduur van de te beschermen data en de sterkte van het gebruikte cryptosysteem. In het algemeen geldt dat de veel gebruikte werksleutels vaker gewisseld moeten worden dan de hogere metasleutels of de hoofdsleutels. Na verloop van hun bruikbaarheidsduur dienen de sleutels te worden vernietigd. Dit dient in principe door twee functionarissen te gebeuren onder opmaking van een protocol van vernietiging. In de praktijk ziet men vaak dat sleutels (... voor het geval dat...) toch bewaard blijven, soms zonder voldoende beveiligingsmaatregelen. Een praktische manier om met cryptosleutels om te gaan, ligt in het gebruik van chipkaarten. Hierbij wordt een (lange) cryptosleutel in de chip op de chipkaart geladen. Bij het gebruik dient de bezitter een wachtwoord al dan niet in de vorm van een pincode in te toetsen teneinde de cryptosleutel te ontsluiten. Het gebruik van chipkaarten bij sleutelbeheer biedt een aantal voordelen, zoals bijvoorbeeld: voor de authenticiteitswaarborging dient men te beschikken over een bezitskenmerk (de chipkaart) én een kenniskenmerk (het wachtwoord of de pincode). Dit wordt veiliger geacht. Overigens dient men zich wel bewust te zijn van het feit dat onbedoeld gedrag bij diefstal van de chipkaart mogelijk is: het wachtwoord voor de ontsluiting van de cryptosleutel zal in het algemeen eenvoudiger te achterhalen zijn dan de originele cryptosleutel zelf; door de fysieke implementatie van de cryptosleutel in de chipkaart zijn processen zoals sleuteldistributie, wisseling en vernietiging van sleutels beter te beheersen. Men kan immers nu een fysieke voorraad opnemen en het onbevoegd kopiëren van een sleutel is veel lastiger. Op hoofdlijnen zijn er twee soorten chipkaarten te onderkennen: geheugenkaarten: dit zijn relatief eenvoudige (lees: goedkope) chipkaarten. De chip bevat alleen een stuk geheugen dat door een ander apparaat (de server) kan worden uitgelezen. Er zijn weinig technologische ontwikkelingen meer op het gebied van geheugenkaarten; processorkaarten: in tegenstelling tot geheugenkaarten bevatten processorkaarten wel een stuk eigen intelligentie.
40 G Toepassing van cryptografische technieken Een processorkaart biedt in vergelijking met een geheugenkaart meer waarborgen voor de beveiliging van de op de kaart opgeslagen gegevens. Op het gebied van processorkaarten worden regelmatig technologische ontwikkelingen gemeld. Door chipkaartontwikkelaars wordt nogal eens de aandacht gevestigd op de prestaties van hun product. Men schermt dan met de korte berekeningstijd die de chip op de kaart nodig heeft voor een cryptoberekening. Alhoewel een dergelijke benchmark wellicht een aardig middel is om chipkaarten onderling te vergelijken, is het niet zinvol de cryptoberekening in de chip van de chipkaart (de cliënt) uit te voeren. Het is efficiënter de chip alleen te gebruiken voor de opslag van de cryptosleutel en de grotere rekencapaciteit van de server te gebruiken voor de cryptoberekening. Een nieuwe ontwikkeling op het gebied van chip- en magneetkaarten is het gebruiken van biometrische gegevens. Daarbij worden kenmerken van bijvoorbeeld een pasfoto van de houder en/of zijn vingerafdruk door middel van een hashberekening vertaald naar een hashtotaal. Bij het verifiëren van de authenticiteit van de houder wordt een nieuwe foto en/of vingerafdruk genomen en wordt er een nieuw hashtotaal berekend. Dit laatste wordt dan vergeleken met het hashtotaal op de kaart. 5.4 Archivering van berichten Een bijzonder punt van aandacht betreft de archivering van elektronische berichten. In het algemeen is het noodzakelijk de binnengekomen (en uitgaande) elektronische berichten te bewaren, bijvoorbeeld ingeval ze als brondocument voor de administratie dienst doen. Relevante wettelijke bewaarplichten worden onder meer genoemd in het Burgerlijk Wetboek, de Algemene Wet inzake Rijksbelastingen en voor overheidsorganen in de Comptabiliteitswet, de Archiefwet en de Coördinatiewet Sociale Verzekeringen. Voor de archivering zijn in het kader van dit hoofdstuk twee hoofdvormen te onderscheiden: een juridisch archief: daaronder wordt verstaan een bestand waarin de elektronische berichten worden bewaard in de vorm waarin ze zijn verzonden. Dit betekent dat in het juridische archief vercijferde (delen van) berichten aanwezig kunnen zijn, alsmede enveloppegegevens, zoals time-stamps. Voor de ontsluiting van een juridisch archief heeft men dus ook een bestand nodig waarin de sleutelhistorie van alle partners waarmee wordt gecommuniceerd, bewaard blijft, alsmede een bestand met de historie van de berichtenstructuren. Met behulp van een juridisch archief kan achteraf de geldigheid van ontvangen en/of verzonden berichten worden aangetoond; een notarisarchief: daaronder wordt verstaan een bestand waarin uitsluitend de ontcijferde berichtinhouden liggen op-
41 G geslagen. In deze vorm behoeft er dus geen sleutelhistorie en dergelijke te worden bewaard. De geldigheid van de opgeslagen berichten wordt in deze archiveringsvorm verzekerd door een sluitend stelsel van administratief-organisatorische maatregelen, die voldoende waarborgen moeten bieden voor de volledigheid en juistheid van de opgeslagen berichten. 6 Aandachtspunten voor de IT-auditor Voordat er mede aan de hand van enkele in de praktijk opgedane ervaringen een aantal aandachtspunten voor de beoordeling van het gebruik van cryptografische technieken wordt weergegeven, wordt eerst ingegaan op de rol van de IT-auditor bij de keuze van een cryptosysteem. 6.1 De rol van de IT-auditor bij de keuze van een cryptosysteem 6.2 Aandachtspunten voor het werkprogramma van de IT-auditor Onder IT-auditors leeft wel de opvatting dat zij zich niet bezig moeten houden met de keuze van het te gebruiken cryptosysteem. De enige taak voor de IT-auditor zou een beoordeling zijn of het cryptosysteem gecertificeerd is of gecertificeerd kan worden door een onafhankelijk onderzoeks- of keuringsinstituut. Alhoewel deze zienswijze niet onbegrijpelijk is, kan ze om meerdere reden niet worden onderschreven. Allereerst is certificering van een cryptosysteem veelal een (te) kostbaar en tijdrovend proces. Ter illustratie: veel onderzoekers hebben wereldwijd gedurende meer dan twintig jaar gezocht naar een achterdeur in DES, maar deze niet gevonden. De bedoelde zwakheid in DES is dus niet achterhaald, maar hoeveel inspanning heeft het reduceren van deze onzekerheid gekost? Voor een individueel bedrijf zal een dergelijk onderzoek niet altijd haalbaar blijken. Daarnaast is het uitsluitend uitvoeren van een beoordeling of een cryptosysteem gecertificeerd is een te gemakkelijke taakopvatting voor de IT-auditor. Deze beoordeling ontslaat de IT-auditor niet van de verantwoordelijkheid een eigen beoordeling uit te voeren naar de vraag of er wel een voldoende niveau van beveiliging wordt bereikt. De IT-auditor wordt tenslotte verondersteld zich zelfstandig hierover een mening te kunnen vormen. Hij kan daarbij altijd (externe) expertise inroepen, maar dit is iets anders dan het uitsluitend uitvoeren van een beoordeling of er al dan niet extern gecertificeerd is. Tot slot bestaat er altijd het niet denkbeeldige gevaar dat de certificering ofwel niet terecht is verleend, ofwel door de tijd wordt ingehaald. In beide gevallen bedient de IT-auditor zich van een stuk schijnzekerheid. De aspecten die de IT-auditor zal meenemen in de beoordeling van de toepassing van cryptografische technieken zijn de volgende. De IT-auditor zal uiteraard eerst een risicoanalyse uitvoeren, niet zozeer uitsluitend op het cryptosysteem zelf, maar op het
42 G Toepassing van cryptografische technieken gehele proces waarbinnen het cryptosysteem wordt gebruikt. Op deze wijze wordt niet alleen een onevenwichtige balans in de te nemen beveiligingsmaatregelen onderling voorkomen, maar wordt ook een toereikende kosten/baten-verhouding gerealiseerd. Het heeft bijvoorbeeld over het algemeen weinig zin interne met triple-des af te schermen. Bij de beoordeling van de keus van het crypto-algoritme zelf, dient te worden gewaakt voor bedrijfseigen oplossingen (proprietary systems). De in de literatuur beschreven cryptoalgoritmen bieden niet alleen het voordeel terdege te zijn beoordeeld op de gehanteerde uitgangspunten en opzet, maar ook zullen (potentiële) zwaktes in de literatuur worden vermeld voordat ze tot daadwerkelijke schade kunnen leiden. Zeker indien de communicatie dient plaats te vinden met partijen buiten de eigen organisatie, kan bij de toepassing van cryptografische technieken het best gebruik worden gemaakt van algemeen geaccepteerde (open) standaarden en algoritmen die hun betrouwbaarheid in de praktijk hebben bewezen. Bij de communicatie met slechts weinig partijen heeft men vanuit het oogpunt van een eenvoudig sleutelbeheer in principe de vrije keus tussen een symmetrisch of een asymmetrisch cryptosysteem. Indien er met vele anderen gecommuniceerd dient te worden, verdient vanuit ditzelfde oogpunt een asymmetrisch cryptosysteem de voorkeur. De toepassing van het crypto-algoritme in het cryptoschema vormt een volgende schakel in het beoordelingsproces. In paragraaf 4 wordt een aantal cryptoschema s weergegeven, waarbij niet steeds alle relevante beoordelingscriteria, zoals bijvoorbeeld de integriteit of de exclusiviteit van de te beschermen gegevens, worden afgedekt. Uiteraard zal de IT-auditor zich moeten vergewissen van de deugdelijkheid van de gehanteerde sleutellengtes, de lengtes van de hashtotalen enzovoorts. Ook deze kunnen in de loop der tijd niet langer toereikend blijken. De IT-auditor dient ook te letten op onjuiste combinaties in het gebruik van hybride cryptosystemen. Het gebruik van een digitale handtekening, waarbij een 32-bit hashwaarde wordt getekend met een RSAsleutel van 4096 bits, is geen schoolvoorbeeld van een sterk cryptosysteem. Daarnaast dient het eventuele gebruik van zwakke sleutels te worden voorkomen. Dit geldt bijvoorbeeld voor de in paragraaf beschreven zwakke en semi-zwakke DES-sleutels. Alhoewel er in dit hoofdstuk geen aandacht is besteed aan compressietechnieken, zijn deze toch van belang bij praktische toepassingen van cryptografie. Het toepassen van compressietechnieken, vóórdat de cryptoroutines worden toegepast, werkt niet alleen efficiënter (sneller), maar ook effectiever doordat de veiligheid van het geheel aanzienlijk wordt
43 G verhoogd. Het verdient derhalve aanbeveling in de praktijk steeds compressietechnieken te hanteren bij cryptografische toepassingen. De IT-auditor dient zich ervan te vergewissen dat het gebruik van de cryptotechnieken zo volledig mogelijk in de (administratieve) organisatie wordt geïmplementeerd. Er dienen voldoende functiescheidingen te worden aangebracht tussen bijvoorbeeld het genereren, gebruiken en opslaan van sleutels en het maken, autoriseren van de verzending, verzending en het bewaren van berichten. In paragraaf 5 is nader aandacht besteed aan een aantal minimale functiescheidingen. De IT-auditor kan erop toezien dat er een audit-trail en zo nodig een audit data base wordt ingericht. Er dient altijd een relatie te kunnen worden gelegd tussen de in het archief bewaarde elektronische bronberichten en de totaalcijfers waarover de organisatie verantwoording aflegt. De IT-auditor heeft verder een rol in de beoordeling van de beheersorganisatie van het cryptosysteem (met de bijbehorende procedures). Dit kan door deze beoordeling zelfstandig uit te voeren of door review van de uitkomsten van de interne controlefunctie die toeziet op het adequaat blijven functioneren van de beheersorganisatie. Tot slot kan de IT-auditor erop toezien dat de bewaking van de toereikendheid van het gehanteerde algoritme, de benodigde sleutellengtes, de inpassing van het algoritme in het cryptoschema en dergelijke wordt belegd bij een (reeds bestaand) CERT-team (Computer Emergency Response Team). 7 Aanbevolen literatuur en software Degenen die na lezing van dit hoofdstuk geprikkeld zijn om meer te weten te komen omtrent cryptografie worden verwezen naar het meer dan uitstekende boek Basic Methods of Cryptography van Jan C. A. van der Lubbe (Cambridge University, ISBN ). Een zeer compleet, maar niet geheel foutloos naslagwerk betreft het in de literatuurlijst opgenomen boek van Bruce Schneier: Applied Cryptography (2nd edition). Voor praktisch gebruik van cryptosoftware wordt verwezen naar het (onder meer op Internet verkrijgbare) PGP (Pretty Good Privacy-)pakket. Dit voor particulieren gratis te gebruiken softwarepakket is voorzien van een goede handleiding. Het maakt onder meer gebruik van MD5, International Data Encryption Algorithm (IDEA, niet te verwarren met de ANSI-variant van DES, DEA) en RSA.
44 G Toepassing van cryptografische technieken 8 Literatuur Applied Cryptography, 2nd edition, B. Schneier, John Wiley & Sons, 1996 Basic Methods of Cryptography, Jan C. A. van der Lubbe, Cambridge University, 1998 Basismethoden Cryptografie, Jan C. A. van der Lubbe, Delftse Uitgevers Maatschappij BV, 1994 Computers and Security, diverse nummers/artikelen, Elsevier Advances Technology Controle van de informatieverwerking, K. IJ. Mollema, Samsom Uitgeverij, 1989 Computernetwerken en datacommunicatie, R. Matthijssen, J. Truijens en H. Doorenspleet, Academic Service, 1998 Datacommunicatie en Netwerktechnieken, P. C. den Heijer en H.G. Kroon, Kluwer Technische boeken BV Dr. Dobbs Journal, diverse nummers en artikelen (o.a. januari 1997, oktober 1997 en december 1998) FIPS PUB 46-1 National Bureau of Standards, FIPS PUB 46-1, Data Encryption Standard, januari 1988 FIPS PUB 81 National Bureau of Standards, FIP PUB 81: DES Modes of Operation, december 1980 FIPS PUB 180 National Institute of Standards and Technology, FIPS PUB 180 Secure Hash Standards (SHS), 11 mei 1993 Firewall-strategieën Internet en Intranet, E. Amoroso en R. Sharp, Academic Service, 1996 Handboek Accountancy 84, onderdeel III.361, Gegevensbeveiliging met behulpvan encryptie, P. Harmzen, Samsom Uitgeverij BV Informatiebeveiliging, P. Overbeek en W. Sipman, Tutein Nolthenius, 1992 IIA-today, Auditing news from The Institute of Internal Auditors, november/december 1998 Journal of cryptology diverse nummers en artikelen, The Journal of the International Association for Cryptologic Research, Springer Juridisch rapport project Bewaren en bewijzen, Juridische expertgroep van de Stichting EDIFORUM en de projectgroep Legalisatie Opslagmedia van het Nederlands Normalisatie Instituut, 1998 Lexicon Informatica, diverse artikelen, Samsom Bedrijfsinformatie NIvRA geschrift 64, Beheersing en Controle van Electronic Data Interchange, meerdere auteurs, Kluwer Bedrijfswetenschappen 1995 RFC 1319 B. Kaliski RFC 1319, The MD2 Message-Digest Algorithm, April 1992
45 G RFC 1321 R. Rivest RFC 1321, The MD5 Message-Digest Algorithm, April 1992 RFC 1421: Privacy Enhancement for Internet Electronic Mail Part I, February 1993 RFC 1422: Privacy Enhancement for Internet Electronic Mail Part II, February 1993 RFC 1423: Privacy Enhancement for Internet Electronic Mail Part III, February 1993 RFC 1424: Privacy Enhancement for Internet Electronic Mail Part IV, February 1993 RSAData Security, Inc., Public-Key Cryptography Standards (PKCS), RSA-Laboratories, Revised, November 1993 PKCS #1: RSA Encryption Standard, Version 1.5 PKCS #3: Diffie-Hellman Key-Agreement Standard, Version 1.4 PKCS #5: Password-Based Encryption Standard, Version 1.5 PKCS #6: Extended-Certificate Syntax Standard, Version 1.5 PKCS #7: Cryptographic Message Syntax Standard, Version 1.5 PKCS #8: Private-Key Information Syntax Standard Version 1.2 PKCS #9: Selected Attribute Types, Version 1.1 PKCS #10: Certification Request Syntax Standard, Version 1.0 PKCS #11: Cryptographic Token Interface Standard, Version 1.0 Security for Computer Networks Second edition, D.W. Davies and W.L. Price, John Wiley & Sons, 1989 De Volkskrant, 4 februari 1999 Bron: Handboek EDP-auditing.
slides10.pdf December 5,
Onderwerpen Inleiding Algemeen 10 Cryptografie Wat is cryptography? Waar wordt cryptografie voor gebruikt? Cryptographische algoritmen Cryptographische protocols Piet van Oostrum 5 dec 2001 INL/Alg-10
Wireshark. Open Source Vroeger Ethereal Wireless kan lastig zijn
Agenda SSN Week 3 Protocolanalyse Wireshark Doorlopen boek Voorbereiding SSN Project Secret key Public Key Hashes DES AES Praktikum: Cryptool en RSAFAQ Wireshark Open Source Vroeger Ethereal Wireless kan
Datacommunicatie Cryptografie en netwerkbeveiliging
Datacommunicatie Cryptografie en netwerkbeveiliging ir. Patrick Colleman Inhoud Voorwoord 1 1. Inleiding Wat 2 2. Model 5 3. Systemen 5 3.1 Substitutiesystemen 6 3.1.1 Caesar 6 3.1.2 Monoalfabetische vercijfering
Concept. Inleiding. Advies. Agendapunt: 04 Bijlagen: - College Standaardisatie
Forum Standaardisatie Wilhelmina v Pruisenweg 104 2595 AN Den Haag Postbus 84011 2508 AA Den Haag www.forumstandaardisatie.nl COLLEGE STANDAARDISATIE Concept CS07-05-04I Agendapunt: 04 Bijlagen: - Aan:
??? Peter Stevenhagen. 7 augustus 2008 Vierkant voor wiskunde
1 ??? Peter Stevenhagen 7 augustus 2008 Vierkant voor wiskunde 2 Wiskunde en cryptografie Peter Stevenhagen 7 augustus 2008 Vierkant voor wiskunde 3 Crypto is voor iedereen Peter Stevenhagen 7 augustus
RSA. F.A. Grootjen. 8 maart 2002
RSA F.A. Grootjen 8 maart 2002 1 Delers Eerst wat terminologie over gehele getallen. We zeggen a deelt b (of a is een deler van b) als b = qa voor een of ander geheel getal q. In plaats van a deelt b schrijven
Cryptografie: de wetenschap van geheimen
Cryptografie: de wetenschap van geheimen Benne de Weger [email protected] augustus 2018 Cryptografie als Informatiebeveiliging 1 beveiliging: doe iets tegen risico s informatie-risico s en eisen: informatie
Netwerken. Beveiliging Cryptografie
Netwerken 15 Beveiliging Cryptografie Lennart Herlaar 2 november 2016 Onderwerpen Beveiliging Cryptografie Cryptografische algoritmen en protocollen Toepassing van cryptografie in beveiliging Lennart Herlaar
4Passief: n Afluisteren. n Geen gegevens gewijzigd of vernietigd. n Via de routers van WAN. n Via draadloze verbindingen. 4Fysieke afsluiting
Telematica Hoofdstuk 20 4Passief: n Afluisteren Bedreigingen n Alleen gegevens (inclusief passwords) opgenomen n Geen gegevens gewijzigd of vernietigd n Op LAN kan elk station alle boodschappen ontvangen
Public Key Cryptography. Wieb Bosma
Public Key Cryptography de wiskunde van het perfecte kopje koffie Wieb Bosma Radboud Universiteit Nijmegen Bachelordag 2 april 2011 Nijmegen, 6 november 2010 0 Nijmegen, 6 november 2010 1 cryptografie
Forum Standaardisatie. Expertadvies: Vervanging MD5 door SHA 2 op lijst met gangbare standaarden. Datum 5 augustus 2010
Forum Standaardisatie Expertadvies: Vervanging MD5 door SHA 2 op lijst met gangbare standaarden Datum 5 augustus 2010 Colofon Projectnaam Versienummer Locatie Organisatie Expertadvies: Vervanging MD5 door
De digitale handtekening
De digitale handtekening De rol van de digitale handtekening bij de archivering van elektronische documenten Prof. dr. Jos Dumortier http://www.law.kuleuven.ac.be/icri Probleemstelling: «integriteit» Elektronisch
Digitale geldtransacties. Stefanie Romme Wiskunde, Bachelor Begeleider: Wieb Bosma
Digitale geldtransacties Stefanie Romme 3013170 Wiskunde, Bachelor Begeleider: Wieb Bosma Radboud Universiteit Nijmegen 5 juli 2012 Samenvatting Sinds de opkomst van het internet zijn elektronische geldtransacties
De cryptografie achter Bitcoin
De cryptografie achter Bitcoin Benne de Weger [email protected] augustus 2018 digitale handtekeningen 1 doel: authenticatie sterke verbinding aanleggen tussen een document en een identiteit wordt doorgaans
Code signing. Door: Tom Tervoort
Code signing Door: Tom Tervoort Wat is code signing? Digitale handtekening onder stuk software Geeft garanties over bron Voorkomt modificatie door derden Bijvoorbeeld met doel malware toe te voegen Ontvanger
Hoe je het cryptosysteem RSA soms kunt kraken. Benne de Weger
Hoe je het cryptosysteem RSA soms kunt kraken Benne de Weger 28 aug. / 4 sept. RSA 1/38 asymmetrisch cryptosysteem versleutelen met de publieke sleutel ontsleutelen met de bijbehorende privé-sleutel gebaseerd
informatica. cryptografie. overzicht. hoe & wat methodes belang & toepassingen moderne cryptografie
informatica cryptografie overzicht hoe & wat methodes belang & toepassingen moderne cryptografie 1 SE is op papier hoe & wat vragen komen uit methode en verwijzingen die in de methode staan in mappen RSA
Het RSA Algoritme. Erik Aarts - 1 -
Het RSA Algoritme Erik Aarts - 1 - 1 Wiskunde... 3 1.1 Het algoritme van Euclides... 3 1.1.1 Stelling 1... 4 1.2 Het uitgebreide algoritme van Euclides... 5 1.3 Modulo rekenen... 7 1.3.1 Optellen, aftrekken
Elliptische krommen en digitale handtekeningen in Bitcoin
Elliptische krommen en digitale handtekeningen in Bitcoin Bas Edixhoven Universiteit Leiden KNAW Bitcoin symposium Deze aantekeningen zal ik op mijn homepage plaatsen. Bas Edixhoven (Universiteit Leiden)
De wiskunde achter de Bitcoin
De wiskunde achter de Bitcoin Bas Edixhoven Universiteit Leiden NWD, Noordwijkerhout, 2015/01/31 Deze aantekeningen zal ik op mijn homepage plaatsen. Bas Edixhoven (Universiteit Leiden) De wiskunde achter
Informatie coderen en kraken
1 Introductie Informatie coderen en kraken een cryptografie workshop door Ben van Werkhoven en Peter Peerdeman In dit practicum cryptografie raak je bekend met een aantal simpele vormen van cryptografie
Tweede Huiswerk Security 26 of 28 oktober, 11.00, Nabespreken op Werkcollege.
Tweede Huiswerk Security 26 of 28 oktober, 11.00, Nabespreken op Werkcollege. Kijk het huiswerk van je collega s na en schrijf de namen van de nakijkers linksboven en het totaalcijfer rechts onder de namen
ICT en de digitale handtekening. Door Peter Stolk
ICT en de digitale handtekening Door Peter Stolk Onderwerpen Elektronisch aanleveren van akten Issues bij de start Aanbieders van akten Hoe krijgen we ze zover? Demonstratie Welke technieken hebben we
BWI-werkstuk geschreven door: Aart Valkhof Maart 2003. PGP: Pretty Good Privacy. Een overzicht.
BWI-werkstuk geschreven door: Aart Valkhof Maart 2003 PGP: Pretty Good Privacy. Een overzicht. PGP: Pretty Good Privacy. Een overzicht. De vrije Universiteit Faculteit der Wiskunde en Informatica Studierichting
Cryptografische beveiliging op het Internet
Cryptografische beveiliging op het Internet Benne de Weger [email protected] augustus 2018 hybride cryptografie 1 klare symmetrische versleuteling geheimschrift versturen geheimschrift symmetrische
STUDIEWIJZER CRYPTOGRAPHY BACHELOR IN DE TOEGEPASTE INFORM ATICA SEMESTER 5 ACADEMIEJAAR LECTOR JOHAN GALLE
Cryptography BACHELOR IN DE TOEGEPASTE INFORM ATICA SEMESTER 5 ACADEMIEJAAR 2017-2018 LECTOR JOHAN GALLE STUDIEWIJZER CRYPTOGRAPHY Onderdeel van de opleiding Bachelor in de Toegepaste Informatica 1 VEREISTE
Profielwerkstuk Informatica en Wiskunde Is RSA-cryptografie nu veilig genoeg en wat betekent dit voor de toekomst van digitale beveiliging?
Profielwerkstuk Informatica en Wiskunde Is RSA-cryptografie nu veilig genoeg en wat betekent dit voor de toekomst van digitale beveiliging? Door Nahom Tsehaie en Jun Feng Begeleiders: David Lans en Albert
Restsystemen 183 Oplossen van lineaire vergelijkingen 190 Structuren met één bewerking 192 Structuren met twee bewerkingen
Inhoud Dankwoord 15 Hoofdstuk 1 Instapwiskunde 17 1.1 Letterrekenen 18 Reële getallen 18 Reële veeltermen 23 1.2 Vergelijkingen met één onbekende 25 Lineaire vergelijkingen 25 Kwadratische vergelijkingen
De rol van de digitale handtekening bij de archivering van elektronische documenten
De rol van de digitale handtekening bij de archivering van elektronische documenten De toenemende digitalisering heeft verregaande gevolgen voor de archiefwereld. Bijna alle documenten worden momenteel
Bijzondere kettingbreuken
Hoofdstuk 15 Bijzondere kettingbreuken 15.1 Kwadratische getallen In het vorige hoofdstuk hebben we gezien dat 2 = 1, 2, 2, 2, 2, 2, 2,.... Men kan zich afvragen waarom we vanaf zeker moment alleen maar
Postkwantumcryptografie
1 Bron: https://www.aivd.nl/publicaties/publicaties/2014/11/20/informatiebladover-quantumcomputers Postkwantumcryptografie Bescherm uw data vandaag tegen de dreiging van morgen Factsheet FS-2017-02 versie
Algemene toelichting hash
Algemene toelichting hash Vanaf softwareversie 6.0 Versie 20131114 va 06 00 14 november 2014 Document historie Revisies Document Versie Vanaf softwareversie Publicatie Datum Wijzigingen v20110131 3.0 31-01-2011
Algoritmes in ons dagelijks leven. Leve de Wiskunde! 7 April 2017 Jacobien Carstens
Algoritmes in ons dagelijks leven Leve de Wiskunde! 7 April 2017 Jacobien Carstens Wat is een algoritme? Een algoritme is een eindige reeks instructies die vanuit een gegeven begintoestand naar een beoogd
Zwakke sleutels voor RSA
Zwakke sleutels voor RSA Benne de Weger, Mike Boldy en Hans Sterk 23 juni 2008 Zwakke sleutels voor RSA Benne de Weger, Mike Boldy en Hans Sterk 23 juni 2008 RSA: beroemd cryptosysteem Genoemd naar Rivest,
aé=êçä=î~å=çé=åêóéíçäçöáé=éå=çé=çáöáí~äé=ü~åçíéâéåáåö= áåò~âé=çé=îéáäáöüéáç=î~å=éäéâíêçåáëåüé=áåñçêã~íáéj ìáíïáëëéäáåö
aé=êçä=î~å=çé=åêóéíçäçöáé=éå=çé=çáöáí~äé=ü~åçíéâéåáåö= áåò~âé=çé=îéáäáöüéáç=î~å=éäéâíêçåáëåüé=áåñçêã~íáéj ìáíïáëëéäáåö müáäáééé=p`eo^bmbk éêçãçíçê=w mêçñkçêkáê=cê~åë=ibjbfob = báåçîéêü~åçéäáåö=îççêöéçê~öéå=íçí=üéí=äéâçãéå=î~å=çé=öê~~ç=
Les D-04 Foutdetectie en correctie
Les D-04 Foutdetectie en correctie In deze les staan we stil bij het ontdekken (detectie) van fouten bij datacommunicatie en bij het herstellen (correctie) van fouten bij datacommunicatie. We bespreken
Digitale Handtekening Praktische problemen bij toepassingen TestNet: Testen van Security ING Group, April 2006 Ruud Goudriaan
Digitale Handtekening Praktische problemen bij toepassingen TestNet: Testen van Security ING Group, pril 2006 Ruud Goudriaan Digitale handtekeningen Korte uitleg symmetrische Cryptografie Hoe gebruik je
Probabilistische aspecten bij public-key crypto (i.h.b. RSA)
p. 1/21 Probabilistische aspecten bij public-key crypto (i.h.b. RSA) Herman te Riele, CWI Amsterdam Nationale Wiskunde Dagen Noordwijkerhout, 31 januari 2015 p. 2/21 verzicht Binair exponentiëren RSA Factorisatie-algoritmen
Cursus Cryptografie MODERN
Cursus Cryptografie MODERN 26-02-2017 Onderwerpen Blokgeheimschrift Feistel algoritme Data Encryption Standard Cryptoanalyse van DES Alternatieven voor DES Advanced Encryption Standard 2 Rekenen met Bits
Rekenen aan wortels Werkblad =
Rekenen aan wortels Werkblad 546121 = Vooraf De vragen en opdrachten in dit werkblad die vooraf gegaan worden door, moeten schriftelijk worden beantwoord. Daarbij moet altijd duidelijk zijn hoe de antwoorden
Tweede Toets Security 9 november 2016, , Educ-α.
Tweede Toets Security 9 november 2016, 8.30 10.30, Educ-α. Motiveer je antwoorden kort! Zet je mobiel uit. Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je
Algoritmes en Priemgetallen. Hoe maak je een sleutelpaar voor RSA?
Algoritmes en Priemgetallen Hoe maak je een sleutelpaar voor RSA? Het recept van RSA Kies p q priemgetallen en bepaal N = pq Kies e Z N (publieke sleutel) Bepaal d e 1 mod φ N (privésleutel) x ed x kφ
Security. Eerste tentamen
Security Eerste tentamen Het tentamen normale rekenmachine mag mee. Gastpresentaties Weetvragen Lees je eigen aantekeningen goed door. Malware Weetvragen Introductiecollege Weetvragen! Kijk naar de lijst
Beveiliging van persoonlijke bestanden door middel van encryptie een tutorial door Nick heazk Vannieuwenhoven
Beveiliging van persoonlijke bestanden door middel van encryptie een tutorial door Nick heazk Vannieuwenhoven Ten Geleide Voor het beveiligen van onze persoonlijke bestanden zullen we gebruik maken van
Getaltheorie I. c = c 1 = 1 c (1)
Lesbrief 1 Getaltheorie I De getaltheorie houdt zich bezig met het onderzoek van eigenschappen van gehele getallen, en meer in het bijzonder, van natuurlijke getallen. In de getaltheorie is het gebruikelijk
Taak 2.1.3 Versleutelen en dan weer terug... 1
Taak 2.1.3 Versleutelen en dan weer terug Inhoud Taak 2.1.3 Versleutelen en dan weer terug... 1 Inhoud... 1 Inleiding... 2 Encryptie en Decryptie... 3 Symmetrisch... 3 Asymmetrisch... 3 Waarom Encryptie
Priemfactoren. Grote getallen. Geavanceerde methoden. Hoe ontbind je een getal N in priemfactoren?
Docentenhandleiding Inhoudsopgave Docentenhandleiding... 1 Inhoudsopgave... 2 Priemfactoren... 3 Grote getallen... 3 Geavanceerde methoden... 3 Primaliteit en factorisatie... 4 Literatuur... 4 Software...
Hash-functies onder vuur
De situatie van MD5 en SHA-1 Hash-functies onder vuur Auteur: Benne de Weger > Benne (dr B.M.M.) de Weger is universitair docent in de cryptologie-groep van de Faculteit Wiskunde en Informatica van de
Eerste Deeltoets Security 22 mei 2015, , Beatrix 7e.
Eerste Deeltoets Security 22 mei 2015, 13.30 15.30, Beatrix 7e. Motiveer je antwoorden kort! Zet je mobiel uit. Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe
Uitwerking tentamen Analyse van Algoritmen, 29 januari
Uitwerking tentamen Analyse van Algoritmen, 29 januari 2007. (a) De buitenste for-lus kent N = 5 iteraties. Na iedere iteratie ziet de rij getallen er als volgt uit: i rij na i e iteratie 2 5 4 6 2 2 4
Cryptografie met krommen. Reinier Bröker. Universiteit Leiden
Cryptografie met krommen Reinier Bröker Universiteit Leiden Nationale Wiskundedagen Februari 2006 Cryptografie Cryptografie gaat over geheimschriften en het versleutelen van informatie. Voorbeelden. Klassieke
Magidoku s en verborgen symmetrieën
Uitwerking Puzzel 92-6 Magidoku s en verborgen symmetrieën Wobien Doyer Lieke de Rooij Een Latijns vierkant van orde n, is een vierkante matrix, gevuld met n verschillende symbolen waarvan elk precies
Programmeren A. Genetisch Programma voor het Partitie Probleem. begeleiding:
Programmeren A Genetisch Programma voor het Partitie Probleem begeleiding: Inleiding Het Partitie Probleem luidt als volgt: Gegeven een verzameling van n positieve integers, vindt twee disjuncte deelverzamelingen
AANVALLEN OP WES3 + LEN SPEK & HIDDE WIERINGA
AANVALLEN OP WES3 + LEN SPEK & HIDDE WIERINGA Inleiding De uitdagende opdracht van het vak Algebra & Security luidde als volgt: Vind de sleutel die is gebruikt bij het encrypten van de gegeven plain-cyphertext
Verzending van gestructureerde berichten via SFTP Veel gestelde vragen (FAQ)
Verzending van gestructureerde berichten via SFTP Veel gestelde vragen (FAQ) 1 Algemeen Wat is SFTP? SFTP staat voor SSH File Transfer Protocol of Secure File Transfer Protocol en maakt deel uit van SSH
OPLOSSINGEN VAN DE OEFENINGEN
OPLOSSINGEN VAN DE OEFENINGEN 1.3.1. Er zijn 42 mogelijke vercijferingen. 2.3.4. De uitkomsten zijn 0, 4 en 4 1 = 4. 2.3.6. Omdat 10 = 1 in Z 9 vinden we dat x = c 0 +... + c m = c 0 +... + c m. Het getal
Sleutelbeheer: noodzaak bij een veilig Internet
Sleutelbeheer: noodzaak bij een veilig Internet Samenvatting Voor het beveiligen van verkeersstromen over het Internet of een intranet is één van de mogelijke maatregelen encryptie. Met grafische technieken
Beschrijving pseudonimisatieplatform ZorgTTP
Beschrijving pseudonimisatieplatform ZorgTTP copyright ZorgTTP 2016 De rechten van intellectuele en industriële eigendom, waaronder het auteursrecht, op alle informatie in dit document berusten bij ZorgTTP
De wiskunde en toepassing. van de cryptologie
De wiskunde en toepassing van de cryptologie Honours Class TU/e 4 Januari 2010 Henk C.A. van Tilborg 1 Beschermen van digitale gegevens. Bijna alle informatie (muziek, video, foto's, documenten, bestanden)
Ontmanteling contactloze chipkaart
Persverklaring, Digital Security, Radboud Universiteit Nijmegen, 12 maart 2008 Ontmanteling contactloze chipkaart Samenvatting Vrijdag 7 maart 2008 hebben onderzoekers en studenten van de onderzoeksgroep
Geldwisselprobleem van Frobenius
Geldwisselprobleem van Frobenius Karin van de Meeberg en Dieuwertje Ewalts 12 december 2001 1 Inhoudsopgave 1 Inleiding 3 2 Afspraken 3 3 Is er wel zo n g? 3 4 Eén waarde 4 5 Twee waarden 4 6 Lampenalgoritme
7 Deelbaarheid. 7.1 Deelbaarheid WIS7 1
WIS7 1 7 Deelbaarheid 7.1 Deelbaarheid Deelbaarheid Voor geheeltallige d en n met d > 0 zeggen we dat d een deler is van n, en ook dat n deelbaar is door d, als n d een geheel getal is. Notatie: d\n k
Spreekbeurt Nederlands Cryptologie
Spreekbeurt Nederlands Cryptologie Spreekbeurt door een scholier 1371 woorden 5 maart 2006 6,2 25 keer beoordeeld Vak Nederlands Cryptologie Algemeen Cryptologie bestaat uit twee Griekse woorden: krypto
Digitaal e-mail certificaat Ondertekenen en encryptie. De meest recente versie van dit document kunt u vinden op: www.ensbergen.nl
Digitaal e-mail certificaat Ondertekenen en encryptie De meest recente versie van dit document kunt u vinden op: www.ensbergen.nl Index 1 Inleiding... 4 1.1 Algemeen...4 1.2 Leeswijzer...4 2 Private key
Zoek- en sorteeralgoritmen en hashing
Zoek- en sorteeralgoritmen en hashing Femke Berendsen (3689301) en Merel van Schieveen (3510190) 9 april 2013 1 Inhoudsopgave 1 Inleiding 3 2 Zoek- en sorteeralgoritmen 3 2.1 Grote O notatie..........................
Tweede Toets Security 2 november 2015, , Educ-α.
Tweede Toets Security 2 november 2015, 8.30 10.30, Educ-α. Motiveer je antwoorden kort! Zet je mobiel uit. Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je
Cryptografie Theorie in de Praktijk
Cryptografie Theorie in de Praktijk Luuk Danes dinsdag 10 februari 2015 PvIB - Hilversum Wat ga ik vandaag niet vertellen? Wat ga ik vandaag niet vertellen? Spartaanse Skytale Ceasar cipher Playfair cipher
Uitwerking puzzel 91-7: Je kunt het schudden
Uitwerking puzzel 91-7: Je kunt het schudden Het credit voor deze puzzel gaat naar Frans van Hoeve. Hij stuurde het ons, in een iets andere vorm, met titel Penny-flipping problem. Hij was het tegengekomen
FACTORISATIE EN CRYPTOGRAFIE
FACTORISATIE EN CRYPTOGRAFIE COMPUTERPRACTICUM UvA-MASTERCLASS WISKUNDE 1993 G.C.M. Ruitenburg Faculteit Wiskunde en Informatica Universiteit van Amsterdam 1993 INLEIDING In dit computer prakticum volgen
Recursion. Introductie 37. Leerkern 37. Terugkoppeling 40. Uitwerking van de opgaven 40
Recursion Introductie 37 Leerkern 37 5.1 Foundations of recursion 37 5.2 Recursive analysis 37 5.3 Applications of recursion 38 Terugkoppeling 40 Uitwerking van de opgaven 40 Hoofdstuk 5 Recursion I N
1 Delers 1. 3 Grootste gemene deler en kleinste gemene veelvoud 12
Katern 2 Getaltheorie Inhoudsopgave 1 Delers 1 2 Deelbaarheid door 2, 3, 5, 9 en 11 6 3 Grootste gemene deler en kleinste gemene veelvoud 12 1 Delers In Katern 1 heb je geleerd wat een deler van een getal
Download de software - U vindt deze op onze website: www.no-backup.eu
Installatie Business (Windows) Download de software - U vindt deze op onze website: www.no-backup.eu -------------------------------------------------------------------------------------------------------
Vakbijlage. Forensisch gebruik van bestandskenmerken. Inhoudsopgave. 1. De vakbijlage algemeen. 3. Bestandskenmerken. 2. Inleiding
Vakbijlage Forensisch gebruik van bestandskenmerken Inhoudsopgave 1. De vakbijlage algemeen 2. Inleiding 3 Bestandskenmerken 4. Niet-omkeerbare hashalgoritmen 5. Forensische toepassingen 6. De praktijk
In het voorgaande artikel werd aangegeven hoe de vaste verdeling van cijfers in getallen, zoals deze voortvloeit
ADMINISTRATIE Cijferanalyse met behulp van Benford s Law (2) HET LIJKT INGEWIKKELDER DAN HET IS In het voorgaande artikel werd aangegeven hoe de vaste verdeling van cijfers in getallen, zoals deze voortvloeit
Oefening 4.3. Zoek een positief natuurlijk getal zodanig dat de helft een kwadraat is, een derde is een derdemacht en een vijfde is een vijfdemacht.
4 Modulair rekenen Oefening 4.1. Merk op dat 2 5 9 2 = 2592. Bestaat er een ander getal van de vorm 25ab dat gelijk is aan 2 5 a b? (Met 25ab bedoelen we een getal waarvan a het cijfer voor de tientallen
Worteltrekken modulo een priemgetal: van klok tot cutting edge. Roland van der Veen
Worteltrekken modulo een priemgetal: van klok tot cutting edge Roland van der Veen Modulorekenen Twee getallen a en b zijn gelijk modulo p als ze een veelvoud van p verschillen. Notatie: a = b mod p Bijvoorbeeld:
PG blok 4 werkboek bijeenkomst 4 en 5
2015-2015 PG blok 4 werkboek bijeenkomst 4 en 5 Inhoud Kenmerken van deelbaarheid (herhaling)...1 Ontbinden in factoren...1 Priemgetallen (herhaling)...2 Ontbinden in priemfactoren...2 KGV (Kleinste Gemene
De Hamming-code. de wiskunde van het fouten verbeteren in digitale gegevens. Benne de Weger Faculteit Wiskunde en Informatica, TU/e 1/21
De Hamming-code de wiskunde van het fouten verbeteren in digitale gegevens Benne de Weger Faculteit Wiskunde en Informatica, TU/e 1/21 Waar gaat coderen over? Digitale opslag van gegevens gebeurt in bits
Eigenschap (Principe van welordening) Elke niet-lege deelverzameling V N bevat een kleinste element.
Hoofdstuk 2 De regels van het spel 2.1 De gehele getallen Grof gezegd kunnen we de (elementaire) getaltheorie omschrijven als de wiskunde van de getallen 1, 2, 3, 4,... die we ook de natuurlijke getallen
Beveiligen alternatieve media. Datum 25 november 2016 Status Definitief
Beveiligen alternatieve media Datum 25 november 2016 Status Definitief Inhoudsopgave Inleiding... 3 1. Beveiliging van Alternatieve Media... 4 1.1 Gebruik maken van BAM... 4 1.2 Zelf een versleuteld bestand
Practicum algemeen. 1 Diagrammen maken 2 Lineair verband en evenredig verband 3 Het schrijven van een verslag
Practicum algemeen 1 Diagrammen maken 2 Lineair verband en evenredig verband 3 Het schrijven van een verslag 1 Diagrammen maken Onafhankelijke grootheid en afhankelijke grootheid In veel experimenten wordt
Oefening 4.3. Zoek een positief natuurlijk getal zodanig dat de helft een kwadraat is, een derde is een derdemacht en een vijfde is een vijfdemacht.
4 Modulair rekenen Oefening 4.1. Merk op dat 2 5 9 2 2592. Bestaat er een ander getal van de vorm 25ab dat gelijk is aan 2 5 a b? (Met 25ab bedoelen we een getal waarvan a het cijfer voor de tientallen
HOOFDSTUK 3: Architecturale aspecten van beveiliging
HOOFDSTUK 3: Architecturale aspecten van beveiliging noodzaak steeds grotere en meer publieke netwerken steeds meer de moeite voor kwaadwillige personen steeds meer persoonlijke gegevens aangekoppeld deelaspecten
Information Managing Day 2017 De rol van information management in een smart Curaçao. 12 mei Drs. ing. Elgeline Martis Hoofd CARICERT
Information Managing Day 2017 De rol van information management in een smart Curaçao 12 mei 2017 Drs. ing. Elgeline Martis Hoofd CARICERT Topics o Introductie CARICERT o Digitale Ontwikkelingen o Beveiligingsrisico
Uitwerkingen van geselecteerde opgaven (laatste update 4 Januari 2018) Zebra 50. De Wiskunde van Rubik s Kubus.
Uitwerkingen van geselecteerde opgaven (laatste update 4 Januari 2018) Zebra 50. De Wiskunde van Rubik s Kubus. Opgave 1. Niet alle mogelijke posities zijn door middel van draaien te bereiken. Het is bijvoorbeeld
Project 4 - Centrale Bank. Rick van Vonderen TI1C
Project 4 - Centrale Bank Rick van Vonderen 0945444 TI1C 23 mei 2018 Inhoudsopgave 1 Inleiding 2 2 Beheren 3 2.1 Git...................................................... 3 2.2 Risicolog...................................................
11. Les 11 Vermenigvuldigen met 1. CC Naamsvermelding-GelijkDelen 3.0 Nederland licentie.
11. Les 11 Vermenigvuldigen met 1 Auteur Its Academy Laatst gewijzigd Licentie Webadres 18 December 2014 CC Naamsvermelding-GelijkDelen 3.0 Nederland licentie http://maken.wikiwijs.nl/45945 Dit lesmateriaal
m.b.v. digitale certificaten en PKI Versie: mei 2002 Beknopte Dienstbeschrijving beveiligen van e-mail
Beknopte dienstbeschrijving Beveiligen van e-mail m.b.v. digitale certificaten en PKI Document: Versie: mei 2002 Beknopte Dienstbeschrijving beveiligen van e-mail Inhoudsopgave 1. Inleiding 2 2. Snel te
Introductie in cryptografie
LinuxFocus article number 243 http://linuxfocus.org Introductie in cryptografie door Pierre Loidreau Over de auteur: Pierre werkt als docent/onderzoeker aan de ENSTA (Ecole
Aanvullende tekst bij hoofdstuk 1
Aanvullende tekst bij hoofdstuk 1 Wortels uit willekeurige getallen In paragraaf 1.3.5 hebben we het worteltrekalgoritme besproken. Dat deden we aan de hand van de relatie tussen de (van tevoren gegeven)
Examen VWO - Compex. wiskunde A1
wiskunde A1 Examen VWO - Compex Voorbereidend Wetenschappelijk Onderwijs Tijdvak 1 Woensdag 25 mei totale examentijd 3 uur 20 05 Vragen 14 tot en met 21 In dit deel staan de vragen waarbij de computer
Projectieve Vlakken en Codes
Projectieve Vlakken en Codes 1. De Fanocode Foutdetecterende en foutverbeterende codes. Anna en Bart doen mee aan een spelprogramma voor koppels. De ene helft van de deelnemers krijgt elk een kaart waarop
Hoofdstuk 6. Congruentierekening. 6.1 Congruenties
Hoofdstuk 6 Congruentierekening 6.1 Congruenties We hebben waarschijnlijk allemaal wel eens opgemerkt dat bij vermenigvuldigen van twee getallen de laatste cijfers als het ware meevermenigvuldigen. Stel
