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

Size: px
Start display at page:

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

Transcription

1 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, SHA-3, Skei Message Autheticatio Codes (MACs)

2 Ackowledgmets This course is based to a sigificat exted o slides provided by Güter Schäfer, author of the book "Netzsicherheit - Algorithmische Grudlage ud Protokolle", available i Germa from dpukt Verlag. The Eglish versio of the book is etitled Security i Fixed ad Wireless Networks: A Itroductio to Securig Data Commuicatios ad is published by Wiley is also available. We gratefully ackowledge his support. The slides by Güter Schäfer have bee partially reworked by Corelius Diekma, Heiko Niedermayer, Ali Fessi, Ralph Holz ad Georg Carle. Network Security, WS 2013/14, Chapter 2.2 2

3 Motivatio (1) Data itegrity is a essetial security service Upo receivig a message m, we eed to detect whether m has bee modified itetioally by a attacker Commo practice i data commuicatios: error detectio code over messages, to idetify if errors were itroduced durig trasmissio Examples: Parity, Bit-Iterleaved Parity, Cyclic Redudacy Check (CRC) Uderlyig idea of these codes: add redudacy to a message for beig able to detect, or eve correct trasmissio errors The error detectio/correctio code of choice ad its parameters: trade-off betwee computatioal overhead icrease of message legth Probability/characteristics of errors o the trasmissio medium Network Security, WS 2013/14, Chapter 2.2 3

4 Motivatio (2) It is a differet (ad much harder!) problem to determie if m has bee modified o purpose! Cosequetly, we eed to add a Modificatio Detectio Code (MDC) that fulfills some additioal properties which should make it computatioally ifeasible for a attacker to tamper with messages This property is fulfilled by so-called cryptographic hash fuctios Network Security, WS 2013/14, Chapter 2.2 4

5 Overview Cryptographic Hash Fuctio Network Security, WS 2013/14, Chapter 2.2 5

6 Cryptographic Hash Fuctios: Defiitio Defiitio: A fuctio h is called a hash fuctio if Compressio: h maps a iput x of arbitrary fiite bit legth to a output h(x) of fixed bit legth : h: {0,1} * {0,1} Ease of computatio: Give h ad x it is easy to compute h(x) Defiitio: A fuctio h is called a oe-way fuctio if h is a hash fuctio for essetially all pre-specified outputs y, it is computatioally ifeasible to fid a x such that h(x) = y Example: give a large prime umber p ad a primitive root g i Z * p Let h(x) = g x mod p The h is a oe-way fuctio Network Security, WS 2013/14, Chapter 2.2 6

7 Cryptographic Hash Fuctios: Defiitio Defiitio: A fuctio H is called a cryptographic hash fuctio if 1. H is a oe-way fuctio Also called 1 st pre-image resistace: For essetially all pre-specified outputs y, it is computatioally ifeasible to fid a x such that H(x) = y 2. 2 d pre-image resistace: Give x it is computatioally ifeasible to fid ay secod iput x with x x such that H(x) = H(x ) Note: This property is very importat for digital sigatures. 3. Collisio resistace: It is computatioally ifeasible to fid ay pair (x, x ) with x x such that H(x) = H(x ) 4. Radom oracle property: It is computatioally ifeasible to distiguish H(m) from radom -bit value Network Security, WS 2013/14, Chapter 2.2 7

8 Geeral Remarks (1) Computatioal ifeasibility I a mathematical sese, the otio of computatioal ifeasibility is directly related to complexity theory. It meas that o polyomial complexity algorithm for the give problem exists However, cryptographic hash fuctios, which are actually used i practice, e.g. SHA-1 or SHA-3, are ot directly based o such mathematical problems Radom output The algorithm for calculatig the hash value of a strig is determiistic However, the output of a cryptographic hash fuctio should look radom [Ferg03] I particular, a cryptographic hash fuctio should map two similar strigs to completely ucorrelated outputs (similar i the sese of a small Hammig distace) [Cos06] I particular, a cryptographic hash fuctio should ot be additive If x = x Δ, the H(x ) should be differet from H(x) H(Δ) Network Security, WS 2013/14, Chapter 2.2 8

9 Geeral Remarks (2) I etworkig there are codes for error detectio. Cyclic redudacy checks (CRC) CRC is commoly used i etworkig eviromets CRC is based o biary polyomial divisio with Iput / CRC divisor (divisor depeds o CRC variat). The remaider of the divisio is the resultig error detectio code. CRC is a fast compressio fuctio. Why ot use CRC? CRC is ot a cryptographic hash fuctio CRC does ot provide 2 d pre-image resistace ad collisio resistace CRC is additive If x = x Δ, the CRC(x ) = CRC(x) CRC(Δ) CRC is useful for protectig agaist oisy chaels But ot agaist itetioal maipulatio Network Security, WS 2013/14, Chapter 2.2 9

10 Overview MAC ad other applicatios Network Security, WS 2013/14, Chapter

11 Applicatio of Cryptographic Hash Fuctios for Data Itegrity Case: No attacker Alice (A) m, H(m) Bob (B) ok Case: With attacker Alice (A) m, H(m) m, H(m ) Bob (B) ok Applyig a hash fuctio is ot sufficiet to secure a message. H(m) eeds to be protected. Network Security, WS 2013/14, Chapter

12 Applicatio of Cryptographic Hash Fuctios for Data Itegrity Cryptographic hash fuctios are used to detect whether a message has bee modified by a attacker As see o the last slide: However, the use of a cryptographic hash fuctio is ot sufficiet to detect whether a message has bee modified. if Alice seds a message (x, H(x)) to Bob, with H a cryptographic hash fuctio, it holds: The computatio of H(x) is usually based o a well-kow algorithm The computatio of H(x) does ot iclude a secret key or aythig else boud to the idetity of Alice A attacker ca modify x to x, calculate H(x ) easily ad seds (x, H(x )) to Bob pretedig that this message would be origiatig from Alice Network Security, WS 2013/14, Chapter

