Fredag 12. januar David Pisinger
|
|
- Martin Bjerre
- 7 år siden
- Visninger:
Transkript
1 Videregående Algoritmik, DIKU 2006/07 Fredag 2. januar David Pisinger Kryptering Spartanere (500 f.kr.) strimmelrulle viklet omkring cylinder Julius Cæsar: substituering af bogstaver [frekvensanalyse] Simone de Crema (40): vokaler har flere substitutter Enigma maskine (932): substitution af bogstaver, positionsafhængig Regler Kryptering Afsender og modtager aftaler (nøgle, nøgle ) Afsender koder klartekst (nøgle) Modtager afkoder chiffertekst (nøgle ) Afsender og modtager skal aftale nøgler på forhånd Dette er ikke realistisk på Internettet M encrypt C = M decrypt key key M Diffe-Hellman (976) offentlig-nøgle kryptosystem Sikkerhed bør ligge i nøglen, ikke i algoritmen Brug aldrig samme nøgle til to meddelelser Brug aldrig to nøgler til samme meddelelse Underestimer ikke fjenden 2 RSA kryptosystemet (Rivest, Shamir, Adleman 978) Offentlig nøgle (public key) P Hemmelig nøgle (secret key) S P A S A P B S B En besked er f.x. en binær streng. Domænet M. P A ( ), S A ( ) P B ( ), S B ( ) bijektive funktioner, dvs. permutationer M = S A (P A (M)) M = P A (S A (M)) dvs. P A og S A er hinandens inverse Kun kan udregne S A ( ) Kun kan udregne S B ( ) Alle kan udregne P A ( ),P B ( ) for alle M M for alle M M encrypt decrypt M P A C = P A (M) S A M RSA kryptosystemet Digital signatur σ underskriver sig med M = udregner digital signatur σ = S A (M ) σ = S A (M ) M S A (M,σ) M = P A (σ) P A M = M? 3 4
2 RSA kryptosystemet RSA kryptosystemet Find to store primtal p og q hvor p q (gerne 52 bit) 2 Udregn n = pq 3 Vælg lille ulige heltal e som er relativt primisk med φ(n) 4 Udregn d som multiplikativt inverse af e modulo φ(n) 5 RSA public key: P = (e, n) 6 RSA secret key: S = (d, n) Indsigt Hvis kender faktorisering n = pq da kender jeg φ(n) = (p )(q ) og dermed strukturen af Z n. Hvis jeg ikke kender φ(n) kan jeg ikke udregne multiplikativt inverse af e modulo φ(n). Kinesisk restklassesætning tillader at jeg regner i (Z p Z q ) frem for Z n. Dette udnyttes i korrekthedsbevis for algoritmen. I skridt 3: Størrelsen af Z n φ(n) = n a n ( ) a Da n = pq fås ( φ(n) = pq )( ) = pq q p+ = (p )(q ) p q I skridt 4: Algoritme korollar 3.26 bestemmer d entydigt Transformationer for M Z n Public key P = (e,n) transformation P(M) = M e mod n Secret key S = (d,n) transformation S(C) = C d mod n 5 6 Eksempel Finder to store primtal p = 5, q = Udregner n = pq = 55 Vi arbejder over gruppen Z 55 Størrelse af Z 55 er φ(n) = (5 )( ) = 4 0 = 40 Vælg tilfældigt ulige heltal e = 7 Find multiplikativt inverse d = 23 af tallet e i gruppen Z 40 Public key (e, n) = (7, 55) Secret key (d, n) = (23, 55) Besked M = 8 P(M) = M e mod n = 8 7 mod 55 = mod 55 = 2 = C S(C) = C d mod n = 2 23 mod 55 = mod 55 = 8 = M M e og C d udregnes ikke, brug MODULAR-EXPONENTIATION 7 Køretid af RSA Public key og Secret key operationer MODULAR-EXPONENTIATION benyttes køretid O(β 3 ) hvis β bit lange tal public key (e,n) hvor e er et lille heltal loge = O() og logn β secret key (d,n) logd β og logn β public key transformation M e mod n O() multiplikationer, O(β 2 ) bit operationer secret key transformation C d mod n O(β) multiplikationer, O(β 3 ) bit operationer Vælger e lille så offentlig nøgle transformation hurtig Et løst overslag Med β = 024 bit, kræver afkodning 0 9 bit-operationer Hurtig CPU kan beregne 0 9 multiplikationer/sek Hvis CPU kan multiplicere to 64-bit tal i hardware, svarer det til 64 2 = 4096 bit-operationer samtidigt CPU klarer = bit-operationer/sek Ideelt kan vi kode 4096 tal af længde 024 bit/sek 8
3 Korrekthed af RSA kryptosystemet Korrekthed af RSA kryptosystemet P(M) = M e mod n S(C) = C d mod n Vil vise at S A og P A definerer inverse transformation af Z n. M = S A (P A (M)) Bevis: For enhver besked M Z n M = P A (S A (M)) P(S(M)) = S(P(M)) = M ed mod n Da e og d multiplikativt inverse modulo φ(n) = (p )(q ) ed mod (p )(q ) ed = + k(p )(q ) for et heltal k Z. Hvis M 0 (mod p) gælder Tilsvarende vises M ed M (mod q) for alle M. Kinesisk restklassesætning, korollar 3.29 giver } M ed M (mod p) M ed M ed M (mod n) M (mod q) for alle M. M ed M +k(p )(q ) (mod p) M(M p ) k(q ) (mod p) M() k(q ) (mod p) M (mod p) [theorem 3.3, M Z p] Hvis M 0 (mod p) gælder M ed M (mod p) Så ovenstående gælder for alle M. 9 0 RSA kryptosystemets sikkerhed Offentlige nøgle er P = (e, n). Hvis fjenden kan faktorisere n = pq så kan han bruge RSA algoritmens skridt 2-4 til at finde d i den hemmelige nøgle S = (d,n). Hvis faktorisering er let nemt at bryde RSA Hvis faktorisering er svært måske svært at bryde RSA Kryptering af lang besked Offentlig-nøgle system sikrer Kontrol af afsender-modtager Kryptering af besked Et offentlig-nøgle system er beregningsmæssigt dyrt Offentlig-nøgle systemet bruges til at kontrollere afsendermodtager Offentlig-nøgle systemet bruges til at udveksle simplere nøgler Simplere kryptosystem bruges til lange besked Effektiv digital signatur (s.866) Hash-funktion h : M N M M h(m) h(m ) (eller i hvert fald svært at finde M ) h(m) er et kort (fx. 60-bit) fingeraftryk af M udregner h(m) sender (M,S A (h(m))) udregner t = h(m) udregner t 2 = P A (S A (h(m)) hvis t = t 2 er besked ikke blevet ændret afsender er helt sikkert Offentlig myndighed T Antag at alle kan stole på T Alle kender public key P T får certifikat S T (M ) på at M = s offentlige nøgle er P A sender certifikat S T (M) med M Alle kan afkode S T (M), og ved at signerede M 2
4 At finde primtal Egenskaber ved primtal Der findes heldigvis mange primtal Lad π(n) være antallet af primtal mindre end n. Dvs. π(n) er tæt på n/lnn. Naiv algoritme π(n) lim n n/lnn = n = 0 9 π(n) For at teste om n er et primtal, divideres det med alle heltal Eksponentiel køretid! Input: Θ(logn) bits Køretid: O( n) 2,..., n Lad m = log n, dvs. 2m = log( n) 2 = logn Input: Θ(2m) bits Køretid: O(2 m ) Lad Z + n = Z n \ {0} = {,2,...,n } Husk at Z n = {a Z n : gcd(a,n) = } Hvis n er primtal så er Z n = Z + n Theorem 3.34 Hvis n er primtal og e N (n > 2, e ) så har ligningen x 2 (mod n e ) kun to rødder: x = og x = (trivielle rødder) Fermats [lille] theorem n er primtal a n (mod n) hvilket er ækvivalent med n er sammensat a n (mod n) Desværre gælder ikke n er primtal a n (mod n) 3 4 Pseudoprimtal n er base-a pseudoprimtal hvis n er sammensat og Eksempel a n (mod n) 34 = 3 er base-2 pseudoprimtal da Pseudoprimtalstest 2 34 (mod 3)4 Givet n som vi skal afgøre om er et primtal Vælg a Z + n Udregn om a n (mod n) Hvis a n (mod n) så helt sikkert sammensat Hvis a n (mod n) så primtal eller pseudoprimtal Rimeligt god primtalstest Brug a = 2 i ovenstående algoritme { 2 n primtal (mod n) pseudoprimtal Fejler kun for 22 værdier af n Randomiserede algoritmer Algoritme som benytter tilfældigt tal r i sine beregninger Varianter input random r output Algoritmen giver altid korrekt svar, men køretiden afhænger af r. 2 Algoritmen returnerer et korrekt svar med en vis sandsynlighed, køretid er altid samme. Eksempler på randomiserede algoritmer: QUICKSORT worst-case tid: O(n 2 ) randomiseret: O(nlogn) med stor sandsynlighed. 2 MIN-CUT finder min-cut i graf (V,E) med sandsynlighed n 2 køretid O(n 2 logn), n = V. 6
5 Randomiserede algoritmer (eksempel) Randomiserede algoritmer Algoritme til at finde minimalt snit i graf G = (V,E) MINCUT(V, E) while V > 2 do 2 pick randomly an edge (u,v) in E 3 contract the edge, while preserving multi-edges 4 remove all loops 5 output remaining edges Sammentrækning (contracting) af en kant (u, v) betyder at der tilføjes en ny knude w, alle kanter (u,x) eller (v,x) erstattes med (w,x) og herefter slettes u og v fra grafen G [] R. Motwani and P. Raghavan. Randomized Algorithms. Cambridge University Press, New York (NY), Antag at vi skal besvare et ja-nej spørgsmål S. Vi har en randomiseret algoritme R(S,r) som Baseret på et tilfældigt tal r svarer ja - nej Hvis den svarer nej er den helt sikker på sit svar Hvis den svarer ja er den p < sikker på sit svar Hvis vi kalder den randomiserede algoritme k gange med forskellige r og hver gang får ja er sandsynligheden for at S = nej : ( p) k Eksempel: Hvis p = 0.5, og svarer ja k = 00 gange, er sandsynligheden for at S = nej ( 0.5) 00 = Hvis p = 0., og svarer ja k = 00 gange, er sandsynligheden for at S = nej ( 0.) 00 = Randomiseret algoritme Pseudoprimtalstest Hvad er bedst:. For 50% af input svarer algoritmen rigtigt 2. For alle input svarer algoritmn 50% rigtigt Vælg tilfældigt a Z n a n (mod n) { primtal pseudoprimtal Formelt: sandsynligheden p for at et ja-svar er rigtigt. r, I I, I 2 I, i I : p(i,r) = 00% 2. i I, r : p(i,r) 50% Carmichael tal n = 56,05,729,2465,282,660,89,..., For alle a a n (mod n) Pseudoprimtal for alle baser a Pseudoprimtalstest kan ikke udvides til randomiseret algoritme der afhænger af a Carmichael tal er sjældne: 255 stk under stk under stk under
6 Bedre pseudoprimtalstest Eksempel på primtalstest For alle e N (bruger e = ) n er primtal x 2 (mod n e ) har løsning x = ± n er sammensat x 2 (mod n e ) har løsning x ± For alle a N n er primtal a n (mod n) n er sammensat a n (mod n) WITNESS-COMPOSITE(a, n) n = 2 t u hvor t og u ulige 2 x 0 MODULAR-EXPONENTIATION(a,u,n) 3 for i to t do 4 x i xi 2 mod n 5 if x i = and x i and x i n then 6 return TRUE x i ± (mod n) og x i xi 2 (mod n) 7 if x t then 8 return TRUE x t = (a n mod n) 9 return FALSE Hvis returnerer TRUE så er n er sammensat Hvis returnerer FALSE så er n måske primtal 2 Carmicahel tal n = 56 = 5 Vælgt tifældigt a f.eks. a = 7 Ønsker at teste n = = = u 2 t n er sammensat a n (mod n) MODULAR-EXPONENTIATION Første 6 bit køres normalt Sidste 4 bit alene kvadreringer n er sammensat x 2 (mod n) har løsning x ± Håndkørsel af MODULAR-EXPONENTIATION i bit c d (a 280 ) 2 = a 560 = (mod n) Dvs. med x = a 280 haves så er n sammensat x 2 (mod n) 22 Miller-Rabin s algoritme Input: ulige heltal n større end 2, s antal forsøg MILLER-RABIN(n, s) for j to s do 2 a RANDOM(,n ) 3 if WITNESS-COMPOSITE(a,n) then 4 return COMPOSITE Definitely 5 return PRIME Almost for sure Faktorisering af heltal er svært (Afsnit 3.9 kursorisk) Det er svært at faktorisere heltal Vi har ikke bevis for at effektiv algoritme ikke findes Hvis nogen finder en effektiv algoritme kan de bryde RSA og indkassere stor præmie Bedste algoritmer kørt på supercomputere kan ikke faktorisere vilkårligt 024-bit tal (p og q blev valgt som 52-bit så n er 024-bit) Theorem 3.38: Hvis n er ulige og sammensat, så er antallet af vidner til at n er sammensat mindst n 2. Theorem 3.39: For et ulige heltal n > 2 og pos. heltal s er chancen for at MILLER-RABIN(n, s) svarer forkert højst ( 2) s. Hvis man bruger s = 50 så er chancen for fejl: ( ) 50 =
7 Opsummering RSA offentlig nøgle krypteringssystem Primtalstest Randomiserede algoritmer If, using a randomized method, the probability of error is 2 000, the philosophical question arises: is this a mathematical proof? 25
6. december. Motivation. Internettet: Login til DIKU (med password) Handel med dankort Fortrolig besked Digital signatur
6. december Talteoretiske algoritmer, RSA kryptosystemet, Primtalstest Motivation Definitioner Euclids algoritme Udvidet Euclid RSA kryptosystemet Randominserede algoritmer Rabin-Miller primtalstest Svært
Læs mereNote omkring RSA kryptering. Gert Læssøe Mikkelsen Datalogisk institut Aarhus Universitet
Note omkring RSA kryptering. Gert Læssøe Mikkelsen Datalogisk institut Aarhus Universitet 3. april 2009 1 Kryptering med offentlige nøgler Indtil midt i 1970 erne troede næsten alle, der beskæftigede sig
Læs mereNote omkring RSA kryptering. Gert Læssøe Mikkelsen Datalogisk institut Aarhus Universitet
Note omkring RSA kryptering. Gert Læssøe Mikkelsen Datalogisk institut Aarhus Universitet 24. august 2009 1 Kryptering med offentlige nøgler Indtil midt i 1970 erne troede næsten alle, der beskæftigede
Læs mereCamp om Kryptering. Datasikkerhed, RSA kryptering og faktorisering. Rasmus Lauritsen. August 27,
Camp om Kryptering Datasikkerhed, RSA kryptering og faktorisering Rasmus Lauritsen August 27, 2013 http://users-cs.au.dk/rwl/2013/sciencecamp Indhold Datasikkerhed RSA Kryptering Faktorisering Anvendelse
Læs mereKRYPTOLOGI ( Litt. Peter Landrock & Knud Nissen : Kryptologi)
KRYPTOLOGI ( Litt. Peter Landrock & Knud Nissen : Kryptologi) 1. Klassiske krypteringsmetoder 1.1 Terminologi klartekst kryptotekst kryptering dekryptering 1.2 Monoalfabetiske kryptosystemer 1.3 Additive
Læs mereAf Marc Skov Madsen PhD-studerende Aarhus Universitet email: marc@imf.au.dk
Af Marc Skov Madsen PhD-studerende Aarhus Universitet email: marc@imf.au.dk 1 Besøgstjenesten Jeg vil gerne bruge lidt spalteplads til at reklamere for besøgstjenesten ved Institut for Matematiske Fag
Læs mereKonfidentialitet og kryptografi 31. januar, Jakob I. Pagter
Konfidentialitet og kryptografi 31. januar, 2009 Jakob I. Pagter Oversigt Kryptografi autenticitet vs. fortrolighed ubetinget vs. beregningsmæssig sikkerhed Secret-key fortrolighed Public-key fortrolighed
Læs mereEulers sætning Matematikken bag kryptering og signering v.hj.a. RSA Et offentlig nøgle krypteringssytem
Eulers sætning Matematikken bag kryptering og signering v.hj.a. RSA Et offentlig nøgle krypteringssytem Johan P. Hansen 18. april 2013 Indhold 1 Indbyrdes primiske hele tal 1 2 Regning med rester 3 3 Kryptering
Læs mere6. RSA, og andre public key systemer.
RSA 6.1 6. RSA, og andre public key systemer. (6.1). A skal sende en meddelelse til B. Denne situation forekommer naturligvis utallige gange i vores dagligdag: vi kommunikerer, vi signalerer, vi meddeler
Læs mereMatematikken bag kryptering og signering RSA
Matematikken bag kryptering og signering RSA Oversigt 1 Indbyrdes primiske tal 2 Regning med rester 3 Kryptering og signering ved hjælp af et offentligt nøgle kryptosystem RSA Indbyrdes primiske hele tal
Læs mereMatematikken bag kryptering og signering NemID RSA Foredrag i UNF
Matematikken bag kryptering og signering NemID RSA Foredrag i UNF Disposition 1 PKI - Public Key Infrastructure Symmetrisk kryptografi Asymmetrisk kryptografi 2 Regning med rester Indbyrdes primiske tal
Læs merePrimtalsfaktorisering - nogle nye resultater og anvendelser Regionalmøde Haderslev, 19. november 2003
Primtalsfaktorisering - nogle nye resultater og anvendelser Regionalmøde Haderslev, 19. november 2003 http://home.imf.au.dk/matjph/haderslev.pdf Johan P. Hansen, matjph@imf.au.dk Matematisk Institut, Aarhus
Læs mereRSA Kryptosystemet. Kryptologi ved Datalogisk Institut, Aarhus Universitet
RSA Kryptosystemet Kryptologi ved Datalogisk Institut, Aarhus Universitet 1 Kryptering med RSA Her følger først en kort opridsning af RSA kryptosystemet, som vi senere skal bruge til at lave digitale signaturer.
Læs meresætning: Hvis a og b er heltal da findes heltal s og t så gcd(a, b) = sa + tb.
sætning: Hvis a og b er heltal da findes heltal s og t så gcd(a, b) = sa + tb. lemma: Hvis a, b og c er heltal så gcd(a, b) = 1 og a bc da vil a c. lemma: Hvis p er et primtal og p a 1 a 2 a n hvor hvert
Læs merePrimtalsfaktorisering - nogle nye resultater og anvendelser Regionalmøde Haderslev, 19. november 2003
Primtalsfaktorisering - nogle nye resultater og anvendelser Regionalmøde Haderslev, 19. november 2003 http://home.imf.au.dk/matjph/haderslev.pdf Johan P. Hansen, matjph@imf.au.dk Matematisk Institut, Aarhus
Læs mereKryptering kan vinde over kvante-computere
Regional kursus i matematik i Aabenraa Institut for Matematik Aarhus Universitet matjph@math.au.dk 15. februar 2016 Oversigt 1 Offentlig-privat nøgle kryptering 2 3 4 Offentlig-privat nøgle kryptering
Læs mereAlgoritmer og datastrukturer Course No. 02105 Cheat Sheet 2012. May 15, 2012
Algoritmer og datastrukturer Course No. 02105 Cheat Sheet 2012 May 15, 2012 1 CONTENTS 2012 CONTENTS Contents 1 Kompleksitet 3 1.1 Køretid................................................ 3 1.2 Asymptotisk
Læs mereMatematikken bag kryptering og signering RSA
Matematikken bag kryptering og signering RSA Oversigt 1 Indbyrdes primiske tal 2 Regning med rester 3 Kryptering og signering ved hjælp af et offentligt nøgle kryptosystem RSA Indbyrdes primiske hele tal
Læs mereKryptologi og RSA. Jonas Lindstrøm Jensen (jonas@imf.au.dk)
Kryptologi og RSA Jonas Lindstrøm Jensen (jonas@imf.au.dk) 1 Introduktion Der har formodentlig eksisteret kryptologi lige så længe, som vi har haft et sprog. Ønsket om at kunne sende beskeder, som uvedkommende
Læs mereOpgave 1 Regning med rest
Den digitale signatur - anvendt talteori og kryptologi Opgave 1 Regning med rest Den positive rest, man får, når et helt tal a divideres med et naturligt tal n, betegnes rest(a,n ) Hvis r = rest(a,n) kan
Læs mereAffine - et krypteringssystem
Affine - et krypteringssystem Matematik, når det er bedst Det Affine Krypteringssystem (Affine Cipher) Det Affine Krypteringssystem er en symmetrisk monoalfabetisk substitutionskode, der er baseret på
Læs mereRoskilde Universitetscenter, Datalogisk Afdeling Kryptering. Niels Christian Juul. N&P 11: 2001 April 18th
Roskilde Universitetscenter, Datalogisk Afdeling E-mail: ncjuul@acm.org Kryptering Niels Christian Juul N&P 11: 2001 April 18th Om kryptering, DES, RSA, PGP og SSL Copyright 1998-2001, Niels Christian
Læs mereRSA-kryptosystemet. RSA-kryptosystemet Erik Vestergaard
RSA-kryptosystemet RSA-kryptosystemet Erik Vestergaard Erik Vestergaard www.matematikfysik.dk Erik Vestergaard, 007. Billeder: Forside: istock.com/demo10 Erik Vestergaard www.matematikfysik.dk 3 1. Indledning
Læs mereKøreplan Matematik 1 - FORÅR 2005
Lineær algebra modulo n og kryptologi Køreplan 01005 Matematik 1 - FORÅR 2005 1 Introduktion Kryptologi er en ældgammel disciplin, som går flere tusinde år tilbage i tiden. Idag omfatter disciplinen mange
Læs mereDivisorer. Introduktion. Divisorer og delelighed. Divisionsalgoritmen. Definition (Divisor) Lad d og n være hele tal. Hvis der findes et helt tal q så
Introduktion 1) Hvad er Taleteori? Læren om de hele tal Primtal 2) Formalistisk struktur Definition Lemma Divisorer Definition (Divisor) Lad d og n være hele tal Hvis der findes et helt tal q så d q =
Læs mereTirsdag 12. december David Pisinger
Videregående Algoritmik, DIKU 2006/07 Tirsdag 12. december David Pisinger Resume sidste to gang Sprog L : mængden af instanser for et afgørlighedsproblem hvor svaret er 1. P = {L : L genkendes af en algoritme
Læs mereSkriftlig Eksamen Algoritmer og Datastrukturer (dads)
Skriftlig Eksamen Algoritmer og Datastrukturer (dads) Datalogisk Institut Aarhus Universitet Mandag den 27. maj 2002, kl. 9.00 13.00 Opgave 1 (25%) Denne opgave handler om multiplikation af positive heltal.
Læs mereOpskriv følgende funktioner efter stigende orden med hensyn til O-notationen: 4 n n 3n n 2 /logn 5 n n (logn) 3n n 2 /logn 4 n n 5 n
Side af 0 sider Opgave (%) Ja Nej n er O(0n logn)? n er O(n )? n +n er O(n )? n logn er O(n )? n logn er O(n)? Opgave (%) Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: n
Læs mereInteger Factorization
Integer Factorization Per Leslie Jensen DIKU 2/12-2005 kl. 10:15 Overblik 1 Faktorisering for dummies Primtal og aritmetikkens fundamentalsætning Lille øvelse 2 Hvorfor er det interessant? RSA 3 Metoder
Læs mereKryptografi Anvendt Matematik
Kryptografi Anvendt Matematik af Marc Skov Madsen PhD-studerende Matematisk Institut, Aarhus Universitet email: marc@imf.au.dk Kryptografi p.1/23 Kryptografi - Kryptografi er læren om, hvordan en tekst
Læs mereOpskriv følgende funktioner efter stigende orden med hensyn til O-notationen: (logn) 2 2 n 1/n (logn) n. n 2
Side af sider Opgave (%) Ja Nej n er O(n n)? n er O(n+n )? ( n ) er O( n )? logn er O(n / )? n +n er O(n)? Opgave (%) Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: (logn)
Læs mereOpskriv følgende funktioner efter stigende orden med hensyn til O-notationen: (logn) 5. 5n 2 5 logn. 2 logn
Eksamen august 0 Algoritmer og Datastrukturer (00-ordning) Side af sider Opgave (%) n +n er O(n )? Ja Nej n er O(n )? n+n er O(n. )? n+n er O(8n)? n logn er O(n )? Opgave (%) Opskriv følgende funktioner
Læs mereOpskriv følgende funktioner efter stigende orden med hensyn til O-notationen (bemærk at log n betegner totals logaritmen): n 2 (log n) 2 2.
Eksamen august Algoritmer og Datastrukturer (-ordning) Side af sider Opgave (%) n + n er O(n )? n / er O(n / )? n er O(n log n)? n er O((log n) )? n er Ω(n )? Ja Nej Opgave (%) Opskriv følgende funktioner
Læs mereOpskriv følgende funktioner efter stigende orden med hensyn til O-notationen: n 2 n (log n) 2. 3 n /n 2 n + (log n) 4
Eksamen. kvarter 00 Side 1 af sider Opgave 1 ( %) Ja Nej n log n er O(n / )? n 1/ er O(log n)? n + n er O(n )? n( n + log n) er O(n / )? n er Ω(n )? Opgave ( %) Opskriv følgende funktioner efter stigende
Læs mereTALTEORI Wilsons sætning og Euler-Fermats sætning.
Wilsons sætning og Euler-Fermats sætning, oktober 2008, Kirsten Rosenkilde 1 TALTEORI Wilsons sætning og Euler-Fermats sætning. Disse noter forudsætter et grundlæggende kendskab til talteori som man kan
Læs mereP vs. NP. Niels Grønbæk Matematisk Institut Københavns Universitet 3. feb. 2012
P vs. NP Niels Grønbæk Matematisk Institut Københavns Universitet 3. feb. 2012 Den handelsrejsendes problem Kan det lade sig gøre at besøge n byer forbundet ved et vejnet, G, inden for budget, B? Hvad
Læs mereOpskriv følgende funktioner efter stigende orden med hensyn til O-notationen: n 7 n 1 7 7/n. 7nlogn. 7n 7nlogn n7
Side af 0 sider Opgave (%) Ja Nej /n er O(n )? n (logn) er O(n 3 )? n + n er O(3 n )? n er O((logn) 3 )? nlogn er Ω(n)? Opgave (%) Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen:
Læs mereTalteoriopgaver Træningsophold ved Sorø Akademi 2007
Talteoriopgaver Træningsophold ved Sorø Akademi 2007 18. juli 2007 Opgave 1. Vis at når a, b og c er positive heltal, er et sammensat tal. Løsningsforslag: a 4 + b 4 + 4c 4 + 4a 3 b + 4ab 3 + 6a 2 b 2
Læs mereDATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi
DATALOGISK INSTITUT, AARHUS UNIVERSITET Det Naturvidenskabelige Fakultet EKSAMEN Grundkurser i Datalogi Antal sider i opgavesættet (incl. forsiden): 12 (tolv) Eksamensdag: Torsdag den 11. august 2011,
Læs mereAlgoritmedesign med internetanvendelser ved Keld Helsgaun
Algoritmedesign med internetanvendelser ved Keld Helsgaun 1 Analyse af algoritmer Input Algoritme Output En algoritme er en trinvis metode til løsning af et problem i endelig tid 2 Algoritmebegrebet D.
Læs mereTalteori: Euklids algoritmer, modulær aritmetik
Talteori: r, modulær aritmetik Videregående algoritmik Cormen et al. 31.1 31.4 Tirsdag den 6. januar 2009 1 1 2 Restklasseringene modulo n Grupper og undergrupper Modulær division Divisorer De hele tal
Læs mereSkriftlig Eksamen Algoritmer og Datastrukturer 1. Datalogisk Institut Aarhus Universitet
Side af 1 sider Skriftlig Eksamen Algoritmer og Datastrukturer 1 Datalogisk Institut Aarhus Universitet Dette eksamenssæt består af en kombination af små skriftlige opgaver og multiplechoice-opgaver. Opgaverne
Læs mereIntroduktion til Kryptologi
Introduktion til Kryptologi September 22, 2014 Kryptologi Datasikkerhed Sikker kommunikation over usikre kanaler Kryptografi: Bygge systemer Kryptoanalyse: Bryde systemer Avancerede Protokoller Data er
Læs mereHemmelige koder fra antikken til vore dage
Hemmelige koder fra antikken til vore dage Nils Andersen DM s seniorklub Øst 21. september 2015 En hemmelig meddelelse Sparta, ca. 500 år f.v.t. Skytale: σκῠτ ᾰλίς (gr. lille stok) angrib fra skovbrynet
Læs mereINSTITUT FOR DATALOGI, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi
INSTITUT FOR DATALOGI, AARHUS UNIVERSITET Det Naturvidenskabelige Fakultet EKSAMEN Grundkurser i Datalogi Antal sider i opgavesættet (incl. forsiden): 12 (tolv) Eksamensdag: Fredag den 16. august 2013,
Læs mereSkriftlig Eksamen DM507 Algoritmer og Datastrukturer
Skriftlig Eksamen DM507 Algoritmer og Datastrukturer Institut for Matematik og Datalogi Syddansk Universitet, Odense Mandag den 6. juni 2016, kl. 15:00 19:00 Besvarelsen skal afleveres elektronisk. Se
Læs mereTalteori. Teori og problemløsning. Indhold. Talteori - Teori og problemløsning, marts 2014, Kirsten Rosenkilde.
Indhold 1 Delelighed, primtal og primfaktoropløsning Omskrivning vha. kvadratsætninger 4 3 Antal divisorer 6 4 Største fælles divisor og Euklids algoritme 7 5 Restklasser 9 6 Restklasseregning og kvadratiske
Læs mereSortering. Eksempel: De n tal i sorteret orden
Sortering 1 / 34 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 2 / 34 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden
Læs mereSkriftlig Eksamen Algoritmer og Datastrukturer (dads)
Skriftlig Eksamen Algoritmer og Datastrukturer (dads) Datalogisk Institut Aarhus Universitet Tirsdag den 27. maj 2003, kl. 9.00 3.00 Opgave (25%) For konstanten π = 3.4592... gælder identiteten π 2 6 =
Læs mere2. Gruppen af primiske restklasser.
Primiske restklasser 2.1 2. Gruppen af primiske restklasser. (2.1) Setup. I det følgende betegner n et naturligt tal større end 1. Den additive gruppe af restklasser modulo n betegnes Z/n, og den multiplikative
Læs mereEksamen i Diskret Matematik
Eksamen i Diskret Matematik Første Studieår ved Det Tekniske Fakultet for TT og Design samt Det Ingeniør- og Naturvidenskabelige Fakultet 29. maj 2017. Kl. 9-13. Nærværende eksamenssæt består af 11 nummererede
Læs mereEksamen i Diskret Matematik
Eksamen i Diskret Matematik Første Studieår ved Det Tekniske Fakultet for IT og Design samt Det Ingeniør- og Naturvidenskabelige Fakultet 29. maj 2017. Kl. 9-13. Nærværende eksamenssæt består af 11 nummererede
Læs mereStørre Skriftlig Opgave
Uddannelse: Højere Handelseksamen Skole: Fag og niveau: Informationsteknologi, niveau A Område: Kryptering og Certifikater Vejleder: Werner Burgwald Afleveringsdato: Fredag den 11. februar. Opgavetitel:
Læs mereSkriftlig Eksamen Algoritmer og Sandsynlighed (DM538)
Skriftlig Eksamen Algoritmer og Sandsynlighed (DM538) Institut for Matematik og Datalogi Syddansk Universitet, Odense Fredag den 25. januar 2013 kl. 1013 Alle hjælpemidler (computer, lærebøger, notater,
Læs mereMindste udspændende træ
Mindste udspændende træ Introduktion Repræsentation af vægtede grafer Egenskaber for mindste udspændende træer Prims algoritme Kruskals algoritme Philip Bille Mindste udspændende træ Introduktion Repræsentation
Læs mereFejlkorrigerende koder, secret sharing (og kryptografi)
Fejlkorrigerende koder, secret sharing (og kryptografi) Olav Geil Afdeling for Matematiske Fag Aalborg Universitet Møde for Matematiklærere i Viborg og Ringkøbing amter 7. november, 2006 Oversigt Fejlkorrigerende
Læs mereMindste udspændende træ. Mindste udspændende træ. Introduktion. Introduktion
Philip Bille Introduktion (MST). Udspændende træ af minimal samlet vægt. Introduktion (MST). Udspændende træ af minimal samlet vægt. 0 0 Graf G Ikke sammenhængende Introduktion (MST). Udspændende træ af
Læs mereMatematik YY Foråret Kapitel 1. Grupper og restklasseringe.
Matematik YY Foråret 2004 Elementær talteori Søren Jøndrup og Jørn Olsson Kapitel 1. Grupper og restklasseringe. Vi vil i første omgang betragte forskellige typer ligninger og søge efter heltalsløsninger
Læs mereTalteori. Teori og problemløsning. Indhold. Talteori - Teori og problemløsning, august 2013, Kirsten Rosenkilde.
Indhold 1 Delelighed, primtal og primfaktoropløsning Omskrivning vha. kvadratsætninger 4 3 Antal divisorer 6 4 Største fælles divisor og Euklids algoritme 7 5 Restklasser 9 6 Restklasseregning og kvadratiske
Læs mereDanmarks Tekniske Universitet
side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 6. maj 0. Kursusnavn: Algoritmer og datastrukturer Kursus nr. 06. Tilladte hjælpemidler: Skriftlige hjælpemidler. Varighed: timer Vægtning
Læs mereINSTITUT FOR DATALOGI, AARHUS UNIVERSITET. Science and Technology EKSAMEN. Grundkurser i Datalogi. Algoritmer og Datastrukturer 1 (2003-ordning)
INSTITUT FOR DATALOGI, AARHUS UNIVERSITET Science and Technology EKSAMEN Grundkurser i Datalogi Antal sider i opgavesættet (incl. forsiden): 1 Eksamensdag: Tirsdag den 7. juni 16, kl. 9.-11. Tilladte medbragte
Læs mereMindste udspændende træ. Mindste udspændende træ. Introduktion. Introduktion
Philip Bille Introduktion (MST). Udspændende træ af minimal samlet vægt. Introduktion (MST). Udspændende træ af minimal samlet vægt. 0 0 Graf G Ikke sammenhængende Introduktion (MST). Udspændende træ af
Læs mereIteration af et endomorft kryptosystem. Substitutions-permutations-net (SPN) og inversion. Eksklusiv disjunktion og dens egenskaber
Produktsystemer, substitutions-permutations-net samt lineær og differentiel kryptoanalyse Kryptologi, fredag den 10. februar 2006 Nils Andersen (Stinson 3., afsnit 2.7 3.4 samt side 95) Produkt af kryptosystemer
Læs mereOpskriv følgende funktioner efter stigende orden med hensyn til O-notationen: 5n 4. logn. n 4n 5 n/logn. n n/logn 5n
Algoritmer og Datastrukturer (-ordning) Side af sider Opgave (%) n er O(n 7 )? (logn) er O( n)? n(logn) er O(n)? n er O( n )? n er Ω(n )? Opgave (%) Opskriv følgende funktioner efter stigende orden med
Læs mereDATALOGISK INSTITUT, AARHUS UNIVERSITET
DATALOGISK INSTITUT, AARHUS UNIVERSITET Det Naturvidenskabelige Fakultet EKSAMEN Grundkurser i Datalogi Antal sider i opgavesættet (incl. forsiden): 12 (tolv) Eksamensdag: Fredag den 1. april 200, kl..00-11.00
Læs mereINSTITUT FOR DATALOGI, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi
INSTITUT FOR DATALOGI, AARHUS UNIVERSITET Det Naturvidenskabelige Fakultet EKSAMEN Grundkurser i Datalogi Antal sider i opgavesættet (incl. forsiden): 12 (tolv) Eksamensdag: Torsdag den 21. marts 2013,
Læs mereSortering af information er en fundamental og central opgave.
Sortering 1 / 36 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 6, 9 Mange opgaver er hurtigere i sorteret information (tænk på ordbøger, telefonbøger,
Læs mereKursusgang 3: Autencificering & asymmetrisk kryptering. Krav til autentificering. Kryptering som værktøj ved autentificering.
Krav til autentificering Vi kan acceptere, at modtager (og måske afsender) skal bruge hemmelig nøgle Krav til metode: må ikke kunne brydes på anden måde end ved udtømmende søgning længde af nøgler/hemmeligheder/hashkoder
Læs mereDatastrukturer (recap)
Dictionaries Datastrukturer (recap) Data: Datastruktur = data + operationer herpå En ID (nøgle) + associeret data. Operationer: Datastrukturens egenskaber udgøres af de tilbudte operationer (API for adgang
Læs mereDATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi
DATALOGISK INSTITUT, AARHUS UNIVERSITET Det Naturvidenskabelige Fakultet EKSAMEN Grundkurser i Datalogi Antal sider i opgavesættet (incl. forsiden): 1 (tolv) Eksamensdag: Fredag den 7. august 009, kl.
Læs mereSkriftlig Eksamen Algoritmer og Datastrukturer (DM507)
Skriftlig Eksamen Algoritmer og Datastrukturer (DM507) Institut for Matematik og Datalogi Syddansk Universitet, Odense Onsdag den 0. juni 009, kl. 9 Alle sædvanlige hjælpemidler (lærebøger, notater, osv.)
Læs mereSortering. De n tal i sorteret orden. Eksempel: Kommentarer:
Sortering Sortering Input: Output: n tal De n tal i sorteret orden Eksempel: Kommentarer: 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 Sorteret orden kan være stigende eller faldende. Vi vil i dette kursus
Læs mereSortering af information er en fundamental og central opgave.
Sortering Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 Mange opgaver er hurtigere i sorteret information (tænk på ordbøger, telefonbøger,
Læs mereSortering. Eksempel: De n tal i sorteret orden
Sortering 1 / 32 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 2 / 32 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden
Læs mereOpskriv følgende funktioner efter stigende orden med hensyn til O-notationen: n+logn logn (logn) 7 (3/2) n
Side af sider Opgave (%) Ja Nej n er O( n )? n er O(log n)? n er O(n )? n + er O(0n)? nlogn er O(n / )? Opgave (%) Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: nlogn logn
Læs mereDanmarks Tekniske Universitet
side af 2 sider Danmarks Tekniske Universitet Skriftlig prøve, den 2. maj 200. Kursusnavn Algoritmer og datastrukturer I Kursus nr. 0205. Tilladte hjælpemidler: Alle skriftlige hjælpemidler. Vægtning af
Læs mereSkriftlig Eksamen Algoritmer og Datastrukturer 1. Datalogisk Institut Aarhus Universitet. Mandag den 22. marts 2004, kl
Skriftlig Eksamen Algoritmer og Datastrukturer 1 Datalogisk Institut Aarhus Universitet Mandag den. marts 00, kl..00 11.00 Navn Gerth Stølting Brodal Årskort 1 Dette eksamenssæt består af en kombination
Læs mereDanmarks Tekniske Universitet
side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 6. maj 0. Kursusnavn: Algoritmer og datastrukturer I Kursus nr. 005. Tilladte hjælpemidler: Skriftlige hjælpemidler. Varighed: timer Vægtning
Læs mereDatastrukturer (recap)
Dictionaries Datastrukturer (recap) Data: Datastruktur = data + operationer herpå En ID (nøgle) + associeret data. Operationer: Datastrukturens egenskaber udgøres af de tilbudte operationer (API for adgang
Læs mereDanmarks Tekniske Universitet
side af 2 sider Danmarks Tekniske Universitet Skriftlig prøve, den 2. maj 200. Kursusnavn Algoritmer og datastrukturer Kursus nr. 02326. Tilladte hjælpemidler: Alle hjælpemidler. Vægtning af opgaverne:
Læs mereDanmarks Tekniske Universitet
side af sider Danmarks Tekniske Universitet Skriftlig prøve, den. maj 00. Kursusnavn Algoritmer og datastrukturer Kursus nr. 06. Tilladte hjælpemidler: Alle hjælpemidler. Vægtning af opgaverne: Opgave
Læs mereDM72 Diskret matematik med anvendelser
DM72 Diskret matematik med anvendelser En hurtig gennemgang af de vigtigste resultater. (Dvs. ikke alle resultater). Logik Åbne udsagn 2 + 3 = 5 Prædikater og kvantorer P (x) := x er et primtal x N : n
Læs merePerspektiverende Datalogi 2014 Uge 39 Kryptologi
Perspektiverende Datalogi 2014 Uge 39 Kryptologi Dette dokument beskriver en række opgaver. Diskutter opgaverne i små grupper, under vejledning af jeres instruktor. Tag opgaverne i den rækkefølge de optræder.
Læs mereINSTITUT FOR DATALOGI, AARHUS UNIVERSITET EKSAMEN. Grundkurser i Datalogi. Algoritmer og Datastrukturer 1 (2003-ordning)
INSTITUT FOR DATALOGI, AARHUS UNIVERSITET EKSAMEN Grundkurser i Datalogi Antal sider i opgavesættet (incl. forsiden): 12 (tolv) Eksamensdag: Fredag den 10. august 2012, kl. 9.00-11.00 Eksamenslokale: Finlandsgade
Læs mereGrådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.
Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for
Læs mereNetværksalgoritmer 1
Netværksalgoritmer 1 Netværksalgoritmer Netværksalgoritmer er algoritmer, der udføres på et netværk af computere Deres udførelse er distribueret Omfatter algoritmer for, hvorledes routere sender pakker
Læs mereOpskriv følgende funktioner efter stigende orden med hensyn til O-notationen: 7 n 1/ log n. (log n) 4
Eksamen august 00 Algoritmer og Datastrukturer (00-ordning) Side af sider Opgave (%) n er O(n )? n(log n) er O(n )? n n + (log n) er O(n )? n er O(n )? n er Ω( n )? Opgave (%) Opskriv følgende funktioner
Læs mereGrådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.
Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for
Læs mereMm6: More sorting algorithms: Heap sort and quick sort - October 29, 2008
Algorithms and Architectures I Rasmus Løvenstein Olsen (RLO), Jimmy Jessen Nielsen (JJE) Mm6: More sorting algorithms: Heap sort and quick sort - October 9, 008 Algorithms and Architectures II. Introduction
Læs mereDen digitale signatur
3. Å RG A N G NR. 3 / 2004 Den digitale signatur - anvendt talteori og kryptologi Fra at være noget, der kun angik den militære ledelse og diplomatiet, har kryptologi med brugen af internettet fået direkte
Læs mereOpskriv følgende funktioner efter stigende orden med hensyn til O-notationen: n 3/2. n logn (3/2) n. 2 3logn (3/2) n
Side af 0 sider Opgave (4%) Ja Nej n er O(n / )? n +n er O(n )? (logn) er O( logn )? n er O()? /n er O(logn)? Opgave (4%) Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: logn
Læs mereRSA-KRYPTERING. Studieretningsprojekt. Blerim Cazimi. Frederiksberg Tekniske Gymnasium. Matematik A. Vejleder: Jonas Kromann Olden
14. DEC 2014 RSA-KRYPTERING Studieretningsprojekt Blerim Cazimi Frederiksberg Tekniske Gymnasium Matematik A Vejleder: Jonas Kromann Olden Informationsteknologi B Vejleder: Kenneth Hebel Indhold Indledning...
Læs mereMM05 - Kogt ned. kokken. Jacob Aae Mikkelsen. 23. januar 2007
MM05 - Kogt ned Jacob Aae Mikkelsen kokken 23. januar 2007 1 INDHOLD 1 ARITMETIK I Z Indhold 1 Aritmetik i Z 2 2 Kongruens i Z 4 3 Ringe 6 4 Aritmetik i F[x] 9 5 Kongruens i F[x] og kongruensklasse aritmetik
Læs mereGrundlæggende køretidsanalyse af algoritmer
Grundlæggende køretidsanalyse af algoritmer Algoritmers effektivitet Størrelse af inddata Forskellige mål for køretid Store -notationen Klassiske effektivitetsklasser Martin Zachariasen DIKU 1 Algoritmers
Læs mereHvornår er der økonomi i ITsikkerhed?
Hvornår er der økonomi i ITsikkerhed? Anders Mørk, Dansk Supermarked Erfaringsbaggrund 2 Teoretisk tilgang 3 Den akademiske metode 4 Er det så enkelt? Omkostningerne er relativt enkle at estimere Men hvad
Læs mereKoder og kryptering. Foredrag UNF 4. december 2009 Erik Zenner (Adjunkt, DTU)
Koder og kryptering Foredrag UNF 4. december 2009 Erik Zenner (Adjunkt, DTU) I. Indledende bemærkninger Hvad tænker I på, når I hører kryptologi? Hvad tænker jeg på, når jeg siger kryptologi? Den matematiske
Læs mereIntroduktion til Kryptologi. Mikkel Kamstrup Erlandsen
Introduktion til Kryptologi Mikkel Kamstrup Erlandsen Indhold 1 Introduktion 2 1.1 Om Kryptologi.......................... 2 1.2 Grundlæggende koncepter.................... 2 1.3 Bogstaver som tal........................
Læs mereDATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi
DATALOGISK INSTITUT, AARHUS UNIVERSITET Det Naturvidenskabelige Fakultet EKSAMEN Grundkurser i Datalogi Antal sider i opgavesættet (incl. forsiden): 12 (tolv) Eksamensdag: Torsdag den 26. marts 2009, kl.
Læs mereDanmarks Tekniske Universitet
side af 3 sider anmarks Tekniske Universitet Skriftlig prøve, den 29. maj 203. ursusnavn: lgoritmer og datastrukturer ursus nr. 02326. jælpemidler: Skriftlige hjælpemidler. et er ikke tilladt at medbringe
Læs mereDanmarks Tekniske Universitet
side af 2 sider Danmarks Tekniske Universitet Skriftlig prøve, den 26. maj 2009. Kursusnavn Algoritmik og datastrukturer I Kursus nr. 0205. Tilladte hjælpemidler: Alle skriftlige hjælpemidler. Vægtning
Læs mere