Cryptography and Security in Communication Networks. Data authentication. ETTI - Master - Advanced Wireless Communications

Size: px
Start display at page:

Download "Cryptography and Security in Communication Networks. Data authentication. ETTI - Master - Advanced Wireless Communications"

Transcription

1 Cryptography ad Security i Commuicatio Networks Data autheticatio ETTI - Master - Advaced Wireless Commuicatios

2 Overview Outlie Data itegrity. Data-origi autheticatio. Digital sigature. Cryptographic hash fuctios Defiitio. Security properties ad requiremets. Iterated hash fuctios. Costructios based o block ciphers. Dedicated algorithms. Message Autheticatio Code (MAC) schemes Defiitio. Security model ad requiremets. Iterated MAC algorithms. Costructios based o block ciphers. Costructios based o hash fuctios. Digital sigature schemes Defiitio. Security model. RSA digital sigatures. Digital sigature schemes based o discrete logarithm problem. Octavia Catria 2

3 Data itegrity Data itegrity Detects uauthorized data substitutio, isertio, or deletio. No-malicious (accidetal) modificatios Example: data trasmissio errors. Defese: error detectio codes (CRC, XOR checksum). Malicious (itetioal) modificatios Example: Modify a $10 moey trasfer by addig five 0s. Defese: secure modificatio detectio methods, usually based o a secure hash fuctio. Geeric model for modificatio detectio m Usecured chael Geeric terms: Modificatio Detectio Code (MDC) or Message Itegrity Check (MIC). Octavia Catria MDC geeratio H : H(m)=c Must be protected: itegrity, autheticatio MDC verificatio V : {accept,reject} 3

4 Data-origi autheticatio Data-origi autheticatio allows to verify the idetity of the message origiator through evidece associated with the message. Data-origi autheticatio implies data itegrity. Usually they caot be separated, so itegrity mechaisms implicitly provide data-origi autheticatio, ad vice-versa. Data origi ca be proved by kowledge of a secret. Message autheticatio code: symmetric key scheme (secret key). Digital sigature: asymmetric key scheme (key-pair: private, public). Data autheticatio usig a message autheticatio code m MAC geeratio H K : Usecured chaels H K (m)=c MAC verificatio V K : {accept, reject} Octavia Catria K Key geeratio Distributio of the secret key K Requires cofidetiality ad autheticatio MAC: Message Autheticatio Code 4

5 Digital sigatures Assurace of data itegrity ad origi are ot sufficiet whe the commuicatig parties do ot trust each other: Seder ca dey havig set the message (origi repudiatio). Receiver ca forge the received message. A digital sigature provides data itegrity ad origi assurace as well as o-repudiatio. Private key for sigig. Public key for verifyig the sigature. Resolutio of disputes: A trusted third party ca verify the sigature without kowig the secret sigig key. Data autheticatio usig a digital sigature scheme m Sigature geeratio S Ks : Usecured chaels S Ks (m)=s Sigature verificatio V Kv : {accept, reject} Octavia Catria K s K v Key-pair geeratio Distributio of the public key K v Requires autheticatio 5

6 Cryptographic Hash Fuctios

7 Cryptographic hash fuctios Hash fuctio A hash fuctio is a mappig h :, where = {0,1} * is the set of iput strigs, = {0,1} is the set of -bit hash values. Geeral properties Compressio: Maps a iput bit-strig x of fiite arbitrary legth, to a output bit-strig h(x) of fixed legth. Ease of computatio: h(x) is easy to compute for ay x. Cryptographic hash fuctios Octavia Catria arbitrary message legth Message x Hash fuctio h : h(x) fixed legth hash value (e.g., 160, 256, 512 bits) Special algorithms that satisfy a set of specific properties. Mai applicatio: data autheticatio schemes (data itegrity, message autheticatio, digital sigature). Other applicatios: algorithms for pseudoradom sequece geeratio, i particular key expasio. 7

