Professional Documents
Culture Documents
Mc lc .1
Li ni u ....2
Chng I Tm hiu MD5...3
I Gii thiu v MD5..3
1.Gii thiu.3
2.ng dng quan trng...3
3.c im..4
II Thut gii...4
1.u vo v u ra.4
2.Thut gii..6
Chng II B kha MD5..11
I Nhng l hng...11
II Tn cng bng bm..12
1.S khc bit gia cc Module v cc php ton XOR..12
2.Tn cng vo s chnh lch ca hm bm13
3. Ti u ha s chnh lch va chm ca hm bm.14
III Tn cng bng va chm .....15
1.k hiu15
2. S chnh lch va chm ca md5..15
3. iu kin y c trng ca cc nhm16
4.Sa i thng ip18
5.Tn cng khc nhau vo MD5..19
Li ni u
Trc khi cc bn to mt chng trnh b kha nhm vo s serial ca
chng trnh (cn gi l keygen), ngoi vic bit code bng mt ngn ng lp
trnh no , cc bn nn hc qua cc thut ton m ha. V vic hc cho tt
ngn ng lp trnh cha chc cc bn to c mt keygen. Luyn c code
cho tt l mt vic nn lm, nhng cha chc bn nm ht ngha ca on
code . V cc phn mm mi sau ny h dung cc cch m ha lm phc tp
qu trnh b kha. Khi ta khng nm vng mt s thut ton m ha, th d
bn c thit l gii, bn cng mt nhiu thi gian b kha. Nhng nu bn
nm vng c thut ton m ha ca n th chuyn nh nh con th.
Hc thut ton chng ta s hc c rt nhiu iu. N ging nh vic hc
bng cu chng vy. Chng ta phi hc thuc cc loi thut ton m ha,
quen vi n, thy n lm vic, thn thit vi n khi gp n, hay hu du
ca n hoc ci g gn ging n chng ta s khng phi b ng.
Mi ngi chng ta u c mt du vn tay ring, khng ai ging ai. Chnh
to ha to ra chng, t nhng tng , con ngi mi ngh ra vic: ti
sao chng ta khng t to ra mt du vn tay cho mt ci g phn bit
chng vi nhau. V d nh tn ngi chng hn (tn l chui cc k t c
gi l String). Do vy trong lnh vc cng ngh thng tin ngi ta bt u
nghin cu cc cch to ra du vn tay cho cc chui String. Mt trong
nhng cch l thut ton MD5 m chng ti s ni di y.
du vn tay do thut ton MD5 to ra t mt String gi l message digest
(gi tt l md) hay cn gi l MD5 hashes (gi tt l hashes)
Bn bo co ny ch tm hiu cch thc hin ca MD5, nguyn l cng nh
thut ton c th. T gip chng ta nhn dng ra cc chng trnh s dng
MD5
TM HIU MD5 V
CC GII THUT M HA
Chng 1 Tm hiu MD5
I Gii thiu v MD5(Message-Digest algorithm)
1 Gii thiu:
T tng mi ngi c mt du vn tay ring phn bit mi ngi vi
nhau Ronald Rivest to ra MD5 nh mt cng ngh to du vn
tay(fingerprint) cho 1 ci g (vn bn,password) phn bit chng vi
nhau.
-MD5 (Message-Digest algorithm 5) l mt hm bm m ha vi gi tr
bm l
128bit. Tng c xem l mt chun trn Internet, MD5 c s dng
rng ri trong cc chng trnh an ninh mng, v cng thng c dng
kim tra tnh nguyn vn ca tp tin.
MD5 c thit k bi Ronald Rivest vo nm 1991 thay th cho hm
bm trc , MD4 (cng do ng thit k, trc na l MD2).
2 ng dng quan trng:
1/ MD5 c s dng rng ri trong th gii phn mm m bo rng
tp tin ti v khng b hng. Ngi s dng c th so snh gia thng s
kim tra phn mm bng MD5 c cng b vi thng s kim tra phn mm
ti v bng MD5.(v d:khi ngi s dng download mt file trn mng nh
pht trin ng dng s to ra mt m MD5 cho file .khi chng ta va ti v
th s c mt m MD5.nu 2 m ny trng nhau th file an ton ngc li th
c th file download c virut hoc ci g )H iu hnh Unix s dng MD5
kim tra cc gi m n phn phi, trong khi h iu hnh Windows s
dng phn mm ca hng th ba.
2/ MD5 c dng m ha mt khu. Mc ch ca vic m ha ny l
bin i mt chui mt khu thnh mt on m khc, sao cho t on m
khng th no ln tr li mt khu. C ngha l vic gii m l khng
th hoc phi mt mt khong thi gian v tn ( lm nn lng cc
hacker)
3.c im ca MD5
- T mt on vn bn u vo s to ra mt string gi l Message Degist
Hay cn gi l MD5 hash c di c nh c m ha di dng hexa.
-T mt an vn bn u vo s to ra duy nht mt hash u ra khng
bao gi c 2 hash cho 1 vn bn.
- T mt hash u ra ta se khng bao gi c th suy ngc li c plantext
ban u
II Thut gii
1.u vo v u ra
u vo:
-Thng ip a vo s c ct thnh cc khi 512 bits. Thng ip
c a vo b m chiu di ca n s chia ht cho 512. B m hot
ng nh sau:
+Trc tin n s chn bit 1 vo cui thng ip.
+Tip l hng lot bit Zero cho ti khi chiu di ca n nh hn bi s
ca 512 mt khong 64 bit .
+Phn cn li s c lp y bi mt s nguyn 64 bit biu din chiu
di ban u ca thng ip.
u ra:
-MD5 bin i mt thng ip c chiu di bt k thnh mt khi c
kch thc c nh 128 bits.
2 Gii thut
Thut ton chnh ca MD5 hot ng trn mt b 128 bit. Chia nh n ra
thnh 4 t 32 bit, k hiu l A,B,C v D. Cc gi tr ny l cc hng s c
nh.
Sau thut ton chnh s lun phin hot ng trn cc khi 512 bit. Mi
khi s phi hp vi mt b. Qu trnh x l mt khi thng ip bao gm 4
bc tng t nhau, gi l vng (round). Mi vng li gm 16 qu trnh
tng t nhau da trn hm mt chiu F, php cng module v php xoay
tri
Hnh bn di m t mt qu trnh trong mt vng
Qu trnh x l ca mt block
II Tn cng bng bm
1.S khc bit gia cc Module v cc php ton XOR
Phng php phn tch l quan trng nht i vi cc hm bm n to khc
bit gia cuc tn cng
n cng l mt trong nhng phng php quan trng nht phn
tch ccthut ton m ha khi.Nhn chung s khc bit gia cc cuc tn cng
c bit trong mt m khi l mt dang tn cng khc bit gia cc XOR.S
khc bit gia cc cuc tn cng c gii thiu bi E.Biham v Shamir A
vi xc
y.
Vi
P l xc sut chnh lch
tha mn
4.Sa i thng ip
Sa i tin nhn gip cuc tn cng hiu qu hn, n l rt c ch ci
thin phng php xc sut m chng ti m t, bng cch sa cha
mt s nhng t trong thng ip trc khi thng ip mt s cc iu
kin.cc nh nghin cu ch ra rng n rt d dng sinh ra cc thng ip
m p ng c tt c cc iu kin trong 16 bc u tin trong MD5.
Vi mi khi M0(hoc M1) v cc bin trung gian(H0,hoc H1 v H1) chng
ta p dng cc th tc di y sa M0 (hoc M1 tng ng), do tt c
cc iu kin ca vng 1 (gm 16 bc )c trong bng 4 v 6.
N rt d dng sa M0 nh vy, iu kin ca vng 1 trong bng 4 vn
gi l1
V d m bo 3 iu kin trong c1 trong bng 4 c bo ton chng ta
sa m2 nh sau.
cnew1 cold1 cold1,7*26 cold 1,12*211 cold 1,20*219
mnew2 ((cnew1- cold1)17) + mold2
Bng cch sa i mi t trong thng ip ca thng ip M0,tt c cc
iu kin trong vng 1 ca bng 4.vng lp u tin vi xc sut 2-43.
Tng t ta sa i M1.sau khi sa it a lp li ln 2 vi xc sut 2-37.
Sa i a thng ip.c mt ci tin c th hon thnh ng thi mt phn
ca iu kin ca 32 bc u tin bng phng php sa i a thng ip.
V d:
Nu a5,32=1 chng ta sa li n bng 0 bng cch sa i m1,m2,m3,m4,m5.
Nh vy s sa i s sinh ra mt va chm cc b t bc 2 n bc 6.trong
khi cc iu kin cn li ca vng 1 vn c gi li.xem bng 1 mt s
iu kin khc c th b thay i bng k thut sa i tng t hoc sa i
chnh xc hn.Bng phng php sa i,37 iu kin trong vng 2-4 cha
http://en.wikipedia.org/wiki/MD5.
2.
http://www.md5.net/.
3.
http://www.scribd.com/doc/57082475/BAO-CAO-MD5
4.
Xiaoyun Wang and Hongbo Yu. "How to Break MD5 and Other
Hash Functions". Retrieved 2009-12-21.
5. Tao Xie and Dengguo Feng (30 May 2009). How To Find Weak Input
Differences For MD5 Collision Attacks.