13 Applicatio of Cryptographic Hash Fuctios for Data Itegrity Potetial workarouds: Alice might sed the cryptographic hash value via a out-of-bad (trusted) chael to Bob. Examples: by phoe call by a letter the hash value may be published o a (trusted) web server. Alice ad Bob might use a physically-protected chael where attackers ca oly liste, but ot sed. Use cryptography ad secret keys Message Autheticatio Code (MAC) that depeds o key k ad message m. Network Security, WS 2013/14, Chapter

14 Applicatio of Cryptographic Hash Fuctios for Data Itegrity Case: No attacker share symmetric key K Alice (A) m, MAC K (m) Bob (B) ok Case: With attacker Alice (A) Bob (B) m, MAC K (m) m', MAC K (m) ot ok Sice the secret key k is ukow to the attacker, the attacker caot compute MAC K (m ) Network Security, WS 2013/14, Chapter

15 Message Autheticatio Codes (MACs) Defiitio: Let H k be a family of fuctios parameterized by a secret key k. The H k is called a Message Autheticatio Code (MAC) algorithm if it satisfies the followig properties: 1. Compressio: H k maps a iput x of arbitrary fiite bitlegth to a output H k (x) of fixed bitlegth, called the MAC 2. Ease of computatio: give k, x ad a kow fuctio family H k the value H k (x) is easy to compute 3. Computatio-resistace: for every fixed, allowed, but ukow value of k, give zero or more text- MAC pairs (x i, H k (x i )) it is computatioally ifeasible to compute a text-mac pair (x, H k (x)) for ay ew iput x x i Network Security, WS 2013/14, Chapter

16 Message Autheticatio Codes (MACs) Note that computatio-resistace implies key o-recovery k ca ot be recovered from pairs (x i, H k (x i )), but computatio-resistace ca ot be deduced from key o-recovery, as the key k eeds ot always to be recovered to forge ew MACs (as show i subsequet example) Network Security, WS 2013/14, Chapter

17 A Simple Attack Agaist a Isecure MAC For illustrative purposes, cosider the followig MAC defiitio: Iput: message m = (x 1, x 2,..., x ) with x i beig 128-bit values, ad key K Compute (m) := x 1 x 2... x with deotig XOR Output: MAC K (m) := Ec K ((m)) with Ec K (x) deotig AES ecryptio The key legth is 128 bit ad the MAC legth is 128 bit, so we would expect a effort of about operatios to break the MAC (beig able to forge messages). Ufortuately the MAC defiitio is isecure: Attacker Eve wats to forge messages. Eve does ot kow K Alice ad Bob exchage a message (m, MAC K (m)), Eve eavesdrops it Eve ca costruct a message m that yields the same MAC: Let y 1, y 2,..., y -1 be arbitrary 128-bit values Defie y := y 1 y 2... y -1 (m) This y allows to costruct the ew message m := (y 1, y 2,..., y ) Therefore, MAC K (m ) = Ec((m )) = Ec k (y 1 y 2... y -1 y )) = Ec k (y 1 y 2... y -1 y 1 y 2... y -1 (m))) = Ec k ((m))) = MAC k (m) Therefore, MAC k (m) is a valid MAC for m Whe Bob receives (m, MAC K (m)) from Eve, he will accept it as beig origiated Network Security, WS 2013/14, Chapter

18 Applicatios of Cryptographic Hash Fuctios Pricipal applicatio which led origial desig: Message itegrity: Usig a shared secret key: A MAC over a message m directly certifies that the seder of the message possesses the secret key k ad the message could ot have bee modified without kowledge of that key Usig public key cryptography: The cryptographic hash value represets a digital figerprit, which ca be siged with a private key usig public key cryptography (like RSA, ECC, ElGamal) Give a cryptographic hash fuctio it is computatioally ifeasible to costruct two messages with the same figerprit. Therefore, a give siged figerprit ca ot be re-used by a attacker. Note: Sigatures i public key cryptography are ofte used i settigs where the security has to be guarateed a log time, e.g. digitallig sigig a cotract. Network Security, WS 2013/14, Chapter

19 Other Applicatios which require some Cautio Pseudo-radom umber geeratio The output of a cryptographic hash fuctio is assumed to be uiformly distributed Although this property has ot bee prove i a mathematical sese for commo cryptographic hash fuctios, such as MD5, SHA-1, it is ofte used Start with radom seed, the hash b 0 = seed b i+1 = H (b i seed) Ecryptio Remember: Output Feedback Mode (OFB) ecryptio performed by geeratig a pseudo radom stream, ad performig XOR with plai text Geerate a key stream as follow: k 0 = H(K A,B IV) k i+1 = H (K A,B k i ) The plai text is XORed with the key stream to obtai the cipher text. Network Security, WS 2013/14, Chapter

20 Other Applicatios of Cryptographic Hash Fuctios Autheticatio with a challege-respose mechaism r A Alice Bob Network Security, WS 2013/14, Chapter

21 Other Applicatios of Cryptographic Hash Fuctios Autheticatio with a challege-respose mechaism Alice Bob: radom umber r A Bob Alice: H(K A,B, r A ) Based o the assumptio that oly Alice ad Bob kow the shared secret K A,B, Alice ca coclude that a attacker would ot be able to compute H(K A,B, r A ), ad therefore that the respose is actually from Bob Mutual autheticatio ca be achieved by a 2 d exchage i opposite directio This autheticatio is based o a well-established autheticatio method called challege-respose This type of autheticatio is used, e.g., by HTTP digest autheticatio It avoids trasmittig the trasport of the shared key (e.g. password) i clear text Aother type of a challege-respose would be, e.g., if Bob sigs the challege r A with his private key Note that this kid of autheticatio does ot iclude egotiatio of a sessio key. Protocols for key egotiatio will be discussed i subsequet chapters. Network Security, WS 2013/14, Chapter

22 Other Applicatios of Cryptographic Hash Fuctios Cryptographic hash values ca also be used for error detectio, but they are geerally computatioally more expesive tha simple error detectio codes such as CRC Network Security, WS 2013/14, Chapter

23 Overview Commo Structures of Hash Fuctios Merkle-Damgård costructio SHA-1 SHA-3 ad Skei Network Security, WS 2013/14, Chapter