8 Security properties 1/2 Preimage resistace (oe-way fuctio) Give a hash value y, it is computatioally ifeasible to fid a message x such that h(x) = y (fid ay preimage x of y). Brute force attack is expected to require 2 trials o average. Secod-preimage resistace Give a message x, it is computatioally ifeasible to fid aother message x', x' x such that h(x') = h(x) (fid a 2 d preimage x' of y = h(x), besides x). Brute force attack is expected to require 2 trials o average. Collisio resistace It is computatioally ifeasible to fid ay two messages (x, x'), such that x x' ad h(x) = h(x'). Brute force attack is expected to fid a collisio with high probability after O(2 /2 ) trials (birthday paradox). Octavia Catria 8

9 Security properties 2/2 Relatios betwee properties Collisio resistace is the strogest requiremet: implies 2dpreimage resistace; also implies preimage resistace (for usual hash fuctio costructios). Applicatios may eed oly a subset of these properties. Summary of security requiremets Esure that o cryptaalytic attack is more efficiet tha the brute force attacks (e.g., differetial cryptaalysis, etc.). A -bit hash fuctio should require 2 operatios to fid a preimage or 2d-preimage, ad 2 /2 operatios for a collisio. The mappig should be "radom" ad regular ( h -1 (y) roughly equal to / ). Hash value legth Curretly, mi = 256 bits for collisio resistace. Octavia Catria 9

10 Iterated hash fuctios Typical structure of hash fuctio Iput strigs of arbitrary legth are processed as a sequece of blocks by a compressio fuctio with fixed-legth iput. Chaiig of itermediate results esures that the hash value depeds o all message bits. b m 0 m 1 m L-1 v i = Chaiig variable m i = i-th iput block IV = Iitializatio value b b f = Compressio fuctio IV = v 0 f v 1 f v 2... v L-1 f v L = h(m) Octavia Catria Preprocessig: Pad iput strig such that m 0 mod b. Parse m as m 0 m 1... m L-1 such that m i = b. Hash computatio: v 0 = IV (fixed) v i+1 = f(v i, m i ), for 0 i t-1 h(m) = v L 10

11 Security of iterated hash fuctios Compressio fuctio Must satisfy the security properties of a hash fuctio: 1st-preimage ad 2d-preimage resistace (O(2 )), collisio resistace (O(2 /2 )). Iitial value (IV) is fixed To avoid trivial collisios. E.g., h(m) = h (m ), where m is obtaied from m by discardig m 0 ad IV = v 1. Merkle-Damgård theorem Assume that the paddig is a ijective fuctio x x pad(x) such that x pad(x) = 0 mod b, ad pad(x) icludes the legth of the origial message at the ed (M-D stregtheig). The, if the compressio fuctio is collisio resistat, the hash fuctio is also collisio resistat. Hece, the costructio is safe. The desig (ad cryptaalysis) ca focus o the compressio fuctio. Octavia Catria 11

12 Hash fuctios based o block ciphers Motivatio Desigig a secure compressio fuctio from scratch is a difficult task. We ca try to costruct it usig a existig, trusted primitive: a block cipher. Examples Two dual costructios that are provably secure compressio fuctios (other variats exist). Similar costructios are used i the compressio fuctio of dedicated hash fuctios. Disadvatages Octavia Catria v i K x i v i+1 E Matyas-Meyer-Osias v i+1 = E Vi (x i ) x i Block ciphers are ot actually desiged to operate like this. x i K v i v i+1 E Davies-Meyer v i+1 = E Xi (v i ) v i Block legth might be isufficiet: e.g., AES offers oly 128 bits. Slower tha dedicated hash algorithms. 12

13 Dedicated hash algorithms Dedicated algorithms Optimized desig of the compressio fuctio. The MD4 (Message Digest) family MD4: Algorithm desiged i 1990 by Ro Rivest (b = 512 bits, = 128 bits). Iovative, optimized for SW implemetatio. MD5: Stregtheed variat of MD4 itroduced i 1991 (to elimiate some MD4 weakesses). The mai hash algorithms desiged durig are based o the MD4/MD5 desig ideas: SHA algorithms (NIST), RIPEMD algorithms (Europe), HAVAL (Australia). MD5 ad later SHA-1: most widely used hash fuctios. Successful cryptaalytic attacks o MD4 ad MD5 Collisio attacks o MD4, 1996 ad later: secods o a PC. Successful collisio attacks o MD5 i : 2 34 hash operatios (istead of 2 64 ). Collisio resistace is broke. Octavia Catria 13

14 SHA hash fuctios SHA: Secure Hash Algorithm SHA-1: NIST, 1995, FIPS Ehaced variat of MD4/5. SHA-2: NIST, 2002, FIPS Algorithms with loger hash values, added to provide a security level matchig that of the AES block cipher. Still follow the MD family approach. SHA-3: NIST. Approved i Fial stage of stadardizatio. Differet kid of hash fuctio algorithm. SHA-1 SHA-256 SHA-384 SHA-512 Size of hash value () Message block size (b) Number of rouds/steps Best collisio attack 2 66 (attack) < I 2004, NIST was still trustig SHA-1, plaig to remove it i 2010 (cryptaalytic attacks foud i 2004 were ot covicig). However, successful collisio attacks o SHA-1 were reported i 2005, with 2 69 hash operatios, later improved to Octavia Catria 14

15 MAC schemes

16 Message Autheticatio Code MAC algorithm A MAC algorithm is a family of fuctios h :, where = {0,1} k is the set of keys, = {0,1} * is the set of messages, ad = {0,1} is the set of autheticatio codes. Each key K selects a MAC fuctio istace h K :, h K (x) = h(k, x). Hece, MAC is a keyed hash fuctio. Basic properties Compressio: maps a iput bit-strig x of fiite arbitrary legth to a output bit-strig h K (x) of fixed bit-legth. Ease of computatio: h K (x) is easy to compute for ay K ad iput x. Applicatios Octavia Catria Secret key K arbitrary legth message m MAC fuctio h K : h K (x) fixed legth MAC value (e.g., 128 bits) Message autheticatio (data-origi autheticatio). Also, pseudoradom sequece geeratio, key expasio. 16

17 Security model for MAC Review of security models Security model: must take ito accout the goals of the adversary, the attack models, ad the resources. Security statemet: A adversary caot achieve a particular goal, i a specified attack model, give specified resources. Geeral assumptio A adversary kows the MAC algorithm, but does ot kow the secret MAC key. Attack models Specify what additioal iformatio a attacker ca obtai: kow-message, chose-message, side-chael. Basic adversary goal for message autheticatio The basic goal is to forge messages: produce a message-mac pair (x, h K (x)) that is accepted by the verificatio algorithm. Octavia Catria 17

18 Attack models for MAC Kow-message attack (KMA) The adversary obtais oe or more message-mac pairs (x i, h K (x i )). Usually, a passive attack is sufficiet. Most MAC applicatios expose large amouts of message- MAC pairs (messages with MAC oly, or ecrypt the MAC). Chose-message attack (CMA) The adversary ca choose oe or more messages ad is give the correspodig MAC strigs. Active, stroger attack. Equivalet to (black-box) access either to the MAC geeratio module, or to the MAC verificatio module (guess ad verify). Ca be adaptive or o-adaptive. Some typical applicatios (e.g., autheticatio protocols) expose MAC to such attacks. Side-chael attacks Computatio duratio, power cosumptio, etc. Octavia Catria 18

19 Types of forgery Adversary goals for MAC Selective forgery: Produce a ew message-mac pair for ay message (at least partially cotrol message cotets). Existetial forgery: Produce a ew message-mac pair, but with o cotrol over the message cotets. Verifiable forgery: The adversary kows that the message-mac pair he produced is correct (selective or existetial forgery). Cocrete goals Key recovery: Total break, allows verifiable selective forgery. Message forgery: Forge idividual messages (fid MAC for give message, fid message for give MAC). Compariso Total break is the strogest goal. Existetial forgery is the weakest (the message might ot "make sese" for the app.). Octavia Catria 19

20 Security requiremets Stadard (strog) security requiremet UF-CMA (Uforgeability uder Chose-Message Attack): Existetial forgery (weakest goal) is computatioally ifeasible uder adaptive chose-message attacks (strogest attacks). Give ay set of message-mac pairs {(x i, h K (x i ))}, for some ukow key K, it is computatioally ifeasible to fid ay message-mac pair (x, h K (x)) with x x i. Formally defied usig experimets (game) as for ecryptio. MAC ad radom fuctios A radom fuctio would be a ideal MAC. (Why?) Practically, we try to costruct a secure pseudoradom fuctio h : {0,1} k {0,1} * {0,1}. Security parameters are k ad. We assume i the followig a MAC algorithm that behaves like a pseudoradom fuctio. Octavia Catria 20

21 Brute force attacks Key recovery (exhaustive key search) Start from a kow pair (m, h K0 (m)), try all the 2 k key values K, checkig if h K (m) = h K0 (m). There are about 1+2 k /2 cadidate keys. Must check about k/ more pairs to fid the right oe. Overall complexity: O(2 k ) MAC computatios, ad 1+k/ pairs. Ca be doe off-lie. Message forgery usig brute force Give a message m, guess h K (m): success probability is 2 -. Give h K (m), fid a preimage m: success probability is 2 -. I all these cases, forgery must be verified o-lie. Coclusio: security requiremets About mi(2, 2 k ) MAC computatios for brute force attacks. Esure that o shortcut attack ca do better. Octavia Catria 21

22 Iterated MAC algorithms Typical MAC algorithm costructio Similar to hash fuctios: Process messages of arbitrary legth by iteratig a compressio fuctio with fixed-legth iputs. The MAC key ca be added as: Iitial value (IV), message prefix ad/or suffix, keyed compressio fuctio, etc. Costructios based o block ciphers ad hash fuctios. Collisio attack o iterated MAC algorithms Collisios of the compressio fuctio eable verifiable forgery: If h K (m) = h K (m') due to a collisio of the compressio fuctio, the h K (m y) = h K (m' y) for ay block y. Obtai h K (m y) ad you lear h K (m' y). About O(2 c/2 ) iput blocks are sufficiet to fid a collisio of the compressio fuctio with high probability, where c is the legth of the chaiig variable. Must be obtaied o-lie. Octavia Catria 22

23 Basic CBC-MAC v 0 =IV K m 0 E K K v 1 m 1 E K v 2... v L-1 K m L-1 (+pad) E K Basic CBC-MAC: v 0 = IV (usually IV = 0) v i+1 = E K (m i v i ), for 0 i L-1 h K (m) = v L Fixed IV = 0. Paddig: 10* MAC K = v L The IV must be fixed to prevet trivial forgery of the first block: Ca replace m 0 by ay m 0 : use v 0 such that v 0 m 0 = v 0 m 0. Basic CBC-MAC is provably secure for fixed-legth messages, assumig that the block cipher is a pseudoradom permutatio. However, it is NOT secure for variable-legth messages. Vulerable to XOR forgery. Example: kowig (m, h K (m)), where m is a -bit message, the adversary ca compute (m, h K (m )), where m' = m (m IV h K (m)) ad h K (m') = h K (m). Hece, ot really useful. Octavia Catria 23

24 Example: XOR forgery o CBC-MAC Simple XOR forgery: Aother XOR forgery: IV m 0 E K IV m 0 E K v 1 m 1 E K IV m' 0 E K v 1 m' 1 E K h K (m 0 ) h K (m) h K (m') Apped m 1 = m 0 IV h K (m 0 ). Cocateate the messages m ad m' We wat: m' 0 IV = m'' 0 h K (m) Hece: m'' 0 = m' 0 IV h K (m) IV m 0 E K m 1 = m 0 IV h K (m 0 ) v 1 E K IV m 0 E K v 1 m 1 E K m' 0 IV h K (m) E K v 1 m' 1 E K h K (m 0 ) h K (m) h K (m') Octavia Catria 24

25 EMAC (Ecrypted MAC) EMAC Add a output trasformatio: ecrypt with a differet key K', usually derived from K (o eed for a idepedet key). v 0 =IV K m 0 E K K v 1 m 1 E K v 2... v L-1 K m L-1 (+pad) E K Output trasformatio K' v L E K' Fixed IV = 0. Paddig: 10* MAC K (m)= E K' (v L ) EMAC security Elimiates CBC-MAC weakesses (but forgery based o iteral collisios remais possible). Provably UF-CMA secure for messages of arbitrary legth (uforgeability uder chose-message attacks). Octavia Catria 25

26 CMAC CMAC (Cipher-based MAC) Avoids EMAC's additioal ecryptio ad re-keyig of the block cipher. Avoids a full block of paddig whe m mod = 0. Uses 3 keys that ca be derived from commo MAC key. NIST stadard (SP B), based o earlier proposals from the research commuity (XCBC, OMAC). K 1 IV m 1 E K1 K 1 v 1 m 2 E K1 v 2... v L-1 K 1 m L-1 (+pad) K 2, if m L-1 ot padded E K1 K 3, if m L-1 padded Fixed IV = 0. Paddig: 10* MAC K = v L CMAC security As secure as EMAC (formal proof). Octavia Catria 26

27 MAC based o hash fuctios Some simple but isecure methods Assume a iterated hash fuctio. We wat a MAC algorithm that uses the hash fuctio without ay modificatio ad is secure assumig stadard hash fuctio security requiremets. Secret prefix: h(k m) vulerable to message extesio attack. Secret suffix: h(m K) vulerable to collisio attack. Evelope method: h(k m K') OK, but we ca do better. IV f K b f m 0 b f m 1 b... m L-1 f b f K' b Prefix Suffix Octavia Catria Evelope 27

28 HMAC HMAC (Hash-based MAC) Widely used MAC algorithm. Simple, efficiet. Stadards: RFC 2104, NIST FIPS 198, ISO , ANSI X9.71. HMAC K (m) = h((k 0 opad) h((k 0 ipad) m))) Provably secure assumig that h is a collisio resistat hash fuctio, ad f is a secure MAC fuctio with fixed-legth data iput ad key as chaiig variable iput. Octavia Catria K 0 ipad IV m 0 b v v 1 b 2 f f Pre-computed K' = K 0 ipad K'' = K 0 opad K 0 = K exteded to b bits by paddig with 0 ipad = octet 0x36 repeated b/8 times opad = octet 0x5c repeated b/8 times IV f m 1 b... K 0 opad f b v 1 v L-1 v L m L-1 (+pad) f Pre-computed HMAC K (m) = h(k'' h(k' m)) f b b h(k' m) (+pad) 28

29 Digital sigature schemes

30 Defiitio A digital sigature scheme (with appedix) is a 5-tuple (,,,, ): ad are fiite sets. is the set of messages that ca be siged. is the set of possible sigatures. is a radomized key geeratio algorithm. It outputs a keypair (K s, K v ) from a key space. K s is the private-key used for sigature geeratio. K v is the matchig public-key used for sigature verificatio. is a sigature geeratio algorithm. Iputs are the private-key K s ad a message m. The output is a sigature S Ks (m). is a determiistic sigature verificatio algorithm. Iputs are the public key K v, a message m, ad a sigature s. The output is a result V Kv (m, s) {accept, reject}. For ay (K s, K v ) ad m, the algorithms ad satisfy: If s = S Ks (m) the V Kv (m, s) = accept, otherwise V Kv (m, s) = reject. Octavia Catria 30

31 Basic requiremets m Sigature geeratio S Ks : Usecured chaels S Ks (m)=s Sigature verificatio V Kv : {accept, reject} K s K v Key-pair geeratio Distributio of the public key K v Requires autheticatio Prevet forgery Give the public key K v it is computatioally ifeasible to fid the private sigig key K s. Without K s, it is computatioally ifeasible to fid m ad s such that VKv(m, s) = true. Oly the ower of the key-pair ca geerate a valid sigature data autheticatio ad o-repudiatio. Efficiet sigig ad verificatio Sigature with appedix (usual solutio): Hash the message ad the apply the sigig algorithm to the hash value. Octavia Catria 31

32 Geeral assumptio Security model 1/2 A adversary kows the digital sigature algorithm ad the public-key, but does ot kow the private-key. Geeral goal of a adversary Forge messages/sigatures: produce a message-sigature pair (x, s) that is accepted by the sigature verificatio algorithm. Similar to MAC schemes. Particular goals Key recovery: The adversary determies the private sigig key. Total break. Message forgery: Selective or existetial forgery of idividual messages; verifiable or ot. Existetial forgery is the weakest achievemet (the forged message might ot eve "make sese" for the applicatio). Octavia Catria 32

33 Security model 2/2 Key-oly attack The adversary kows oly the public-key (sig. verificatio key). Kow-message attack (KMA) The adversary obtais oe or more message-sigature pairs (x i, S Ks (x i )). Usually, a passive attack is sufficiet. Chose-message attack (CMA) The adversary ca choose oe or more messages ad is give the correspodig sigatures. Active, stroger attack. Equivalet to (black-box) access to the sigature geeratio module. Side-chael attacks Stadard strog security requiremet UF-CMA (Uforgeability uder Chose-Message Attack): Octavia Catria Existetial forgery (weakest goal) is computatioally ifeasible uder adaptive chose-message attacks (strogest attacks). 33

34 RSA (textbook) digital sigature Key-pair geeratio Use the same algorithm as for ecryptio to obtai p, q,, e, d, where: p, q are two radom distict primes. = pq, () = (p-1)(q-1). 1 e (), gcd(e, ()) = 1. 1 d (), d = e -1 mod (). Private-key (sig): (d, ) Sigature geeratio Message m, hash fuctio H. Compute: s = H(m) d mod. The sigature is s. Public-key (verify): (e, ) Verificatio Siged message m', s'. Compute: h = (s ) e mod. Accept if h = H(m ), else reject. Correctess: RSA(m) = m e mod is the RSA permutatio. Its iverse is RSA -1 (c) = c d mod. If m = m, s = s the h = RSA(RSA -1 (H(m)) = H(m). Security: Based o the assumptio that RSA is oe-way. However, i geeral, H(m) eeds to be properly ecoded before applyig RSA -1. Performace is improved usig the same methods as for ecryptio. Octavia Catria 34

35 Practical RSA digital sigatures m Hash Ecode h d mod H E h RSA -1 A sigs m (d,) m s m s B verifies (m, s) s e mod RSA (e,) H h'? m Accept/ Reject Valid ecodig? Equal hash value? Why do we eed to ecode H(m)? To exted H(m) to the RSA modulus legth. To avoid attacks based o RSA math properties. To protect agaist chose message attacks (achieve UF-CMA). RSA sigature with ecoded H(m) Sig: Compute the ecoded hash h = E(H(m)). Geerate the sigature usig RSA -1 ad the private-key: s = h d mod. Verify: Compute RSA with the public-key: h = s e mod. If icorrect ecodig reject. If E -1 (h ) = H(m ) accept else reject. Octavia Catria 35

36 Ecodig methods for RSA sigatures PKCS #1 v1.5 ecodig (mod 1 - sigature) Itroduced i 1991, still widely used i practice due to its simplicity. No security proof. Determiistic scheme. M Hash Octets with value 0xFF Hash algorithm idetifier DER ASN.1 DER ecodig of hash algortihm id ad message hash value 0 1 Paddig strig 0 DER(hashAlgId, mhash) Octavia Catria Mi 8 octets k octets (modulus legth) Max k-11 octets PSS: Probabilistic Sigature Scheme The RSA sigature with PSS ecodig is provably UF-CMA secure, assumig that RSA is a oe-way permutatio. First proposed by Bellare ad Rogaway i RSA PSS is icluded i PKCS #1 v2.1, IEEE 1363a,... 36

37 PSS ecodig (PKCS #1 v2.1) The diagram shows the PSS ecodig accordig to PKCS #1 v2.1 The verificatio operatio follows the reverse steps to recover salt, ad the the forward steps to re-compute ad compare H. Octavia Catria MGF = Mask Geeratio Fuctio. Pseudoradom fuctio costructed usig the hash fuctio. The strig salt is radomly chose for each sigature. Typical salt legth sle is either hle or 0. The scheme with sle = 0 is determiistic ad kow as FDH (Full Domai Hash). The rightmost octet of the ecoded strig is a costat with the value 0xbc emle-hle-1 maskeddb salt M H hle mhash salt MGF emle Hash 8+hle+sle Hash hle bc 37

38 Sigatures based o discrete logarithms A first example: ElGamal digital sigature scheme Domai parameters (public): (p, g) Select a large prime p ad a geerator g of Z* p. Key-pair geeratio: (x, y) Choose a radom secret x, 1 x p 2, compute y = g x mod p. Private key: x, (p, g). Public key: y, (p, g). Sigature geeratio: (r, s) Message m, hash fuctio H. Select a radom secret k, 1 k p 2, gcd(k, p 1) = 1. Compute: r = g k mod p ad s = k 1 (H(m) xr) mod (p 1). The sigature is (r, s). Sigature verificatio Siged message m', (r ', s'). If r, s out of rage, the reject. Compute: v 1 = y r r s mod p v 2 = g H(m) mod p. Verificatio: Accept if v 1 = v 2, else reject. Correctess (hit): The scheme verifies that g H(m ) g xr + ks (mod p). Strog security requires workig i a group of prime order. See DSA. Octavia Catria 38

39 Digital Sigature Algorithm (DSA) DSA was desiged by NIST ad NSA. Published i FIPS 186, 1991, ad updated several times. Curret versio: FIPS 186-4, Variat of the ElGamal sigature scheme for a subgroup of Z* p with prime order best DLP algorithms have expoetial complexity. Now also defied for groups based o elliptic curves (ECDSA). Geeratio of DSA domai parameters: (p, q, g) Select prime q of N bits. Select prime p of L bits such that q divides (p - 1). Determie g = h (p-1)/q mod p such that g 1 for some iteger h, 1 h (p - 1). (This implies g q 1 mod p hece g has order q i Z* p, i.e., g geerates a subgroup of Z* p of order q.) L = bit-legth of prime p N = bit-legth of prime q 2 L-1 < p < 2 L 2 N-1 < q < 2 N Variats i FIPS 186-4: L = 1024, N = 160 L = 2048, N = 224 L = 3072, N = 256 Geeratio of DSA (private, public) key-pair: (x, y) Select a radom iteger x, 1 x q. Compute y = g x mod p. Octavia Catria Private key: x, (p, q, g) Public key: y, (p, q, g) 39

40 DSA: Sigature ad verificatio Sigature geeratio: (r, s) Message m, hash fuctio H. Private key (x, (p, q, g)). Select a radom iteger k, 1 k q. k = per-message secret umber. r = (g k mod p) mod q. s = k -1 (H(m) + xr) mod q. (Use hash fuctio with hle = N bits) Sigature: (r, s). Sigature verificatio Siged message m', (r ', s'). Authetic public-key (y, (p, q, g)). If r, s are out of rage the reject. w = s ' 1 mod q. u 1 = wh(m') mod q. u 2 = wr ' mod q. v = (g u 1y u 2 mod p) mod q. Verificatio: Accept if v = r '. Correctess of the verificatio g = h (p-1)/q mod p (1) g q 1 (mod p) (2) a b (mod q) g a g b (mod p). Substitutig y = g x mod p i v, we obtai: (3) v = (g u 1+xu 2 mod p) mod q. (4) u 1 + xu 2 (s ) -1 (H(m ) + xr ) (mod q); (5) s -1 k (H(m) + xr)) -1 (mod q). If m = m, s = s, r = r, the (4, 5) (6) (u 1 + xu 2 ) k (mod q). Fially, (3, 6, 2) v = (g k mod p) mod q = r. Octavia Catria 40

41 Forgery usig attacks o hash fuctios A sigs m m B verifies m Hash H(m) m Hash H(m) Sig s s s s Verify Accept/ Reject K s K v If H(m) = H(m') the S Ks (H(m)) = S Ks (H(m')). If you kow the sigature of m, you kow the sigature of m'. Attack o 2 d pre-image resistace Give (m, s = S Ks (H(m)) fid m' such that H(m') = H(m). E.g., forge a siged documet (attack itegrity/autheticity). Complexity for -bit hash (brute force attack): O(2 ). Attack o collisio resistace Fid (m, m') such that H(m') = H(m) the obtai s = S Ks (H(m)). E.g., forge documet before sigig (also attack o-repudiatio). Complexity for -bit hash (brute force attack): O(2 /2 ). Octavia Catria 41

42 DS attacks based o hash collisios Forgery scearios (examples) A dishoest siger provides to aother party his sigature o m' 1 ad later repudiates sigig m' 1, claimig that the message siged was m' 2. A dishoest verifier covices a ususpectig party to sig a message m' 1, ad later claims that party s sigature o m' 2. Birthday attack o digital sigatures (Yuval, 1979) Iput: legitimate message m 1, fraudulet message m 2, -bit hash fuctio H. Output: (m' 1, m' 2 ), variats of (m 1, m 2 ), with H(m' 1 ) = H(m' 2 ). A sigature o m' 1 ca serve as a valid sigature o m' Geerate 2 /2 mior modificatios m' 1 of m1. 2. Hash each such modified message ad store the hash-values. 3. Geerate mior modificatios m' 2 of m 2, compute H(m' 2 ) for each, ad check for matches with ay H(m' 1 ) computed before. Cotiue util a match is foud. Accordig to the birthday paradox a match ca be expected after checkig about 2 /2 cadidates. Octavia Catria Iterestig, but I real life? 42

43 Rogue PKCs from MD5 collisios 1/5 Web site autheticatio usig public-key certificates (PKC) Step 3 is the TLS/SSL coectio setup. The browser autheticates the server as follows: - The server ows a key pair. The server's ame is associated to the public key by a PKC siged by a CA (gree). - Durig the autheticatio protocol, the server seds to the browser the PKC ad a autheticator that proves kowledge of the correspodig private key (e.g., by sigig a challege strig). - The browser verifies the PKC, to autheticate the server's key, usig the CA's public key, which is distributed i a CA PKC (white). The it verifies the autheticator set by the server.(e.g., by verifyig the received sigature for the challege strig). Step 1 shows how the CA's PKC is distributed to the user's browser via the browser vedor. The CA PKC appears i the browser's list of trusted CAs (which are implicitly also trusted by the user). Step 2 shows how the CA issues the server's PKC. The server geerates the key pair, ad seds the public key ad server DNS ame to the CA. The CA makes the ecessary verificatio ad issues a PKC bidig the public key to the server's ame. Octavia Catria 43

44 Rogue PKCs from MD5 collisios 2/5 Attack o web site autheticatio Uses PKCs that are forged usig collisios of the MD5 hash fuctio. I this example, the goal is to forge a CA PKC (ot just a server PKC), ad thus become a rogue CA. The attacker ca use the private key of the rogue CA to issue fake PKCs for ay website (red). If the CA is i the browsers' trust list, all browsers accept these fake PKCs. A successful attack was first preseted at the 25th Chaos Commuicatio Cogress, Berli, Dec. 2008: "MD5 cosidered harmful today. Creatig a rogue CA Certificate." This was followed by several research papers published i Octavia Catria The attacker fids 2 PKCs with the same MD5 hash usig a cryptaalytic attack: a legitimate PKC ad a fake CA PKC. The CA sigs the legitimate PKC (blue). The same sigature is valid for the fake CA PKC (black). 44

45 Rogue PKCs from MD5 collisios 3/5 Data: Versio: 3 (0x2) Serial Number: (0x9cfc7) Sigature Algorithm: md5withrsaecryptio Issuer: C=US, O=Equifax Secure Ic., CN=Equifax Secure Global ebusiess CA-1 Validity Not Before: Nov 3 07:52: GMT Not After : Nov 4 07:52: GMT Subject: C=US, O=i.broke.the.iteret.ad.all.i.got.was.this.t-shirt.phreedom.org, OU=GT , OU=See (c)08, OU=Domai Cotrol Validated - RapidSSL(R), CN=i.broke.the.iteret.ad.all.i.got.was.this.t-shirt.phreedom.org Subject Public Key Ifo: Public Key Algorithm: rsaecryptio Public-Key: (2048 bit) Modulus: 00:b2:d3:25:81:aa:28:e8:78:b1:e5:0a:d5:3c:0f:36:57:6e:a9:5f:06:41:0e:6b:b4:cb:07:17:00:00:00:5b:fd:6b:1c:7b:9c:e8:a9:a3:c5:45:0b: 36:bb:01:d1:53:aa:c3:08:8f:6f:f8:4f:3e:87:87:44:11:dc:60:e0:df:92:55:f9:b8:73:1b:54:93:c5:9f:d0:46:c4:60:b6:35:62:cd:b9:af:1c:a8:6b: 1a:c9:5b:3c:96:37:c0:ed:67:ef:bb:fe:c0:8b:9c:50:2f:29:bd:83:22:9e:8e:08:fa:ac:13:70:a2:58:7f:62:62:8a:11:f7:89:f6:df:b6:67:59:73:16: fb:63:16:8a:b4:91:38:ce:2e:f5:b6:be:4c:a4:94:49:e4:65:51:0a:42:15:c9:c1:30:e2:69:d5:45:7d:a5:26:bb:b9:61:ec:62:64:f0:39:e1:e7:bc: 68:d8:50:51:9e:1d:60:d3:d1:a3:a7:0a:f8:03:20:a1:70:01:17:91:36:4f:02:70:31:86:83:dd:f7:0f:d8:07:1d:11:b3:13:04:a5:da:f0:ae:50:b1: 28:0e:63:69:2a:0c:82:6f:8f:47:33:df:6c:a2:06:92:f1:4f:45:be:d9:30:36:a3:2b:8c:d6:77:ae:35:63:7f:4e:4c:9a:93:48:36:d9:9f Expoet: (0x10001) X509v3 extesios: X509v3 Key Usage: critical ad public-key ecryptio. This etity is NOT a CA. Digital Sigature, No Repudiatio, Key Eciphermet, Data Eciphermet X509v3 Subject Key Idetifier: CD:A6:83:FA:A5:60:37:F7:96:37:17:29:DE:41:78:F1:87:89:55:E7 X509v3 CRL Distributio Poits: Full Name: URI: X509v3 Authority Key Idetifier: keyid:be:a8:a0:74:72:50:6b:44:b7:c9:23:d8:fb:a8:ff:b3:57:6b:68:6c X509v3 Exteded Key Usage: TLS Web Server Autheticatio, TLS Web Cliet Autheticatio X509v3 Basic Costraits: critical CA:FALSE Sigature Algorithm: md5withrsaecryptio a7:21:02:8d:d1:0e:a2:80:77:25:fd:43:60:15:8f:ec:ef:90:47:d4:84:42:15:26:11:1c:cd:c2:3c:10:29:a9:b6:df:ab:57:75:91:da:e5:2b:b3:90:45:1c: 30:63:56:3f:8a:d9:50:fa:ed:58:6c:c0:65:ac:66:57:de:1c:c6:76:3b:f5:00:0e:8e:45:ce:7f:4c:90:ec:2b:c6:cd:b3:b4:8f:62:d0:fe:b7:c5:26:72:44:ed: f6:98:5b:ae:cb:d1:95:f5:da:08:be:68:46:b1:75:c8:ec:1d:8f:1e:7a:94:f1:aa:53:78:a2:45:ae:54:ea:d1:9e:74:c8:76:67 Octavia Catria Legitimate PKC obtaied by the adversary from the CA. This is (supposed to be) a legitimate subject ame... Matchig private key ca be used for digital sigature 45

46 Rogue PKCs from MD5 collisios 4/5 Data: Versio: 3 (0x2) Serial Number: 65 (0x41) Sigature Algorithm: md5withrsaecryptio Issuer: C=US, O=Equifax Secure Ic., CN=Equifax Secure Global ebusiess CA-1 Validity Not Before: Jul 31 00:00: GMT Not After : Sep 2 00:00: GMT Name of the rogue etity Subject: CN=MD5 Collisios Ic. ( Subject Public Key Ifo: Public Key Algorithm: rsaecryptio Fake web site PKC siged by rogue CA. Public-Key: (1024 bit) Browsers accept these PKCs, because Modulus: they trust the root CA ad the PKC format 00:ba:a6:59:c9:2c:28:d6:2a:b0:f8:ed:9f:46:a4:a4:37:ee:0e:19:68:59:d1:b3:03:99:51:d6:16:9a:5e:37:6b:15:e0:0e:4b:f5:84:64:f8:a3:db: is correct. 41:6f:35:d5:9b:15:1f:db:c4:38:52:70:81:97:5e:8f:a0:b5:f7:7e:39:f0:32:ac:1e:ad:44:d2:b3:fa:48:c3:ce:91:9b:ec:f4:9c:7c:e1:5a:f5:c8:37: 6b:9a:83:de:e7:ca:20:97:31:42:73:15:91:68:f4:88:af:f9:28:28:c5:e9:0f:73:b0:17:4b:13:4c:99:75:d0:44:e6:7e:08:6c:1a:f2:4f:1b:41 Expoet: (0x10001) X509v3 extesios: X509v3 Key Usage: key ca be used to sig PKCs. Digital Sigature, No Repudiatio, Certificate Sig, CRL Sig X509v3 Basic Costraits: critical CA:TRUE X509v3 Subject Key Idetifier: A7:04:60:1F:AB:72:43:08:C5:7F:08:90:55:56:1C:D6:CE:E6:38:EB X509v3 Authority Key Idetifier: keyid:be:a8:a0:74:72:50:6b:44:b7:c9:23:d8:fb:a8:ff:b3:57:6b:68:6c Netscape Commet: 3 Sigature Algorithm: md5withrsaecryptio a7:21:02:8d:d1:0e:a2:80:77:25:fd:43:60:15:8f:ec:ef:90:47:d4:84:42:15:26:11:1c:cd:c2:3c:10:29:a9:b6:df:ab:57:75:91:da:e5:2b:b3:90:45:1c: 30:63:56:3f:8a:d9:50:fa:ed:58:6c:c0:65:ac:66:57:de:1c:c6:76:3b:f5:00:0e:8e:45:ce:7f:4c:90:ec:2b:c6:cd:b3:b4:8f:62:d0:fe:b7:c5:26:72:44:ed: f6:98:5b:ae:cb:d1:95:f5:da:08:be:68:46:b1:75:c8:ec:1d:8f:1e:7a:94:f1:aa:53:78:a2:45:ae:54:ea:d1:9e:74:c8:76:67 Octavia Catria Rogue CA PKC based o MD5 collisio. Compare the sigature of this PKC with the sigature of the previous PKC. This etity is a CA! Matchig private Impressive, but I real life? 46

47 Rogue PKCs from MD5 collisios 5/5 Usig a forged certificate for Microsoft's Widows Update service, the Flame malware ca spread usig a ma-i-the-middle attack. The Flame malware uses a valid code-sigig certificate, which geerally esures that code comes from a valid source. I this case, a "world-class cryptaalysis" effort had maaged to create a certificate with the same sigature, that could be used to sig code so that it appeared to have come from Microsoft, Marc Steves, a cryptaalyst with CWI i Amsterdam, said i a olie aalysis. O Jue 6, Microsoft released a patch to revoke the certificate ad chage the process to disallow code-sigig capabilities for Widows systems that use termial services, ad created a separate autheticatio chai. Flame is a highly sophisticated malware that targeted maily computers i Ira ad other Middle Easter Coutries. Octavia Catria I 2008, Steves ad a group of researchers created a way of geeratig such collisios ad preseted their research at the Chaos Commuicatios Coferece. Called the chose-prefix attack, the method allows the creatio of fake MD5 certificates that match the sigature of a valid MD5 certificate. Usig the attack, the researchers created a rogue certificate authority, which could have bee used to allow attacks o major Iteret browsers. "The results have show that, ot our published chose-prefix collisio attack was used, but a etirely ew ad ukow variat," said Steves. "Therefore, it is ot ureasoable to assume that the particular chose-prefix collisio attack variat uderlyig Flame had already bee i developmet before Jue 2009." 47

48 NIST: Recommeded hash fuctios Hash fuctio that ca be used to provide the targeted security stregths Security Stregth Digital Sigatures ad hash-oly applicatios 80 SHA-121, SHA-224, SHA-512/224, SHA-256, SHA-512/256, SHA-384, SHA SHA-224, SHA-512/224, SHA-256, SHA-512/256, SHA-384, SHA SHA-256, SHA-512/256, SHA-384, SHA-512 HMAC SHA-1, SHA-512/224, SHA-224, SHA-256, SHA-512/256, SHA-384, SHA-512 SHA-1, SHA-224, SHA-512/224, SHA-256, SHA-512/256, SHA-384, SHA-512 SHA-1, SHA-224, SHA-512/224, SHA-256, SHA-512/256, SHA-384, SHA SHA-384, SHA-512 SHA-224, SHA-512/224, SHA-256, SHA-512/256, SHA-384, SHA-512 Key Derivatio Fuctios Radom Number Geeratio SHA-1, SHA-224, SHA-1, SHA-224, SHA-512/224, SHA-256, SHA-512/224, SHA-256, SHA-512/256, SHA-384, SHA-512-/256, SHA-384, SHA-512 SHA-512 SHA-1, SHA-224, SHA-1, SHA-224, SHA-512/224, SHA-256, SHA-512/224, SHA-256, SHA-512/256, SHA-384, SHA-512/256, SHA-384, SHA-512 SHA-512 SHA-1, SHA-224, SHA-1, SHA-224, SHA-512/224, SHA-256, SHA-512/224, SHA-256, SHA-512/256, SHA-384, SHA-512/256, SHA-384, SHA-512 SHA-512 SHA-224, SHA-512/224, SHA-256, SHA-512/256, SHA-384, SHA-512 SHA-224, SHA-512/224, SHA-256, SHA-512/256, SHA-384, SHA SHA-512 SHA-256, SHA-512/256, SHA-384, SHA-512 SHA-256, SHA-512/256, SHA-384, SHA-512 SHA-256, SHA-512/256, SHA-384, SHA-512 Referece: NIST Special Publicatio , Recommedatios for Key Maagemet Part 1: Geeral (Revisio 3), July Octavia Catria 48

49 NIST: Recommeded key legths Comparable Algorithm Stregths Bits of security Symmetric key algorithms 80 2TDEA 112 3TDEA 128 AES AES AES-256 Security-stregth time frames FFC (e.g., DSA, D-H) L = 1024 N = 160 L = 2048 N = 224 L = 3072 N = 256 L = 7680 N = 384 L = N = 512 IFC (e.g., RSA) ECC (e.g., ECDSA) k = 1024 f = k = 2048 f = k = 3072 f = k = 7680 f = k = f = 512+ Security Stregth 2011 through through ad Beyod Applyig Deprecated Disallowed 80 Processig Legacy use 112 Applyig Processig Acceptable Acceptable Disallowed Legacy use 128 Acceptable Acceptable Acceptable Applyig, 192 Acceptable Acceptable Acceptable Processig 256 Acceptable Acceptable Acceptable FFC Fiite Field Cryptography IFC Iteger Factorizatio Cryptography ECC Elliptic Curve Cryptography DSA Digital Sigature Algorithm D-H Diffie-Hellma key agreemet ECDSA Elliptic Curve DSA TDEA Triple DEA (DES) L Size of public key N Size of private key Referece: NIST Special Publicatio , Recommedatios for Key Maagemet Part 1: Geeral (Revisio 3), July Octavia Catria 49

Message Integrity and Hash Functions. TELE3119: Week4

Message Integrity and Hash Functions. TELE3119: Week4 Message Itegrity ad Hash Fuctios TELE3119: Week4 Outlie Message Itegrity Hash fuctios ad applicatios Hash Structure Popular Hash fuctios 4-2 Message Itegrity Goal: itegrity (ot secrecy) Allows commuicatig

More information

Message Authentication Codes. Reading: Chapter 4 of Katz & Lindell

Message Authentication Codes. Reading: Chapter 4 of Katz & Lindell Message Autheticatio Codes Readig: Chapter 4 of Katz & Lidell 1 Message autheticatio Bob receives a message m from Alice, he wats to ow (Data origi autheticatio) whether the message was really set by Alice.

More information

Network Security. Chapter 2 Basics 2.3 Cryptographic Hash Functions. Motivation (1) Motivation (2) Cryptographic Hash Functions: Definition

Network Security. Chapter 2 Basics 2.3 Cryptographic Hash Functions. Motivation (1) Motivation (2) Cryptographic Hash Functions: Definition Chair for Network Architectures ad Services Departmet of Iformatics TU Müche Prof. Carle Network Security Chapter 2 Basics 2.3 Cryptographic Hash Fuctios Motivatio Cryptographic Hash Fuctios SHA-1 Message

More information

Private Key Cryptography. TELE3119: Week2

Private Key Cryptography. TELE3119: Week2 Private Key Cryptography TELE3119: Week2 Private Key Ecryptio Also referred to as: covetioal ecryptio symmetric key ecryptio secret-key or sigle-key ecryptio Oly alterative before public-key ecryptio i

More information

Chair for Network Architectures and Services Department of Informatics TU München Prof. Carle. Network Security

Chair for Network Architectures and Services Department of Informatics TU München Prof. Carle. Network Security Chair for Network Architectures ad Services Departmet of Iformatics TU Müche Prof. Carle Network Security Chapter 2 Cryptography 2.2 Cryptographic Hash Fuctios Motivatio Cryptographic Hash Fuctios SHA-1,

More information

Chair for Network Architectures and Services Department of Informatics TU München Prof. Carle. Network Security

Chair for Network Architectures and Services Department of Informatics TU München Prof. Carle. Network Security Chair for Network Architectures ad Services Departmet of Iformatics TU Müche Prof. Carle Network Security Chapter 2 Cryptography 2.2 Cryptographic Hash Fuctios Motivatio Cryptographic Hash Fuctios SHA-1,

More information

Probability of collisions in Soft Input Decryption

Probability of collisions in Soft Input Decryption Issue 1, Volume 1, 007 1 Probability of collisios i Soft Iput Decryptio Nataša Živić, Christoph Rulad Abstract I this work, probability of collisio i Soft Iput Decryptio has bee aalyzed ad calculated.

More information

Big-O Analysis. Asymptotics

Big-O Analysis. Asymptotics Big-O Aalysis 1 Defiitio: Suppose that f() ad g() are oegative fuctios of. The we say that f() is O(g()) provided that there are costats C > 0 ad N > 0 such that for all > N, f() Cg(). Big-O expresses

More information

SECURITY PROOF FOR SHENGBAO WANG S IDENTITY-BASED ENCRYPTION SCHEME

SECURITY PROOF FOR SHENGBAO WANG S IDENTITY-BASED ENCRYPTION SCHEME SCURITY PROOF FOR SNGBAO WANG S IDNTITY-BASD NCRYPTION SCM Suder Lal ad Priyam Sharma Derpartmet of Mathematics, Dr. B.R.A.(Agra), Uiversity, Agra-800(UP), Idia. -mail- suder_lal@rediffmail.com, priyam_sharma.ibs@rediffmail.com

More information

An Improvement of the Basic El-Gamal Public Key Cryptosystem

An Improvement of the Basic El-Gamal Public Key Cryptosystem Iteratioal Joural of Computer Applicatios Techology ad Research A Improvemet of the Basic El-Gamal Public Key Cryptosystem W.D.M.G.M. Dissaayake (PG/MPhil/2015/09 Departmet of Computer Egieerig Faculty

More information

Hash Tables. Presentation for use with the textbook Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015.

Hash Tables. Presentation for use with the textbook Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015. Presetatio for use with the textbook Algorithm Desig ad Applicatios, by M. T. Goodrich ad R. Tamassia, Wiley, 2015 Hash Tables xkcd. http://xkcd.com/221/. Radom Number. Used with permissio uder Creative

More information

Big-O Analysis. Asymptotics

Big-O Analysis. Asymptotics Big-O Aalysis 1 Defiitio: Suppose that f() ad g() are oegative fuctios of. The we say that f() is O(g()) provided that there are costats C > 0 ad N > 0 such that for all > N, f() Cg(). Big-O expresses

More information

Security of Bluetooth: An overview of Bluetooth Security

Security of Bluetooth: An overview of Bluetooth Security Versio 2 Security of Bluetooth: A overview of Bluetooth Security Marjaaa Träskbäck Departmet of Electrical ad Commuicatios Egieerig mtraskba@cc.hut.fi 52655H ABSTRACT The purpose of this paper is to give

More information

The Magma Database file formats

The Magma Database file formats The Magma Database file formats Adrew Gaylard, Bret Pikey, ad Mart-Mari Breedt Johaesburg, South Africa 15th May 2006 1 Summary Magma is a ope-source object database created by Chris Muller, of Kasas City,

More information

Pseudocode ( 1.1) Analysis of Algorithms. Primitive Operations. Pseudocode Details. Running Time ( 1.1) Estimating performance

Pseudocode ( 1.1) Analysis of Algorithms. Primitive Operations. Pseudocode Details. Running Time ( 1.1) Estimating performance Aalysis of Algorithms Iput Algorithm Output A algorithm is a step-by-step procedure for solvig a problem i a fiite amout of time. Pseudocode ( 1.1) High-level descriptio of a algorithm More structured

More information

WYSE Academic Challenge Sectional Computer Science 2005 SOLUTION SET

WYSE Academic Challenge Sectional Computer Science 2005 SOLUTION SET WYSE Academic Challege Sectioal Computer Sciece 2005 SOLUTION SET 1. Correct aswer: a. Hz = cycle / secod. CPI = 2, therefore, CPI*I = 2 * 28 X 10 8 istructios = 56 X 10 8 cycles. The clock rate is 56

More information

ECE4050 Data Structures and Algorithms. Lecture 6: Searching

ECE4050 Data Structures and Algorithms. Lecture 6: Searching ECE4050 Data Structures ad Algorithms Lecture 6: Searchig 1 Search Give: Distict keys k 1, k 2,, k ad collectio L of records of the form (k 1, I 1 ), (k 2, I 2 ),, (k, I ) where I j is the iformatio associated

More information

CSC 220: Computer Organization Unit 11 Basic Computer Organization and Design

CSC 220: Computer Organization Unit 11 Basic Computer Organization and Design College of Computer ad Iformatio Scieces Departmet of Computer Sciece CSC 220: Computer Orgaizatio Uit 11 Basic Computer Orgaizatio ad Desig 1 For the rest of the semester, we ll focus o computer architecture:

More information

BASED ON ITERATIVE ERROR-CORRECTION

BASED ON ITERATIVE ERROR-CORRECTION A COHPARISO OF CRYPTAALYTIC PRICIPLES BASED O ITERATIVE ERROR-CORRECTIO Miodrag J. MihaljeviC ad Jova Dj. GoliC Istitute of Applied Mathematics ad Electroics. Belgrade School of Electrical Egieerig. Uiversity

More information

CIS 121 Data Structures and Algorithms with Java Fall Big-Oh Notation Tuesday, September 5 (Make-up Friday, September 8)

CIS 121 Data Structures and Algorithms with Java Fall Big-Oh Notation Tuesday, September 5 (Make-up Friday, September 8) CIS 11 Data Structures ad Algorithms with Java Fall 017 Big-Oh Notatio Tuesday, September 5 (Make-up Friday, September 8) Learig Goals Review Big-Oh ad lear big/small omega/theta otatios Practice solvig

More information

Graphic Standards for District Identification. September, 2012

Graphic Standards for District Identification. September, 2012 Graphic Stadards for District Idetificatio September, 2012 CASE Graphic Stadards for District Idetificatio DRAFT 12.8.14 Coucil for Advacemet ad Support of Educatio, 2012. 1 . This documet is a draft of

More information

Lecture 2: Spectra of Graphs

Lecture 2: Spectra of Graphs Spectral Graph Theory ad Applicatios WS 20/202 Lecture 2: Spectra of Graphs Lecturer: Thomas Sauerwald & He Su Our goal is to use the properties of the adjacecy/laplacia matrix of graphs to first uderstad

More information

Avid Interplay Bundle

Avid Interplay Bundle Avid Iterplay Budle Versio 2.5 Cofigurator ReadMe Overview This documet provides a overview of Iterplay Budle v2.5 ad describes how to ru the Iterplay Budle cofiguratio tool. Iterplay Budle v2.5 refers

More information

Authenticating Aviation Augmentation System Broadcasts

Authenticating Aviation Augmentation System Broadcasts Autheticatig Aviatio Augmetatio System Broadcasts Sherma C. Lo, Staford Uiversity Per K. Ege, Staford Uiversity BIOGRAPHY Sherma C. Lo is curretly a seior research egieer at the Staford Uiversity Global

More information

Task scenarios Outline. Scenarios in Knowledge Extraction. Proposed Framework for Scenario to Design Diagram Transformation

Task scenarios Outline. Scenarios in Knowledge Extraction. Proposed Framework for Scenario to Design Diagram Transformation 6-0-0 Kowledge Trasformatio from Task Scearios to View-based Desig Diagrams Nima Dezhkam Kamra Sartipi {dezhka, sartipi}@mcmaster.ca Departmet of Computig ad Software McMaster Uiversity CANADA SEKE 08

More information

Python Programming: An Introduction to Computer Science

Python Programming: An Introduction to Computer Science Pytho Programmig: A Itroductio to Computer Sciece Chapter 6 Defiig Fuctios Pytho Programmig, 2/e 1 Objectives To uderstad why programmers divide programs up ito sets of cooperatig fuctios. To be able to

More information

A Key Distribution method for Reducing Storage and Supporting High Level Security in the Large-scale WSN

A Key Distribution method for Reducing Storage and Supporting High Level Security in the Large-scale WSN Iteratioal Joural of Digital Cotet Techology ad its Applicatios Vol. 2 No 1, March 2008 A Key Distributio method for Reducig Storage ad Supportig High Level Security i the Large-scale WSN Yoo-Su Jeog *1,

More information

Lecture 6. Lecturer: Ronitt Rubinfeld Scribes: Chen Ziv, Eliav Buchnik, Ophir Arie, Jonathan Gradstein

Lecture 6. Lecturer: Ronitt Rubinfeld Scribes: Chen Ziv, Eliav Buchnik, Ophir Arie, Jonathan Gradstein 068.670 Subliear Time Algorithms November, 0 Lecture 6 Lecturer: Roitt Rubifeld Scribes: Che Ziv, Eliav Buchik, Ophir Arie, Joatha Gradstei Lesso overview. Usig the oracle reductio framework for approximatig

More information

Randomized and Quantum Protocols in Distributed Computation

Randomized and Quantum Protocols in Distributed Computation Radomized ad Quatum Protocols i Distributed Computatio Michael Be-Or The Hebrew Uiversity Michael Rabi s Birthday Celebratio Radomized Protocols Power of Radomizatio Expoetial speedup for kow algorithms

More information

3D Model Retrieval Method Based on Sample Prediction

3D Model Retrieval Method Based on Sample Prediction 20 Iteratioal Coferece o Computer Commuicatio ad Maagemet Proc.of CSIT vol.5 (20) (20) IACSIT Press, Sigapore 3D Model Retrieval Method Based o Sample Predictio Qigche Zhag, Ya Tag* School of Computer

More information

Data Structures and Algorithms. Analysis of Algorithms

Data Structures and Algorithms. Analysis of Algorithms Data Structures ad Algorithms Aalysis of Algorithms Outlie Ruig time Pseudo-code Big-oh otatio Big-theta otatio Big-omega otatio Asymptotic algorithm aalysis Aalysis of Algorithms Iput Algorithm Output

More information

CS200: Hash Tables. Prichard Ch CS200 - Hash Tables 1

CS200: Hash Tables. Prichard Ch CS200 - Hash Tables 1 CS200: Hash Tables Prichard Ch. 13.2 CS200 - Hash Tables 1 Table Implemetatios: average cases Search Add Remove Sorted array-based Usorted array-based Balaced Search Trees O(log ) O() O() O() O(1) O()

More information

Primitive polynomials selection method for pseudo-random number generator

Primitive polynomials selection method for pseudo-random number generator Joural of hysics: Coferece Series AER OEN ACCESS rimitive polyomials selectio method for pseudo-radom umber geerator To cite this article: I V Aiki ad Kh Alajjar 08 J. hys.: Cof. Ser. 944 0003 View the

More information

Lecture 5. Counting Sort / Radix Sort

Lecture 5. Counting Sort / Radix Sort Lecture 5. Coutig Sort / Radix Sort T. H. Corme, C. E. Leiserso ad R. L. Rivest Itroductio to Algorithms, 3rd Editio, MIT Press, 2009 Sugkyukwa Uiversity Hyuseug Choo choo@skku.edu Copyright 2000-2018

More information

IS-IS in Detail. ISP Workshops

IS-IS in Detail. ISP Workshops IS-IS i Detail ISP Workshops These materials are licesed uder the Creative Commos Attributio-NoCommercial 4.0 Iteratioal licese (http://creativecommos.org/liceses/by-c/4.0/) Last updated 27 th November

More information

Lecture Notes 6 Introduction to algorithm analysis CSS 501 Data Structures and Object-Oriented Programming

Lecture Notes 6 Introduction to algorithm analysis CSS 501 Data Structures and Object-Oriented Programming Lecture Notes 6 Itroductio to algorithm aalysis CSS 501 Data Structures ad Object-Orieted Programmig Readig for this lecture: Carrao, Chapter 10 To be covered i this lecture: Itroductio to algorithm aalysis

More information

1 Enterprise Modeler

1 Enterprise Modeler 1 Eterprise Modeler Itroductio I BaaERP, a Busiess Cotrol Model ad a Eterprise Structure Model for multi-site cofiguratios are itroduced. Eterprise Structure Model Busiess Cotrol Models Busiess Fuctio

More information

Improving Information Retrieval System Security via an Optimal Maximal Coding Scheme

Improving Information Retrieval System Security via an Optimal Maximal Coding Scheme Improvig Iformatio Retrieval System Security via a Optimal Maximal Codig Scheme Dogyag Log Departmet of Computer Sciece, City Uiversity of Hog Kog, 8 Tat Chee Aveue Kowloo, Hog Kog SAR, PRC dylog@cs.cityu.edu.hk

More information

9.1. Sequences and Series. Sequences. What you should learn. Why you should learn it. Definition of Sequence

9.1. Sequences and Series. Sequences. What you should learn. Why you should learn it. Definition of Sequence _9.qxd // : AM Page Chapter 9 Sequeces, Series, ad Probability 9. Sequeces ad Series What you should lear Use sequece otatio to write the terms of sequeces. Use factorial otatio. Use summatio otatio to

More information

Fast Fourier Transform (FFT) Algorithms

Fast Fourier Transform (FFT) Algorithms Fast Fourier Trasform FFT Algorithms Relatio to the z-trasform elsewhere, ozero, z x z X x [ ] 2 ~ elsewhere,, ~ e j x X x x π j e z z X X π 2 ~ The DFS X represets evely spaced samples of the z- trasform

More information

CS 683: Advanced Design and Analysis of Algorithms

CS 683: Advanced Design and Analysis of Algorithms CS 683: Advaced Desig ad Aalysis of Algorithms Lecture 6, February 1, 2008 Lecturer: Joh Hopcroft Scribes: Shaomei Wu, Etha Feldma February 7, 2008 1 Threshold for k CNF Satisfiability I the previous lecture,

More information

A Proposal of One-Time Biometric Authentication

A Proposal of One-Time Biometric Authentication A Proposal of Oe-Time Biometric Autheticatio Yoshifumi Ueshige* *Istitute of Systems & Iformatio Techologies/ KYUSHU Fukuoka City, Fukuoka Pref., JAPAN Kouichi Sakurai*+ +The Graduate School of Iformatio

More information

Elementary Educational Computer

Elementary Educational Computer Chapter 5 Elemetary Educatioal Computer. Geeral structure of the Elemetary Educatioal Computer (EEC) The EEC coforms to the 5 uits structure defied by vo Neuma's model (.) All uits are preseted i a simplified

More information

1 Graph Sparsfication

1 Graph Sparsfication CME 305: Discrete Mathematics ad Algorithms 1 Graph Sparsficatio I this sectio we discuss the approximatio of a graph G(V, E) by a sparse graph H(V, F ) o the same vertex set. I particular, we cosider

More information

Running Time. Analysis of Algorithms. Experimental Studies. Limitations of Experiments

Running Time. Analysis of Algorithms. Experimental Studies. Limitations of Experiments Ruig Time Aalysis of Algorithms Iput Algorithm Output A algorithm is a step-by-step procedure for solvig a problem i a fiite amout of time. Most algorithms trasform iput objects ito output objects. The

More information

Solution printed. Do not start the test until instructed to do so! CS 2604 Data Structures Midterm Spring, Instructions:

Solution printed. Do not start the test until instructed to do so! CS 2604 Data Structures Midterm Spring, Instructions: CS 604 Data Structures Midterm Sprig, 00 VIRG INIA POLYTECHNIC INSTITUTE AND STATE U T PROSI M UNI VERSI TY Istructios: Prit your ame i the space provided below. This examiatio is closed book ad closed

More information

Running Time ( 3.1) Analysis of Algorithms. Experimental Studies. Limitations of Experiments

Running Time ( 3.1) Analysis of Algorithms. Experimental Studies. Limitations of Experiments Ruig Time ( 3.1) Aalysis of Algorithms Iput Algorithm Output A algorithm is a step- by- step procedure for solvig a problem i a fiite amout of time. Most algorithms trasform iput objects ito output objects.

More information

Analysis of Algorithms

Analysis of Algorithms Aalysis of Algorithms Iput Algorithm Output A algorithm is a step-by-step procedure for solvig a problem i a fiite amout of time. Ruig Time Most algorithms trasform iput objects ito output objects. The

More information

1. SWITCHING FUNDAMENTALS

1. SWITCHING FUNDAMENTALS . SWITCING FUNDMENTLS Switchig is the provisio of a o-demad coectio betwee two ed poits. Two distict switchig techiques are employed i commuicatio etwors-- circuit switchig ad pacet switchig. Circuit switchig

More information

FURTHER INTEGRATION TECHNIQUES (TRIG, LOG, EXP FUNCTIONS)

FURTHER INTEGRATION TECHNIQUES (TRIG, LOG, EXP FUNCTIONS) Mathematics Revisio Guides More Trigoometric ad Log Itegrals Page of 7 MK HOME TUITION Mathematics Revisio Guides Level: AS / A Level AQA : C Edexcel: C OCR: C OCR MEI: C FURTHER INTEGRATION TECHNIQUES

More information

Computers and Scientific Thinking

Computers and Scientific Thinking Computers ad Scietific Thikig David Reed, Creighto Uiversity Chapter 15 JavaScript Strigs 1 Strigs as Objects so far, your iteractive Web pages have maipulated strigs i simple ways use text box to iput

More information

Chapter 11. Friends, Overloaded Operators, and Arrays in Classes. Copyright 2014 Pearson Addison-Wesley. All rights reserved.

Chapter 11. Friends, Overloaded Operators, and Arrays in Classes. Copyright 2014 Pearson Addison-Wesley. All rights reserved. Chapter 11 Frieds, Overloaded Operators, ad Arrays i Classes Copyright 2014 Pearso Addiso-Wesley. All rights reserved. Overview 11.1 Fried Fuctios 11.2 Overloadig Operators 11.3 Arrays ad Classes 11.4

More information

Customer Portal Quick Reference User Guide

Customer Portal Quick Reference User Guide Customer Portal Quick Referece User Guide Overview This user guide is iteded for FM Approvals customers usig the Approval Iformatio Maagemet (AIM) customer portal to track their active projects. AIM is

More information

Chapter 9. Pointers and Dynamic Arrays. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Chapter 9. Pointers and Dynamic Arrays. Copyright 2015 Pearson Education, Ltd.. All rights reserved. Chapter 9 Poiters ad Dyamic Arrays Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 9.1 Poiters 9.2 Dyamic Arrays Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Slide 9-3

More information

Improvement of the Orthogonal Code Convolution Capabilities Using FPGA Implementation

Improvement of the Orthogonal Code Convolution Capabilities Using FPGA Implementation Improvemet of the Orthogoal Code Covolutio Capabilities Usig FPGA Implemetatio Naima Kaabouch, Member, IEEE, Apara Dhirde, Member, IEEE, Saleh Faruque, Member, IEEE Departmet of Electrical Egieerig, Uiversity

More information

Analysis of Algorithms

Analysis of Algorithms Aalysis of Algorithms Ruig Time of a algorithm Ruig Time Upper Bouds Lower Bouds Examples Mathematical facts Iput Algorithm Output A algorithm is a step-by-step procedure for solvig a problem i a fiite

More information

An Improved Shuffled Frog-Leaping Algorithm for Knapsack Problem

An Improved Shuffled Frog-Leaping Algorithm for Knapsack Problem A Improved Shuffled Frog-Leapig Algorithm for Kapsack Problem Zhoufag Li, Ya Zhou, ad Peg Cheg School of Iformatio Sciece ad Egieerig Hea Uiversity of Techology ZhegZhou, Chia lzhf1978@126.com Abstract.

More information

The Closest Line to a Data Set in the Plane. David Gurney Southeastern Louisiana University Hammond, Louisiana

The Closest Line to a Data Set in the Plane. David Gurney Southeastern Louisiana University Hammond, Louisiana The Closest Lie to a Data Set i the Plae David Gurey Southeaster Louisiaa Uiversity Hammod, Louisiaa ABSTRACT This paper looks at three differet measures of distace betwee a lie ad a data set i the plae:

More information

Chapter 5. Functions for All Subtasks. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Chapter 5. Functions for All Subtasks. Copyright 2015 Pearson Education, Ltd.. All rights reserved. Chapter 5 Fuctios for All Subtasks Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 5.1 void Fuctios 5.2 Call-By-Referece Parameters 5.3 Usig Procedural Abstractio 5.4 Testig ad Debuggig

More information

Reliable Transmission. Spring 2018 CS 438 Staff - University of Illinois 1

Reliable Transmission. Spring 2018 CS 438 Staff - University of Illinois 1 Reliable Trasmissio Sprig 2018 CS 438 Staff - Uiversity of Illiois 1 Reliable Trasmissio Hello! My computer s ame is Alice. Alice Bob Hello! Alice. Sprig 2018 CS 438 Staff - Uiversity of Illiois 2 Reliable

More information

Polynomial Functions and Models. Learning Objectives. Polynomials. P (x) = a n x n + a n 1 x n a 1 x + a 0, a n 0

Polynomial Functions and Models. Learning Objectives. Polynomials. P (x) = a n x n + a n 1 x n a 1 x + a 0, a n 0 Polyomial Fuctios ad Models 1 Learig Objectives 1. Idetify polyomial fuctios ad their degree 2. Graph polyomial fuctios usig trasformatios 3. Idetify the real zeros of a polyomial fuctio ad their multiplicity

More information

AN EFFICIENT GROUP KEY MANAGEMENT USING CODE FOR KEY CALCULATION FOR SIMULTANEOUS JOIN/LEAVE: CKCS

AN EFFICIENT GROUP KEY MANAGEMENT USING CODE FOR KEY CALCULATION FOR SIMULTANEOUS JOIN/LEAVE: CKCS Iteratioal Joural of Computer Networks & Commuicatios (IJCNC) Vol.4, No.4, July 01 AN EFFICIENT GROUP KEY MANAGEMENT USING CODE FOR KEY CALCULATION FOR SIMULTANEOUS JOIN/LEAVE: CKCS Melisa Hajyvahabzadeh

More information

Outline. Research Definition. Motivation. Foundation of Reverse Engineering. Dynamic Analysis and Design Pattern Detection in Java Programs

Outline. Research Definition. Motivation. Foundation of Reverse Engineering. Dynamic Analysis and Design Pattern Detection in Java Programs Dyamic Aalysis ad Desig Patter Detectio i Java Programs Outlie Lei Hu Kamra Sartipi {hul4, sartipi}@mcmasterca Departmet of Computig ad Software McMaster Uiversity Caada Motivatio Research Problem Defiitio

More information

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe Copyright 2016 Ramez Elmasri ad Shamkat B. Navathe CHAPTER 19 Query Optimizatio Copyright 2016 Ramez Elmasri ad Shamkat B. Navathe Itroductio Query optimizatio Coducted by a query optimizer i a DBMS Goal:

More information

Chapter 3 Classification of FFT Processor Algorithms

Chapter 3 Classification of FFT Processor Algorithms Chapter Classificatio of FFT Processor Algorithms The computatioal complexity of the Discrete Fourier trasform (DFT) is very high. It requires () 2 complex multiplicatios ad () complex additios [5]. As

More information

. Written in factored form it is easy to see that the roots are 2, 2, i,

. Written in factored form it is easy to see that the roots are 2, 2, i, CMPS A Itroductio to Programmig Programmig Assigmet 4 I this assigmet you will write a java program that determies the real roots of a polyomial that lie withi a specified rage. Recall that the roots (or

More information

Chapter 8. Strings and Vectors. Copyright 2014 Pearson Addison-Wesley. All rights reserved.

Chapter 8. Strings and Vectors. Copyright 2014 Pearson Addison-Wesley. All rights reserved. Chapter 8 Strigs ad Vectors Overview 8.1 A Array Type for Strigs 8.2 The Stadard strig Class 8.3 Vectors Slide 8-3 8.1 A Array Type for Strigs A Array Type for Strigs C-strigs ca be used to represet strigs

More information

On Infinite Groups that are Isomorphic to its Proper Infinite Subgroup. Jaymar Talledo Balihon. Abstract

On Infinite Groups that are Isomorphic to its Proper Infinite Subgroup. Jaymar Talledo Balihon. Abstract O Ifiite Groups that are Isomorphic to its Proper Ifiite Subgroup Jaymar Talledo Baliho Abstract Two groups are isomorphic if there exists a isomorphism betwee them Lagrage Theorem states that the order

More information

Trusted Design in FPGAs

Trusted Design in FPGAs Trusted Desig i FPGAs Mark Tehraipoor Itroductio to Hardware Security & Trust Uiversity of Florida 1 Outlie Itro to FPGA Architecture FPGA Overview Maufacturig Flow FPGA Security Attacks Defeses Curret

More information

Novel Encryption Schemes Based on Catalan Numbers

Novel Encryption Schemes Based on Catalan Numbers D. Sravaa Kumar, H. Sueetha, A. hadrasekhar / Iteratioal Joural of Egieerig Research ad Applicatios (IJERA) ISSN: 48-96 www.iera.com Novel Ecryptio Schemes Based o atala Numbers 1 D. Sravaa Kumar H. Sueetha

More information

Chapter 10. Defining Classes. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Chapter 10. Defining Classes. Copyright 2015 Pearson Education, Ltd.. All rights reserved. Chapter 10 Defiig Classes Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 10.1 Structures 10.2 Classes 10.3 Abstract Data Types 10.4 Itroductio to Iheritace Copyright 2015 Pearso Educatio,

More information

CSE 417: Algorithms and Computational Complexity

CSE 417: Algorithms and Computational Complexity Time CSE 47: Algorithms ad Computatioal Readig assigmet Read Chapter of The ALGORITHM Desig Maual Aalysis & Sortig Autum 00 Paul Beame aalysis Problem size Worst-case complexity: max # steps algorithm

More information

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Τεχνολογία Λογισμικού, 7ο/9ο εξάμηνο 2018-2019 Τεχνολογία Λογισμικού Ν.Παπασπύρου, Αν.Καθ. ΣΗΜΜΥ, ickie@softlab.tua,gr

More information

Counting the Number of Minimum Roman Dominating Functions of a Graph

Counting the Number of Minimum Roman Dominating Functions of a Graph Coutig the Number of Miimum Roma Domiatig Fuctios of a Graph SHI ZHENG ad KOH KHEE MENG, Natioal Uiversity of Sigapore We provide two algorithms coutig the umber of miimum Roma domiatig fuctios of a graph

More information

Introduction to Network Security Missouri S&T University CPE 5420 Data Integrity Algorithms

Introduction to Network Security Missouri S&T University CPE 5420 Data Integrity Algorithms Introduction to Network Security Missouri S&T University CPE 5420 Data Integrity Algorithms Egemen K. Çetinkaya Egemen K. Çetinkaya Department of Electrical & Computer Engineering Missouri University of

More information

A New Morphological 3D Shape Decomposition: Grayscale Interframe Interpolation Method

A New Morphological 3D Shape Decomposition: Grayscale Interframe Interpolation Method A ew Morphological 3D Shape Decompositio: Grayscale Iterframe Iterpolatio Method D.. Vizireau Politehica Uiversity Bucharest, Romaia ae@comm.pub.ro R. M. Udrea Politehica Uiversity Bucharest, Romaia mihea@comm.pub.ro

More information

Introduction. Nature-Inspired Computing. Terminology. Problem Types. Constraint Satisfaction Problems - CSP. Free Optimization Problem - FOP

Introduction. Nature-Inspired Computing. Terminology. Problem Types. Constraint Satisfaction Problems - CSP. Free Optimization Problem - FOP Nature-Ispired Computig Hadlig Costraits Dr. Şima Uyar September 2006 Itroductio may practical problems are costraied ot all combiatios of variable values represet valid solutios feasible solutios ifeasible

More information

Structuring Redundancy for Fault Tolerance. CSE 598D: Fault Tolerant Software

Structuring Redundancy for Fault Tolerance. CSE 598D: Fault Tolerant Software Structurig Redudacy for Fault Tolerace CSE 598D: Fault Tolerat Software What do we wat to achieve? Versios Damage Assessmet Versio 1 Error Detectio Iputs Versio 2 Voter Outputs State Restoratio Cotiued

More information

Chapter 8. Strings and Vectors. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Chapter 8. Strings and Vectors. Copyright 2015 Pearson Education, Ltd.. All rights reserved. Chapter 8 Strigs ad Vectors Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 8.1 A Array Type for Strigs 8.2 The Stadard strig Class 8.3 Vectors Copyright 2015 Pearso Educatio, Ltd..

More information

Analysis Metrics. Intro to Algorithm Analysis. Slides. 12. Alg Analysis. 12. Alg Analysis

Analysis Metrics. Intro to Algorithm Analysis. Slides. 12. Alg Analysis. 12. Alg Analysis Itro to Algorithm Aalysis Aalysis Metrics Slides. Table of Cotets. Aalysis Metrics 3. Exact Aalysis Rules 4. Simple Summatio 5. Summatio Formulas 6. Order of Magitude 7. Big-O otatio 8. Big-O Theorems

More information

CYK Algorithm Adapted to the Penttonen Normal Form

CYK Algorithm Adapted to the Penttonen Normal Form http://excel.fit.vutbr.cz CYK Algorithm Adapted to the Pettoe Normal Form Domiika Klobučíková* Abstract This paper deals with the topic of cotext-sesitive grammars as special cases of urestricted grammars,

More information

One advantage that SONAR has over any other music-sequencing product I ve worked

One advantage that SONAR has over any other music-sequencing product I ve worked *gajedra* D:/Thomso_Learig_Projects/Garrigus_163132/z_productio/z_3B2_3D_files/Garrigus_163132_ch17.3d, 14/11/08/16:26:39, 16:26, page: 647 17 CAL 101 Oe advatage that SONAR has over ay other music-sequecig

More information

BGP Attributes and Path Selection. ISP Training Workshops

BGP Attributes and Path Selection. ISP Training Workshops BGP Attributes ad Path Selectio ISP Traiig Workshops 1 BGP Attributes The tools available for the job 2 What Is a Attribute?... Next Hop AS Path MED...... p Part of a BGP Update p Describes the characteristics

More information

COSC 1P03. Ch 7 Recursion. Introduction to Data Structures 8.1

COSC 1P03. Ch 7 Recursion. Introduction to Data Structures 8.1 COSC 1P03 Ch 7 Recursio Itroductio to Data Structures 8.1 COSC 1P03 Recursio Recursio I Mathematics factorial Fiboacci umbers defie ifiite set with fiite defiitio I Computer Sciece sytax rules fiite defiitio,

More information

Announcements. Reading. Project #4 is on the web. Homework #1. Midterm #2. Chapter 4 ( ) Note policy about project #3 missing components

Announcements. Reading. Project #4 is on the web. Homework #1. Midterm #2. Chapter 4 ( ) Note policy about project #3 missing components Aoucemets Readig Chapter 4 (4.1-4.2) Project #4 is o the web ote policy about project #3 missig compoets Homework #1 Due 11/6/01 Chapter 6: 4, 12, 24, 37 Midterm #2 11/8/01 i class 1 Project #4 otes IPv6Iit,

More information

Lecture 1: Introduction and Strassen s Algorithm

Lecture 1: Introduction and Strassen s Algorithm 5-750: Graduate Algorithms Jauary 7, 08 Lecture : Itroductio ad Strasse s Algorithm Lecturer: Gary Miller Scribe: Robert Parker Itroductio Machie models I this class, we will primarily use the Radom Access

More information

Appendix D. Controller Implementation

Appendix D. Controller Implementation COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Iterface 5 th Editio Appedix D Cotroller Implemetatio Cotroller Implemetatios Combiatioal logic (sigle-cycle); Fiite state machie (multi-cycle, pipelied);

More information

EE 459/500 HDL Based Digital Design with Programmable Logic. Lecture 13 Control and Sequencing: Hardwired and Microprogrammed Control

EE 459/500 HDL Based Digital Design with Programmable Logic. Lecture 13 Control and Sequencing: Hardwired and Microprogrammed Control EE 459/500 HDL Based Digital Desig with Programmable Logic Lecture 13 Cotrol ad Sequecig: Hardwired ad Microprogrammed Cotrol Refereces: Chapter s 4,5 from textbook Chapter 7 of M.M. Mao ad C.R. Kime,

More information

Chapter 4. Procedural Abstraction and Functions That Return a Value. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Chapter 4. Procedural Abstraction and Functions That Return a Value. Copyright 2015 Pearson Education, Ltd.. All rights reserved. Chapter 4 Procedural Abstractio ad Fuctios That Retur a Value Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 4.1 Top-Dow Desig 4.2 Predefied Fuctios 4.3 Programmer-Defied Fuctios 4.4

More information

MOTIF XF Extension Owner s Manual

MOTIF XF Extension Owner s Manual MOTIF XF Extesio Ower s Maual Table of Cotets About MOTIF XF Extesio...2 What Extesio ca do...2 Auto settig of Audio Driver... 2 Auto settigs of Remote Device... 2 Project templates with Iput/ Output Bus

More information

The Simeck Family of Lightweight Block Ciphers

The Simeck Family of Lightweight Block Ciphers The Simeck Family of Lightweight Block Ciphers Gagqiag Yag, Bo Zhu, Valeti Suder, Mark D. Aagaard, ad Guag Gog Electrical ad Computer Egieerig, Uiversity of Waterloo Sept 5, 205 Yag, Zhu, Suder, Aagaard,

More information

A server-aided verification signature scheme without random oracles

A server-aided verification signature scheme without random oracles A server-aided verificatio sigature scheme without radom oracles Bi Wag ad Qig Zhao Iformatio Egieerig College of Yagzhou Uiversity No96 West HuaYag Road, Yagzhou City, Jiagsu Provice, PRChia E-mail: jxbi76@yahooc

More information

Chapter 1. Introduction to Computers and C++ Programming. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Chapter 1. Introduction to Computers and C++ Programming. Copyright 2015 Pearson Education, Ltd.. All rights reserved. Chapter 1 Itroductio to Computers ad C++ Programmig Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 1.1 Computer Systems 1.2 Programmig ad Problem Solvig 1.3 Itroductio to C++ 1.4 Testig

More information

Better Security for Password and Two-Factor Authentication

Better Security for Password and Two-Factor Authentication Better Security for Password ad Two-Factor Autheticatio Staislaw Jarecki (Uiversity of Califoria Irvie) Nitesh Saxea (Uiversity of Alabama Birmigham) Mai collaborators: Aggelos Kiayas (U Ediburgh) Hugo

More information

Lecture 28: Data Link Layer

Lecture 28: Data Link Layer Automatic Repeat Request (ARQ) 2. Go ack N ARQ Although the Stop ad Wait ARQ is very simple, you ca easily show that it has very the low efficiecy. The low efficiecy comes from the fact that the trasmittig

More information

Convergence results for conditional expectations

Convergence results for conditional expectations Beroulli 11(4), 2005, 737 745 Covergece results for coditioal expectatios IRENE CRIMALDI 1 ad LUCA PRATELLI 2 1 Departmet of Mathematics, Uiversity of Bologa, Piazza di Porta Sa Doato 5, 40126 Bologa,

More information

Pattern Recognition Systems Lab 1 Least Mean Squares

Pattern Recognition Systems Lab 1 Least Mean Squares Patter Recogitio Systems Lab 1 Least Mea Squares 1. Objectives This laboratory work itroduces the OpeCV-based framework used throughout the course. I this assigmet a lie is fitted to a set of poits usig

More information

% Sun Logo for. X3T10/95-229, Revision 0. April 18, 1998

% Sun Logo for. X3T10/95-229, Revision 0. April 18, 1998 Su Microsystems, Ic. 2550 Garcia Aveue Moutai View, CA 94045 415 960-1300 X3T10/95-229, Revisio 0 April 18, 1998 % Su Logo for Joh Lohmeyer Chairperso, X3T10 Symbios Logic Ic. 1635 Aeroplaza Drive Colorado

More information

Future Safe Havens. Jon Crowcroft,

Future Safe Havens. Jon Crowcroft, Future Safe Haves Jo Crowcroft, http://www.cl.cam.ac.uk/~jac22 Private Data Ceter->Public Cloud ATI parters e.g. Farr/NHS Scotlad HSBC Motives for public cloud Scale out/cost save Higher Throughput aalytics

More information

n Learn how resiliency strategies reduce risk n Discover automation strategies to reduce risk

n Learn how resiliency strategies reduce risk n Discover automation strategies to reduce risk Chapter Objectives Lear how resiliecy strategies reduce risk Discover automatio strategies to reduce risk Chapter #16: Architecture ad Desig Resiliecy ad Automatio Strategies 2 Automatio/Scriptig Resiliet

More information