Kryptering
Begreber Klartekst (plaintext) Krypteret tekst (ciphertext) Nøgler (keys) Symmetrisk nøgle Nøglepar (public - private keys) Algoritmer (ciphers) DES, AES (symmetriske nøgler) RSA, DSA (public - private nøglepar) Digitale fingeraftryk (Message Digests) Digitale signaturer Certifikater 20-04-2018 ITJEM1/jrt
DES algoritmen DES (Data Encryption Standard) algoritmen 56 bits symmetrisk nøgle - 64 bits datablokke. Algoritmen er "næsten" symmetrisk og meget hurtig (specielt i hardware). Er ikke tilstrækkelig sikker til de fleste formål nøgle data krypterede data DES SED 20-04-2018 ITJEM1/jrt
AES algoritmen AES (Advanced Encryption Standard) algoritmen 128 bits datablokke og symmetriske nøgler på 128, 192 eller 256 bits. Er hurtig i såvel hardware som software og regnes pt for sikker 20-04-2018 ITJEM1/jrt
RSA algoritmen (Rivest, Shamir and Adleman) Asymmetriske (public - private) nøgler. Relativ langsom men sikker primtal p, q - efter RSA LABs anbefaling i størrelses orden 1024 bits n = pq, z = (p - 1)(q - 1) vælg e så e < n og e og z ikke har fælles faktorer find d så ed - 1 kan divideres med z med rest = 0 (eller ed mod z = 1) public key er (n, e) - private key er (n, d) 20-04-2018 ITJEM1/jrt
RSA eksempel p = 5, q = 11 giver n = pq = 55, z = (p - 1)(q - 1) = 40 e = 7, og d = 23 vælges/beregnes og dermed public key = (n, e) = (55, 7) private key = (n, d) = (55, 23) m = 19 skal krypteres (og dekrypteres): c = m^e mod n = 19^7 mod 55 = 893871739 mod 55 = 24 m = c^d mod n = 24^23 mod 55 = 55572324035428505185378394701824 mod 55 = 19 20-04-2018 ITJEM1/jrt
Message Digest (digitalt fingeraftryk) MD5 input transformeres til en 128 bits streng SHA-1 input transformeres til en 160 bits streng 20-04-2018 ITJEM1/jrt
Digitale signaturer En digital signatur kan sikre ægthed og integritet, men normalt ikke fortrolighed Et passende public-private nøglepar og et digitalt fingeraftryk (message digest) anvendes De følgende skitser viser signering og verifikation 20-04-2018 ITJEM1/jrt
Signering af JAR fil 20-04-2018 ITJEM1/jrt
Verifikation af signatur 20-04-2018 ITJEM1/jrt
X.509 Certifikater Et X.509 certifikat er en fil der blandt andet indeholder: A's public key Oplysninger om A Oplysninger om B ... Digitalt fingeraftryk af informationerne ovenfor, krypteret med B's private key Hvis A og B er identiske, er certifikatet selvsigneret og kaldes et rodcertifikat 20-04-2018 ITJEM1/jrt
Certifikatkæder A's nøgle mv verificeret af B B's nøgle mv X vil normalt være et anerkendt certificeringsfirma som eksempelvis VeriSign B's nøgle mv verificeret af C C's nøgle mv verificeret af X X's nøgle mv verificeret af X 20-04-2018 ITJEM1/jrt
20-04-2018 ITJEM1/jrt