Trinh Bay Ham Bam MD5 Va SHA

Embed Size (px)

Citation preview

I.1.

Hm bm MD5 M t thut ton MD5 Gi s chng ta c thng ip b bit u vo, v ta mun tm m s ca thng ip. y b l s khng m bt k; b c th bng 0 v khng cn chia ht cho 8, ln c th bt k. Tng tng rng cc bit ca thng ip c vit nh sau : m_0 m_1 m_2 ... m_{b-1} M s thng ip c tnh qua 5 bc sau 3.1 - Bc 1 : Cc bit gn thm Thng ip c m rng, thm bit vo pha sau sao cho di ca n ( tnh theo bit ) ng d vi 448 theo mun 512. Ngha l thng ip c m rng sao cho n cn thiu 64 bit na th s c mt di chia ht cho 512. Vic ny lung c thc hin ngay c khi bn thn di thng ip ng d vi 448 theo mun 512. Vic thm bit ny thc hin nh sau : mt bit ``1`` c thm vo sau thng ip, sau cc bit ``0`` c thm vo c mt di ng d vi 448 mun 512. Trong tt c cc trng hp, c t nht 1 v nhiu nht 512 bit c thm vo. 3.2 - Bc 2 : Gn thm di Dng biu din 64 bit di b ca chui ban u c thm vo pha sau kt qu ca bc 1. Trong trng hp b ln hn 2^64 th ch c 64 bit thp ca b c s dng. ( Cc bit ny c thm vo pha sau di dng 2 word 32 bit, gn word thp trc theo quy c trn ) 3.3 - Bc 3 : Khi to b m MD Mt b m 4 word (A,B,C,D) c dng tnh m s thng ip. y mi A,B,C,D l mt thanh ghi 32 bit. Nhng thanh ghi ny c khi to theo nhng gi tr hex sau ( cc byte thp trc ) : word A : 01 23 45 67 word B : 89 ab cd ef word C : fe dc ba 98 word D : 76 54 32 10 3.4 - Bc 4 : X l thng ip theo tng khi 16 word Trc ht ta nh ngha cc hm ph, cc hm ny nhn u vo l 3 word 32 bit v to ra mt word 32 bit. F(X,Y,Z) = XY v not(X) Z G(X,Y,Z)= XZ v Y not(Z) H(X,Y,Z) = X xor Y xor Z I(X,Y,Z) = Y xor (X v not(Z))

Vi mi bit, F hot ng nh mt iu kin : nu X th Y nu khng th Z. Hm F c th nh ngha bng php + thay v v bi v XY v not(X)Z khng bao gi c ``1`` cng 1 v tr bit.Cc hm G,H v I tng t nh F, ch chng tc ng theo tng bit tng ng to ra kt qu t cc bit ca X,Y v Z Bc ny s dng mt bng 64 gi tr T[1 .. 64] c to ra t hm sin. Gi T[i] l phn t th i ca bng, th T[i]l phn nguyn ca 4294967296*|sin(i)| , i c tnh theo radian. Lm nh sau : /* X l mi khi 16 word */ For i = 0 to N/16-1 do /* Copy block i into X. */ For j = 0 to 15 do Set X[j] to M[i*16+j]. end /* of loop on j */ /* Lu A vo AA, B vo BB, C vo CC, D v DD . */ AA = A BB = B CC = C DD = D /* Vng 1. */ /* K hiu [abcd k s i] ngha l thc hin nh sau : a = b + ((a + F(b,c,d) + X[k] + T[i])

295.[sa]SHA-1296.

Di y l mt s v d s dng thut gii SHA. on d liu gc c

ngm hiu s dng bng m ASCII.

297.

SHA1("The quick brown fox jumps over the lazy dog") = 2fd4e1c6 7a2d28fc ed849ee1 bb76e739 1b93eb12 Ngay c mt thay i nh trong on d liu gc s c kh nng rt ln

298.

to nn mt gi tr bm hon ton khc do hiu ng tuyt l. V d, sa d thnh c: 299. 300. 301. 302. 303. [sa]SHA-256 304. SHA256("The quick brown fox jumps over the lazy dog") 305. = d7a8fbb3 07d78094 69ca9abc b0082e4f 8d5651e4 6d3cdb76 2d02d0bf 37c9e592 306. Hiu ng tuyt l khi sa t cui cng thnh "cog": SHA1("The quick brown fox jumps over the lazy cog") = de9f2c7f d25e1b3a fad3e85a 0bd17d9b 100db4b3 Gi tr bm ca mt on d liu rng: SHA1("") = da39a3ee 5e6b4b0d 3255bfef 95601890 afd80709

307. SHA256("The quick brown fox jumps over the lazy cog") 308. = e4c4d8f3 bf76b692 de791a17 3e053211 50f7a345 b46484fe 427f6acc 7ecc81be 309. Gi tr bm ca on d liu rng:

310. SHA256("") 311. = e3b0c442 98fc1c14 9afbf4c8 996fb924 27ae41e4 649b934c a495991b 7852b855

[sa]SHA-512 312. SHA512("The quick brown fox jumps over the lazy dog") 313. = 07e547d9 586f6a73 f73fbac0 435ed769 51218fb7 d0c8d788 a309d785 436bbb64 314. 2e93a252 a954f239 12547d1e 8a3b5ed6 e1bfd709 7821233f a0538f3d b854fee6 315. Hiu ng tuyt l khi sa t cui cng thnh "cog":

316. SHA512("The quick brown fox jumps over the lazy cog") 317. = 3eeee1d0 e11733ef 152a6c29 503b3ae2 0c4f1f3c da4cb26f 1bc1a41f 91c7fe4a 318. b3bd8649 4049e201 c4bd5155 f31ecb7a 3c860684 3c4cc8df cab7da11 c8ae5045 319. Gi tr bm ca on d liu rng:

320. SHA512("") 321. = cf83e135 7eefb8bd f1542850 d66d8007 d620e405 0b5715dc 83f4a921 d36ce9ce 322. 47d0d13c 5d85f2b0 ff8318d2 877eec2f 63b931bd 47417a81 a538327a f927da3 323.