24 Overview of Commoly Used Cryptographic Hash Fuctios ad Message Autheticatio Codes Cryptographic Hash Fuctios: Message Digest 5 (MD5): Iveted by R. Rivest, Successor to MD4. Cosidered broke. Secure Hash Algorithm 1 (SHA-1): Old NIST stadard. Iveted by the Natioal Security Agecy (NSA). Ispired by MD4. Secure Hash Algorithm 3 (SHA-3): Curret NIST stadard (sice October 2012). Keccak algorithm by G. Bertoi, J. Daeme, M. Peeters ud G. Va Assche. Message Autheticatio Codes: MACs costructed from cryptographic hash fuctios: Example HMAC, RFC 2104, details later CBC-MAC, CMAC Uses blockcipher i Cipher Block Chaiig mode (Ecryptio: XOR plai text with cipher text of previous block, the ecrypt) CMAC better tha pure CBC-MAC, details later Network Security, WS 2013/14, Chapter

25 Merkle-Damgård costructio (1) Like may of today s block ciphers follow the geeral structure of a Feistel etwork, cryptographic hash fuctios such as SHA-1 follow the Merkle-Damgård costructio: Let y be a arbitrary message. Usually, the legth of the message is appeded to the message ad padded to a multiple of some block size b. Let (y 0, y 1,..., y L-1 ) deote the resultig message cosistig of L blocks of size b The geeral structure is as depicted below: y 0 y 1 y L-1 b b b f f... f CV 0 CV 1 CV 2 CV L-1 CV L CV is a chaiig value, with CV 0 := IV ad H(y) := CV L f is a specific compressio fuctio which compresses ( + b) bit to bit Network Security, WS 2013/14, Chapter

26 Merkle-Damgård costructio (2) The hash fuctio H accordig to Merkle-Damgård costructio ca be summarized as follows: CV 0 = IV CV i = f(cv i-1, y i-1 ) 1 i L = iitial -bit value H(y) = CV L Security proofs by the authors [Mer89a] have show show that if the compressio fuctio f is collisio resistat, the the resultig iterated hash fuctio H is also collisio resistat. However, the costructio has udesirable properties like legth extesio attacks. The Merkle-Damgård costructio ca be stregtheed: by addig a block with the legth of the message (legth paddig). by usig a wide pipe costructio where the hash output has less bits tha the itermediate chaiig values CV i with i < L. Hash shorter tha state good as less ifo leaked to attacker (e.g. agaist legth extesio). However, less search space for other attacks like brute force. Network Security, WS 2013/14, Chapter

27 The Secure Hash Algorithm SHA-1 (1) Also SHA-1 follows the commo structure as described above: SHA-1 works o 512-bit blocks ad produces a 160-bit hash value Iitializatio The data is padded, a legth field is added ad the resultig message is processed as blocks of legth 512 bit The chaiig value is structured as five 32-bit registers A, B, C, D, E Iitializatio: A = 0x B = 0x EF CD AB 89 C = 0x 98 BA DC FE D = 0x E = 0x C3 D2 E1 F0 The values are stored i big-edia format Each block y i of the message is processed together with CV i i a module realizig the compressio fuctio f i four rouds of 20 steps each. The rouds have a similar structure but each roud uses a differet primitive logical fuctio f 1, f 2, f 3, f 4 Each step makes use of a fixed additive costat K t, which remais uchaged durig oe roud The text block y i which cosists of bits words is stretched with a recurret liear fuctio i order to make bits out of it, which are required for the 80 steps: t{0,..., 15} W t := y i [t] t{16,..., 79} W t := CLS 1 (W t-16 W t-14 W t-8 W t-3 ) Network Security, WS 2013/14, Chapter

28 The Secure Hash Algorithm SHA-1 (2) - Oe Step A B C D E f (t DIV 20) CLS y i [k] CLS W t K (t DIV 20) A B C D E After step 79 each register A, B, C, D, E is added modulo 2 32 with the value of the correspodig register before step 0 to compute CV i+1 Network Security, WS 2013/14, Chapter

29 The Secure Hash Algorithm SHA-1 (3) The SHA-1 value over a message is the cotet of the chaiig value CV after processig the fial message block Security of SHA-1: As SHA-1 produces a hash value of legth 160 bit, it offers better security tha MD5 with its 128 bits. I February 2005, 3 Chiese Scietists published a paper where they break SHA-1 collisio resistace withi 2 69 steps, which is much less tha expected from a cryptographic hash fuctio with a output of 160 bits (2 80 ). Meawhile dow to 2 52 steps (EuroCrypt 2009 Rump Sessio). Up to ow, o attacks o the pre-image resistace of SHA-1 have bee published. Network Security, WS 2013/14, Chapter

30 SHA-3 a ew hash stadard MD5 is cosidered broke ad SHA-1 is uder heavy attack. Performace of SHA-1 worse tha performace of up-to-date symmetric ciphers like AES or Twofish. NIST started a competitio for a ew hash fuctio stadard that will be called SHA-3 i NIST SHA-3 competetitio Requiremet: fast ad secure! Roud1: 51 cadidates accepted, 13 rejected. (December 2008) Roud2: 14 cadidates survivded. (July 2009) Roud3 (fial): 5 cadidates (BLAKE, Grostl, JH, Keccak, Skei) (December 2010) Wier (October 2012): Keccak Network Security, WS 2013/14, Chapter

31 SHA-3 / Keccak / Spoge Costructio SHA-3 (Keccak) Follows the spoge costructio M is padded to a multiple of the block legth r r=0, c=0 For each block i, compute f(r+mi ci) Source: Cryptographic spoge fuctios [CSF], Jauary 2011, by Keccak authors (= Absorbig phase) I squeezig phase cocateate the ri util output legth reached. Network Security, WS 2013/14, Chapter

32 SHA-3 / Keccak / Spoge Costructio The fuctio f follows a block cipher-like cocept. Iteral state: 3d state space, 5x5 64-bit words (400 Bits) 256 Bit ad 512 Bit blocks, 24 rouds with each 5 subrouds Roud operatios iclude Parity i colums of the state space Bitwise rotatio i words Permutatio of words A o-liear bitwise combiatio operatio XOR with roud costat Autheticated Ecryptio ad Tree Hash support proposed, ot stadardized. Network Security, WS 2013/14, Chapter

33 SHA-3 cadidate Skei I additio to SHA-3 fialist Skei might also get wide support i libraries ad protocols due to its promiet authors. Variats Skei- / Skei--m = size of iteral state (relates to the stregth of the hash fuctio) = 512 (default), = 1024 (coservative), = 256 (low memory) m = size of hash output Cocept Build hash fuctio out of tweakable block cipher Uses block cipher Threefish 512, 1024, 256 bits key legth ad block legth (depedig o variat) Uique Block Iteratio (UBI) as chaiig mode Variable iput ad fixed (cofigurable) output size Optioal Argumet System Key, Cofiguratio, Persoalizatio, Public Key, Key Derivatio Idetifier, Noce, Message, Output Support for Tree Hashig Optio to process large plaitexts o parallel CPUs / machies i a tree rather tha liear processig (caot be parallelized) Network Security, WS 2013/14, Chapter

34 Tweak Tweak i Skei Overall size = 128 bits 96 bits couter for message legth Icremeted for each block 6 bits type iformatio Bit idicates paddig Bit idicates first block Bit idicates last block Makes hash result for a plaitext subsequece positio-depedet E.g. harder to isert blocks that do ot chage chaiig value to ext block E.g. harder to exted message ad compute ew MAC Etc. Network Security, WS 2013/14, Chapter

35 Threefish Block size 256, 512, or 1024 bits Key size = block size Tweak size = 128 bits All operatios o 64 bit words Mix operatio uses XOR, additio (mod 2^64), costat rotatio (roud ad word-specific) 72 rouds (80 rouds for 1024 bit versio) Subkeys Are roud-specific ad derived from key (4, 8, or 16 words) ad tweak (128 bits = 2 words) Take from [FLS+08] Skei Specificatio v1.1 Network Security, WS 2013/14, Chapter

36 Uique Block Iteratio (UBI) Chaiig Mode Uique Block Iteratio (UBI) Block cipher Iput: Message Blocks Key: Tweak ad chaiig value Chaiig Value XOR of output ad iput of block cipher Tweak Couts bytes util ow (le field) Idicates first block / fialblock UBI i Skei type field Cofig 32 byte cofiguratio strig cotaiig fields like output legth Message Plaitext Out Geerates fial output, iput is 0. Take from [FLS+08] Skei Specificatio v1.1 Take from [FLS+08] Skei Specificatio v1.1 Network Security, WS 2013/14, Chapter

37 UBI i Skei Output Geeratio Icrease the output size by applyig a couter mode for the output computatio Take from [FLS+08] Skei Specificatio v1.1 Network Security, WS 2013/14, Chapter

38 Skei-MAC MAC usage Take from [FLS+08] Skei Specificatio v1.1 Skei ca be used with HMAC ad similar fuctios, requires two hashes Faster optio: use Skei with optioal argumet key The key iput are processed by a UBI block with the key as iput, 0 as costat / iitial chaiig value ad the tweak type iformatio Key This does ot suffer the same weakesses metioed before like addig a key to the plaitext as i some weaker MAC cotructios like H(k,m,k). Network Security, WS 2013/14, Chapter

39 Overview Birthday Pheomeo Network Security, WS 2013/14, Chapter

40 Attacks Based o the Birthday Pheomeo (1) Attack agaist collisio resistace of cryptographic hash fuctios The Birthday Pheomeo: How may people eed to be i a room such that the possibility that there are at least two people with the same birthday is greater tha 0.5? For simplicity, we do t care about February, 29, ad assume that each birthday is equally likely Defie P(, k) := Pr[at least oe duplicate i k items, with each item able to take oe of equally likely values betwee 1 ad ] Defie Q(, k) := Pr[o duplicate i k items, each item betwee 1 ad ] P(, k) = 1 - Q(, k) We are able to choose the first item from possible values, the secod item from - 1 possible values, etc. Hece, the umber of differet ways to choose k items out of values with o duplicates is: N = ( - 1)... ( - k + 1) =! / ( - k)! The umber of differet ways to choose k items out of values, with or without duplicates is: k So, Q(, k) = N / k =! / (( - k)! k ) Network Security, WS 2013/14, Chapter

41 Network Security, WS 2013/14, Chapter Attacks Based o the Birthday Pheomeo (2) P(, k) := Pr[at least oe duplicate i k items, with each item able to take oe of equally likely values betwee 1 ad ] We have: We will use the followig iequality: (1 - x) e -x for all x 0 So: k k k k k Q k P k k ) (... 1) ( 1 )! (! 1 ), ( 1 ), ( k k k k e e e e e k P 2 1) ( ) ( ), (

42 Attacks Based o the Birthday Pheomeo (3) I the last step, we used the equality: (k - 1) = (k 2 - k) / 2 Exercise: proof the above equality by iductio Let s go back to our origial questio: how may people k have to be i oe room such that there are at least two people with the same birthday (out of = 365 possible) with probability 0,5? So, we wat to solve: e e k( k 1) 2 k( k 1) 2 k ( k 1) l(2) 2 For large k we ca approximate k (k - 1) by k 2, ad we get: k 2l(2) For = 365, we get k = which is quite close to the correct aswer 23 Network Security, WS 2013/14, Chapter

43 Attacks Based o the Birthday Pheomeo (4) What does this have to do with cryptographic hash fuctios? We have show, that if there are possible differet values, the umber k of values oe eeds to radomly choose i order to obtai a pair of idetical values with probability 0.5, is i the order of Now, cosider the Yuval s square root attack [Yuv79a]: Eve wats Alice to sig a message m1 which Alice ormally ever would sig. Eve kows that Alice uses the fuctio H to compute a cryptographic hash value of m. The hash value has legth r bit before she sigs it with her private key yieldig her digital sigature First, Eve produces her message m1. If she would ow compute H(m1) ad the try to fid a secod harmless message m2 which leads to the same hash value her search effort i the average case would be o the order of 2 (r - 1) Istead she takes ay harmless message m2 ad starts producig variatios m1 ad m2 of the two messages, e.g. by addig <space> <backspace> combiatios or varyig with sematically idetical words Network Security, WS 2013/14, Chapter

44 Attacks Based o the Birthday Pheomeo (5) As we leared from the birthday pheomeo, Eve will just have to produce about 2 2 r r 2 variatios of each of the two messages such that the probability that she obtais two messages m1 ad m2 with the same hash value is at least 0.5 As she has to store the messages together with their hash values i order to fid a match, the memory requiremet of her attack is o the order of 2 r 2 ad its computatio time requiremet is o the same order After she has foud m1 ad m2 with H(m1 ) = H(m2 ) she asks Alice to sig m2. Eve ca the take this sigature ad claim that Alice siged m1 Network Security, WS 2013/14, Chapter

45 Attacks Based o the Birthday Pheomeo (6) Attacks followig this method are called birthday attacks Cosider ow, that Alice uses RSA with keys of legth 2048 bit ad a cryptographic hash fuctio which produces hash values of legth 96 bit. Eves average effort to produce two messages m1 ad m2 as described above is o the order of 2 48, which is feasible today. Breakig RSA keys of legth 2048 bit is far out of reach with today's algorithms ad techology Network Security, WS 2013/14, Chapter

46 Overview Costructig MACs HMAC CBC-MACs CMAC Network Security, WS 2013/14, Chapter

47 Costructig a MAC from a Cryptographic Hash Fuctios (1) Reasos for costructig MACs from cryptographic hash fuctios : Cryptographic hash fuctios geerally execute faster tha symmetric block ciphers (Note: with AES this is t much of a problem today) There are o export restrictios to cryptographic hash fuctios Basic idea: mix a secret key K with the iput ad compute a hash value The assumptio that a attacker eeds to kow K to produce a valid MAC evertheless raises some cryptographic cocer: The costructio H(K m) is ot secure The costructio H(m, K) is ot secure The costructio H(K, p, m, K) with p deotig a additioal paddig field does ot offer sufficiet security Network Security, WS 2013/14, Chapter

48 Costructig a MAC from a Cryptographic Hash Fuctios (2) The costructio H(K m K), called prefix-suffix mode, has bee used for a while. See for example [RFC 1828] It has bee also used i earlier implemetatios of the Secure Socket Layer (SSL) protocol (util SSL 3.0) However, it is ow cosidered vulerable to attack by the cryptographic commuity. The most used costructio is HMAC: H ( K opad H ( K ipad m)) The legth of the key K is first exteded to the block legth required for the iput of the hash fuctio H by appedig zero bytes. The it is xor ed respectively with two costats opad ad ipad The hash fuctio is applied twice i a ested way. Curretly o attacks have bee discovered o this MAC fuctio. (see ote 9.67 i [Me97a]) It is stadardized i RFC 2104 [Kra97a] ad is called HMAC Network Security, WS 2013/14, Chapter

49 Cipher Block Chaiig Message Autheticatio Codes (1) A CBC-MAC is computed by ecryptig a message i CBC Mode ad takig the last ciphertext block or a part of it as the MAC: y 1 y 2 y + C -1 + K Ecrypt K Ecrypt... K Ecrypt C 1 C 2 C MAC (up to b bits) This MAC eeds ot to be siged ay further, as it has already bee produced usig a shared secret K. This scheme works with ay block cipher (AES, Twofish, 3DES,...) It is used, e.g., for IEEE (WLAN) WPA2, may modes i SSL / IPSec use some CBC-MAC costructio. Network Security, WS 2013/14, Chapter

50 Cipher Block Chaiig Message Autheticatio Codes (2) CBC-MAC security CBC-MAC must NOT be used with the same key as for the ecryptio I particular, if CBC mode is used for ecryptio, ad CBC-MAC for itegrity with the same key, the MAC will be equal to the last cipher text block If the legth of a message is ukow or o other protectio exists, CBC- MAC ca be proe to legth extesio attacks. CMAC resolves the issue. CBC-MAC performace Older symmetric block ciphers (such as DES) require more computig effort tha dedicated cryptographic hash fuctios, e.g. MD5, SHA-1 therefore, these schemes are cosidered to be slower. However, ewer symmetric block ciphers (AES) is faster tha covetioal cryptographic hash fuctios. Therefore, AES-CBC-MAC is becomig popular. Network Security, WS 2013/14, Chapter

51 Cipher-based MAC (CMAC) CMAC is a modificatio of CBC-MAC Compute keys k1 ad k2 from shared key k. Withi the CBC processig XOR complete blocks before ecryptio with k1 XOR icomplete blocks before ecryptio with k2 k is used for the block ecryptio Output is the last ecrypted block or the l most sigificat bits of the last block. AES-CMAC is stadardized by IETF as RFC 4493 ad its trucated form i RFC XCBC-MAC (e.g. foud i TLS) is a predecessor of CMAC where k1 ad k2 are iput to algorithm ad ot derived from k. Network Security, WS 2013/14, Chapter

52 Overview Itegrity Check ad Digital Sigature Network Security, WS 2013/14, Chapter

53 Itegrity check with hash fuctio / MAC Alice (A) share symmetric key K m, MAC K (m) Bob (B) Alice protects her message m with a MAC fuctio Alice has to sed m ad the MAC value to Bob. Examples for potetial MAC costructios: HMAC H( K opad H( K ipad m)) CBC-MAC / CMAC Ec K (h(m)) Network Security, WS 2013/14, Chapter

54 Itegrity check with hash fuctio / MAC Alice (A) share symmetric key K m, MAC K (m) Bob (B) Alice sigs her data m with the Message Autheticatio Code. Bob ca verify the MAC code by usig the shared key. He reads Alice s MAC K (m) He ca check if his MAC K (m) matches the oe Alice siged. Oly Alice ad Bob who kow K ca do this. Take home message: for itegrity checks the receiver eeds to kow m ad a modificatio check value that it ca compare. Thik about it: Why is Ec K (m) usually ot sufficiet? Network Security, WS 2013/14, Chapter

55 Additioal Refereces I (Beyod the scope of examiatio) [Cos06] B. Cosku, N. Memo, "Cofusio/Diffusio Capabilities of Some Robust Hash Fuctios", CISS 2006: Coferece o Iformatio Scieces ad Systems, March 22-24, 2006, Priceto, NJ [Kra97a] H. Krawczyk, M. Bellare, R. Caetti. HMAC: Keyed-Hashig for Message Autheticatio. Iteret RFC 2104, February [Mer89a] R. Merkle. Oe Way Hash Fuctios ad DES. Proceedigs of Crypto 89, Spriger, [Ferg03] Niels Ferguso, Bruce Scheier, Practical Cryptography, Joh Wiley & Sos, 2003 [PSMD5] Peter Seliger, [RFC1828] P. Metzger, IP Autheticatio usig Keyed MD5, IETF RFC 1828, August 1995 [Riv92a] R. L. Rivest. The MD5 Message Digest Algorithm. Iteret RFC 1321, April [Rob96a] M. Robshaw. O Recet Results for MD2, MD4 ad MD5. RSA Laboratories' Bulleti, No. 4, November [Yiqu05] Xiaoyu Wag, Yiqu Lisa Yi, ad Hogbo Yu, "Collisio Search Attacks o SHA1", February 2005, < [Yuv79a] G. Yuval. How to Swidle Rabi. Cryptologia, July Network Security, WS 2013/14, Chapter

56 Additioal Refereces II [FLS+08] Niels Ferguso, Stefa Lucks, Bruce Scheier, et. al.: Skei Specificatio v (accessed o 31/10/2011) [Skei] [SHA-3] NIST (Natioal Istitute for Stadards ad Techology (USA)): CRYPTOGRAPHIC HASH ALGORITHM COMPETITION. [CSF] G. Bertoi, J. Daeme, M. Peeters ud G. Va Assche: Cryptographic Spoge Fuctios. [Keccak3] G. Bertoi, J. Daeme, M. Peeters ud G. Va Assche: Keccak Referece (versio 3.0). [Keccak] G. Bertoi, J. Daeme, M. Peeters ud G. Va Assche: Keccak spoge fuctio family mai documet. Network Security, WS 2013/14, Chapter

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

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

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

Network Security. Cryptographic Hash Functions Add-on. Benjamin s slides are authoritative. Chair for Network Architectures and Services

Network Security. Cryptographic Hash Functions Add-on. Benjamin s slides are authoritative. Chair for Network Architectures and Services Chair for Network Architectures and Services Technische Universität München Network Security Cryptographic Hash Functions Add-on Benjamin s slides are authoritative Motivation (1) Common practice in data

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

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

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

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

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

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

Cryptography and Security in Communication Networks. Data authentication. ETTI - Master - Advanced Wireless Communications Cryptography ad Security i Commuicatio Networks Data autheticatio ETTI - Master - Advaced Wireless Commuicatios Overview Outlie Data itegrity. Data-origi autheticatio. Digital sigature. Cryptographic hash

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

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

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

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

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

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

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

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

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

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

IMP: Superposer Integrated Morphometrics Package Superposition Tool

IMP: Superposer Integrated Morphometrics Package Superposition Tool IMP: Superposer Itegrated Morphometrics Package Superpositio Tool Programmig by: David Lieber ( 03) Caisius College 200 Mai St. Buffalo, NY 4208 Cocept by: H. David Sheets, Dept. of Physics, Caisius College

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

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

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

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

Evaluation scheme for Tracking in AMI

Evaluation scheme for Tracking in AMI A M I C o m m u i c a t i o A U G M E N T E D M U L T I - P A R T Y I N T E R A C T I O N http://www.amiproject.org/ Evaluatio scheme for Trackig i AMI S. Schreiber a D. Gatica-Perez b AMI WP4 Trackig:

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

Lower Bounds for Sorting

Lower Bounds for Sorting Liear Sortig Topics Covered: Lower Bouds for Sortig Coutig Sort Radix Sort Bucket Sort Lower Bouds for Sortig Compariso vs. o-compariso sortig Decisio tree model Worst case lower boud Compariso Sortig

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

15-859E: Advanced Algorithms CMU, Spring 2015 Lecture #2: Randomized MST and MST Verification January 14, 2015

15-859E: Advanced Algorithms CMU, Spring 2015 Lecture #2: Randomized MST and MST Verification January 14, 2015 15-859E: Advaced Algorithms CMU, Sprig 2015 Lecture #2: Radomized MST ad MST Verificatio Jauary 14, 2015 Lecturer: Aupam Gupta Scribe: Yu Zhao 1 Prelimiaries I this lecture we are talkig about two cotets:

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

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

Data diverse software fault tolerance techniques

Data diverse software fault tolerance techniques Data diverse software fault tolerace techiques Complemets desig diversity by compesatig for desig diversity s s limitatios Ivolves obtaiig a related set of poits i the program data space, executig the

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

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

BOOLEAN MATHEMATICS: GENERAL THEORY

BOOLEAN MATHEMATICS: GENERAL THEORY CHAPTER 3 BOOLEAN MATHEMATICS: GENERAL THEORY 3.1 ISOMORPHIC PROPERTIES The ame Boolea Arithmetic was chose because it was discovered that literal Boolea Algebra could have a isomorphic umerical aspect.

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

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

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

Cryptographic Hash Functions. Rocky K. C. Chang, February 5, 2015

Cryptographic Hash Functions. Rocky K. C. Chang, February 5, 2015 Cryptographic Hash Functions Rocky K. C. Chang, February 5, 2015 1 This set of slides addresses 2 Outline Cryptographic hash functions Unkeyed and keyed hash functions Security of cryptographic hash functions

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

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

GPUMP: a Multiple-Precision Integer Library for GPUs

GPUMP: a Multiple-Precision Integer Library for GPUs GPUMP: a Multiple-Precisio Iteger Library for GPUs Kaiyog Zhao ad Xiaowe Chu Departmet of Computer Sciece, Hog Kog Baptist Uiversity Hog Kog, P. R. Chia Email: {kyzhao, chxw}@comp.hkbu.edu.hk Abstract

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

Protected points in ordered trees

Protected points in ordered trees Applied Mathematics Letters 008 56 50 www.elsevier.com/locate/aml Protected poits i ordered trees Gi-Sag Cheo a, Louis W. Shapiro b, a Departmet of Mathematics, Sugkyukwa Uiversity, Suwo 440-746, Republic

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 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

Algorithms for Disk Covering Problems with the Most Points

Algorithms for Disk Covering Problems with the Most Points Algorithms for Disk Coverig Problems with the Most Poits Bi Xiao Departmet of Computig Hog Kog Polytechic Uiversity Hug Hom, Kowloo, Hog Kog csbxiao@comp.polyu.edu.hk Qigfeg Zhuge, Yi He, Zili Shao, Edwi

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

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

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

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

Basic allocator mechanisms The course that gives CMU its Zip! Memory Management II: Dynamic Storage Allocation Mar 6, 2000.

Basic allocator mechanisms The course that gives CMU its Zip! Memory Management II: Dynamic Storage Allocation Mar 6, 2000. 5-23 The course that gives CM its Zip Memory Maagemet II: Dyamic Storage Allocatio Mar 6, 2000 Topics Segregated lists Buddy system Garbage collectio Mark ad Sweep Copyig eferece coutig Basic allocator

More information

The isoperimetric problem on the hypercube

The isoperimetric problem on the hypercube The isoperimetric problem o the hypercube Prepared by: Steve Butler November 2, 2005 1 The isoperimetric problem We will cosider the -dimesioal hypercube Q Recall that the hypercube Q is a graph whose

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

arxiv: v2 [cs.ds] 24 Mar 2018

arxiv: v2 [cs.ds] 24 Mar 2018 Similar Elemets ad Metric Labelig o Complete Graphs arxiv:1803.08037v [cs.ds] 4 Mar 018 Pedro F. Felzeszwalb Brow Uiversity Providece, RI, USA pff@brow.edu March 8, 018 We cosider a problem that ivolves

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

Ones Assignment Method for Solving Traveling Salesman Problem

Ones Assignment Method for Solving Traveling Salesman Problem Joural of mathematics ad computer sciece 0 (0), 58-65 Oes Assigmet Method for Solvig Travelig Salesma Problem Hadi Basirzadeh Departmet of Mathematics, Shahid Chamra Uiversity, Ahvaz, Ira Article history:

More information

Data Integrity & Authentication. Message Authentication Codes (MACs)

Data Integrity & Authentication. Message Authentication Codes (MACs) Data Integrity & Authentication Message Authentication Codes (MACs) Goal Ensure integrity of messages, even in presence of an active adversary who sends own messages. Alice (sender) Bob (receiver) Fran

More information

CSC165H1 Worksheet: Tutorial 8 Algorithm analysis (SOLUTIONS)

CSC165H1 Worksheet: Tutorial 8 Algorithm analysis (SOLUTIONS) CSC165H1, Witer 018 Learig Objectives By the ed of this worksheet, you will: Aalyse the ruig time of fuctios cotaiig ested loops. 1. Nested loop variatios. Each of the followig fuctios takes as iput a

More information

Hashing Functions Performance in Packet Classification

Hashing Functions Performance in Packet Classification Hashig Fuctios Performace i Packet Classificatio Mahmood Ahmadi ad Stepha Wog Computer Egieerig Laboratory Faculty of Electrical Egieerig, Mathematics ad Computer Sciece Delft Uiversity of Techology {mahmadi,

More information

CIS 121 Data Structures and Algorithms with Java Spring Stacks, Queues, and Heaps Monday, February 18 / Tuesday, February 19

CIS 121 Data Structures and Algorithms with Java Spring Stacks, Queues, and Heaps Monday, February 18 / Tuesday, February 19 CIS Data Structures ad Algorithms with Java Sprig 09 Stacks, Queues, ad Heaps Moday, February 8 / Tuesday, February 9 Stacks ad Queues Recall the stack ad queue ADTs (abstract data types from lecture.

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

Major CSL Write your name and entry no on every sheet of the answer script. Time 2 Hrs Max Marks 70

Major CSL Write your name and entry no on every sheet of the answer script. Time 2 Hrs Max Marks 70 NOTE:. Attempt all seve questios. Major CSL 02 2. Write your ame ad etry o o every sheet of the aswer script. Time 2 Hrs Max Marks 70 Q No Q Q 2 Q 3 Q 4 Q 5 Q 6 Q 7 Total MM 6 2 4 0 8 4 6 70 Q. Write a

More information

BOOLEAN DIFFERENTIATION EQUATIONS APPLICABLE IN RECONFIGURABLE COMPUTATIONAL MEDIUM

BOOLEAN DIFFERENTIATION EQUATIONS APPLICABLE IN RECONFIGURABLE COMPUTATIONAL MEDIUM MATEC Web of Cofereces 79, 01014 (016) DOI: 10.1051/ mateccof/0167901014 T 016 BOOLEAN DIFFERENTIATION EQUATIONS APPLICABLE IN RECONFIGURABLE COMPUTATIONAL MEDIUM Staislav Shidlovskiy 1, 1 Natioal Research

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

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

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

prerequisites: 6.046, 6.041/2, ability to do proofs Randomized algorithms: make random choices during run. Main benefits:

prerequisites: 6.046, 6.041/2, ability to do proofs Randomized algorithms: make random choices during run. Main benefits: Itro Admiistrivia. Sigup sheet. prerequisites: 6.046, 6.041/2, ability to do proofs homework weekly (first ext week) collaboratio idepedet homeworks gradig requiremet term project books. questio: scribig?

More information

6.854J / J Advanced Algorithms Fall 2008

6.854J / J Advanced Algorithms Fall 2008 MIT OpeCourseWare http://ocw.mit.edu 6.854J / 18.415J Advaced Algorithms Fall 2008 For iformatio about citig these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. 18.415/6.854 Advaced Algorithms

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

What are we going to learn? CSC Data Structures Analysis of Algorithms. Overview. Algorithm, and Inputs

What are we going to learn? CSC Data Structures Analysis of Algorithms. Overview. Algorithm, and Inputs What are we goig to lear? CSC316-003 Data Structures Aalysis of Algorithms Computer Sciece North Carolia State Uiversity Need to say that some algorithms are better tha others Criteria for evaluatio Structure

More information

condition w i B i S maximum u i

condition w i B i S maximum u i ecture 10 Dyamic Programmig 10.1 Kapsack Problem November 1, 2004 ecturer: Kamal Jai Notes: Tobias Holgers We are give a set of items U = {a 1, a 2,..., a }. Each item has a weight w i Z + ad a utility

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 18 Strategies for Query Processig Copyright 2016 Ramez Elmasri ad Shamkat B. Navathe Itroductio DBMS techiques to process a query Scaer idetifies

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

Morgan Kaufmann Publishers 26 February, COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface. Chapter 5

Morgan Kaufmann Publishers 26 February, COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface. Chapter 5 Morga Kaufma Publishers 26 February, 28 COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Iterface 5 th Editio Chapter 5 Set-Associative Cache Architecture Performace Summary Whe CPU performace icreases:

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

Octahedral Graph Scaling

Octahedral Graph Scaling Octahedral Graph Scalig Peter Russell Jauary 1, 2015 Abstract There is presetly o strog iterpretatio for the otio of -vertex graph scalig. This paper presets a ew defiitio for the term i the cotext 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

Sorting in Linear Time. Data Structures and Algorithms Andrei Bulatov

Sorting in Linear Time. Data Structures and Algorithms Andrei Bulatov Sortig i Liear Time Data Structures ad Algorithms Adrei Bulatov Algorithms Sortig i Liear Time 7-2 Compariso Sorts The oly test that all the algorithms we have cosidered so far is compariso The oly iformatio

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

Data Integrity & Authentication. Message Authentication Codes (MACs)

Data Integrity & Authentication. Message Authentication Codes (MACs) Data Integrity & Authentication Message Authentication Codes (MACs) Goal Ensure integrity of messages, even in presence of an active adversary who sends own messages. Alice (sender) Bob (reciever) Fran

More information

CIS 121. Introduction to Trees

CIS 121. Introduction to Trees CIS 121 Itroductio to Trees 1 Tree ADT Tree defiitio q A tree is a set of odes which may be empty q If ot empty, the there is a distiguished ode r, called root ad zero or more o-empty subtrees T 1, T 2,

More information

EE123 Digital Signal Processing

EE123 Digital Signal Processing Last Time EE Digital Sigal Processig Lecture 7 Block Covolutio, Overlap ad Add, FFT Discrete Fourier Trasform Properties of the Liear covolutio through circular Today Liear covolutio with Overlap ad add

More information

Hardware Design and Performance Estimation of The 128-bit Block Cipher CRYPTON

Hardware Design and Performance Estimation of The 128-bit Block Cipher CRYPTON Hardware Desig ad Performace Estimatio of The 128-bit Block Cipher CRYPTON Eujog Hog, Jai-Hoo Chug, ad Chae Hoo Lim Iformatio ad Commuicatios Research Ceter Future Systems, Ic. 372-2 Yagjae-Dog, Seocho-Ku,

More information

Analysis of Algorithms

Analysis of Algorithms Presetatio for use with the textbook, Algorithm Desig ad Applicatios, by M. T. Goodrich ad R. Tamassia, Wiley, 2015 Aalysis of Algorithms Iput 2015 Goodrich ad Tamassia Algorithm Aalysis of Algorithms

More information

Outline and Reading. Analysis of Algorithms. Running Time. Experimental Studies. Limitations of Experiments. Theoretical Analysis

Outline and Reading. Analysis of Algorithms. Running Time. Experimental Studies. Limitations of Experiments. Theoretical Analysis Outlie ad Readig Aalysis of Algorithms Iput Algorithm Output Ruig time ( 3.) Pseudo-code ( 3.2) Coutig primitive operatios ( 3.3-3.) Asymptotic otatio ( 3.6) Asymptotic aalysis ( 3.7) Case study Aalysis

More information

Civil Engineering Computation

Civil Engineering Computation Civil Egieerig Computatio Fidig Roots of No-Liear Equatios March 14, 1945 World War II The R.A.F. first operatioal use of the Grad Slam bomb, Bielefeld, Germay. Cotets 2 Root basics Excel solver Newto-Raphso

More information

An Efficient Algorithm for Graph Bisection of Triangularizations

An Efficient Algorithm for Graph Bisection of Triangularizations A Efficiet Algorithm for Graph Bisectio of Triagularizatios Gerold Jäger Departmet of Computer Sciece Washigto Uiversity Campus Box 1045 Oe Brookigs Drive St. Louis, Missouri 63130-4899, USA jaegerg@cse.wustl.edu

More information

Extending The Sleuth Kit and its Underlying Model for Pooled Storage File System Forensic Analysis

Extending The Sleuth Kit and its Underlying Model for Pooled Storage File System Forensic Analysis Extedig The Sleuth Kit ad its Uderlyig Model for Pooled File System Foresic Aalysis Frauhofer Istitute for Commuicatio, Iformatio Processig ad Ergoomics Ja-Niclas Hilgert* Marti Lambertz Daiel Plohma ja-iclas.hilgert@fkie.frauhofer.de

More information

Computer Systems - HS

Computer Systems - HS What have we leared so far? Computer Systems High Level ENGG1203 2d Semester, 2017-18 Applicatios Sigals Systems & Cotrol Systems Computer & Embedded Systems Digital Logic Combiatioal Logic Sequetial Logic

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

Speeding-up dynamic programming in sequence alignment

Speeding-up dynamic programming in sequence alignment Departmet of Computer Sciece Aarhus Uiversity Demark Speedig-up dyamic programmig i sequece aligmet Master s Thesis Dug My Hoa - 443 December, Supervisor: Christia Nørgaard Storm Pederse Implemetatio code

More information

Administrative UNSUPERVISED LEARNING. Unsupervised learning. Supervised learning 11/25/13. Final project. No office hours today

Administrative UNSUPERVISED LEARNING. Unsupervised learning. Supervised learning 11/25/13. Final project. No office hours today Admiistrative Fial project No office hours today UNSUPERVISED LEARNING David Kauchak CS 451 Fall 2013 Supervised learig Usupervised learig label label 1 label 3 model/ predictor label 4 label 5 Supervised

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

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

Empirical Validate C&K Suite for Predict Fault-Proneness of Object-Oriented Classes Developed Using Fuzzy Logic.

Empirical Validate C&K Suite for Predict Fault-Proneness of Object-Oriented Classes Developed Using Fuzzy Logic. Empirical Validate C&K Suite for Predict Fault-Proeess of Object-Orieted Classes Developed Usig Fuzzy Logic. Mohammad Amro 1, Moataz Ahmed 1, Kaaa Faisal 2 1 Iformatio ad Computer Sciece Departmet, Kig

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

% 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