久久中文视频-久久中文网-久久中文亚洲国产-久久中文字幕久久久久-亚洲狠狠成人综合网-亚洲狠狠婷婷综合久久久久

Rss & SiteMap

曙海教育集團論壇 http://www.bjzhda.cn

曙海教育集團論壇
共1 條記錄, 每頁顯示 10 條, 頁簽: [1]
[瀏覽完整版]

標題:MD5程序(Delphi)

1樓
wangxinxin 發表于:2010-12-14 11:35:33

/*** Source Code of MD5 ***/ y}aKL(AaU  
/ written BY upfeed[FCG] / -!Ov{GHr0  
/**************************/ ( AI gW  
~;)H |R5kV  
下面的函數是計算核心,至于分組和填充部分就略去了。 o paRk.p  
==================================================== $X\deJ1Hi  
參數說明:  =&8Cg  
AA,BB,CC,DD是摘要信息,一般初始化為 1iLr KA  
AA := $67452301; 5EX Ghc'  
BB := $EFCDAB89; "A9qC*6[  
CC := $98BADCFE; A WS[e$Mt2  
DD := $10325476; 5 Z]]xR[  
MSGs是一個長64的LongWord數組,保存的就是要摘要的信息 Crg@05Z  
==================================================== yiO/0nMp  
procedure TMainForm.MD5(var AA, BB, CC, DD: LongWord; MSGs: array of LongWord); i:/Ws1=q  
var *!5X!\e_  
A, B, C, D: LongWord; Fo.p}j+>  
T: array[1..64] of LongWord; +"?O2PX  
i: integer; K| w\KX0  
3'jH,17lWV  
//沒有循環左移的位運算,自己寫一個 (8Inf_59  
function ROL(r: LongWord; bit: byte): LongWord; !+o`,KTYp  
var wAA9M4  
  ii: byte; o=)["V  
begin . UaLP  
  for ii:=1 to bit do XF Cwa  
    if r and $80000000 = $80000000 then T*1`MIkv  
    r := (r shl 1) or $01 7=`_UqCV  
    else W*WSjuFr2  
    r := (r shl 1); vxZ :l  
  Result := r; |T+YC[T#v  
end; Xaw&41K  
OhW o  
//四輪運算中的函數定義,也可以自行定義的 [,TK"  
procedure FF(var a: LongWord; b, c, d: LongWord; k, s, i: byte); N_o|2  
begin j 21>\K!p  
  a := b + ROL((a + ((b and c) or (not b and d)) + MSGs[k] + T), s); f7v|N)  
end; VlFhfOR6t  
procedure GG(var a: LongWord; b, c, d: LongWord; k, s, i: byte); ;y]BXW&l&  
begin )\m%&EXG{  
  a := b + ROL((a + ((b and d) or (c and not d)) + MSGs[k] + T), s); ,7os3~Mk9  
end; |_u|Td(n  
procedure HH(var a: LongWord; b, c, d: LongWord; k, s, i: byte); #McX  
begin *}RV)0m if  
  a := b + ROL((a + (b xor c xor d) + MSGs[k] + T), s); ?656P=b)  
end; *T-v^ndJh  
procedure II(var a: LongWord; b, c, d: LongWord; k, s, i: byte); i:n1Di1~E  
begin z|v/h UrD  
  a := b + ROL((a + (c xor (b or not d)) + MSGs[k] + T), s); "VgPaz#  
end; gxCl=\  
  % ou@Y`  
begin %mNd9 ]<  
fillchar(T, sizeof(T), 0); bF c %  
19*D*dkBR  
//常數數組的初始化,通常是這種形式,當然可以自己做手腳的 cL^r^kL("  
for i:=1 to 64 do fDrjR6xV  
  T := Trunc(4294967296*abs(sin(i))); c^8csQ fG  
( P\oLr9  
A := AA; B := BB; C := CC; D := DD; qs3V2lvYw{  
//第一輪 OY,iz  
FF(A, B, C, D, 0, 7, 1); FF(D, A, B, C, 1, 12, 2); FF(C, D, A, B, 2, 17, 3); FF(B, C, D, A, 3, 22, 4); S&{#sl#e  
FF(A, B, C, D, 4, 7, 5); FF(D, A, B, C, 5, 12, 6); FF(C, D, A, B, 6, 17, 7); FF(B, C, D, A, 7, 22, 8); *DuP~8  
FF(A, B, C, D, 8, 7, 9); FF(D, A, B, C, 9, 12,10); FF(C, D, A, B, 10,17,11); FF(B, C, D, A, 11,22,12); ';KZ.D  
FF(A, B, C, D, 12,7,13); FF(D, A, B, C, 13,12,14); FF(C, D, A, B, 14,17,15); FF(B, C, D, A, 15,22,16); gh<2i\})'  
VL8yL`~zc.  
//第二輪 `Oe"s_O#  
GG(A, B, C, D, 1, 5,17); GG(D, A, B, C, 6, 9,18); GG(C, D, A, B, 11,14,19); GG(B, C, D, A, 0, 20,20); >{ .|Ng4K  
GG(A, B, C, D, 5, 5,21); GG(D, A, B, C, 10, 9,22); GG(C, D, A, B, 15,14,23); GG(B, C, D, A, 4, 20,24); !b?`TUt   
GG(A, B, C, D, 9, 5,25); GG(D, A, B, C, 14, 9,26); GG(C, D, A, B, 3, 14,27); GG(B, C, D, A, 8, 20,28); A9kn\U92  
GG(A, B, C, D, 13,5,29); GG(D, A, B, C, 2, 9,30); GG(C, D, A, B, 7, 14,31); GG(B, C, D, A, 12,20,32); v 0D@`C  
P*3PDa@  
//第三輪 yBnUz"  
HH(A, B, C, D, 5, 4,33); HH(D, A, B, C, 8, 11,34); HH(C, D, A, B, 11,16,35); HH(B, C, D, A, 14,23,36); iE* Y@E5x0  
HH(A, B, C, D, 1, 4,37); HH(D, A, B, C, 4, 11,38); HH(C, D, A, B, 7, 16,39); HH(B, C, D, A, 10,23,40); A*TO0L  
HH(A, B, C, D, 13,4,41); HH(D, A, B, C, 0, 11,42); HH(C, D, A, B, 3, 16,43); HH(B, C, D, A, 6, 23,44); @0fiui_  
HH(A, B, C, D, 9, 4,45); HH(D, A, B, C, 12,11,46); HH(C, D, A, B, 15,16,47); HH(B, C, D, A, 2, 23,48); Vy@ 0Got5=  
3\H0Nkubts  
//第四輪 Y%#r&de  
II(A, B, C, D, 0, 6,49); II(D, A, B, C, 7, 10,50); II(C, D, A, B, 14,15,51); II(B, C, D, A, 5, 21,52); >/9on.  
II(A, B, C, D, 12,6,53); II(D, A, B, C, 3, 10,54); II(C, D, A, B, 10,15,55); II(B, C, D, A, 1, 21,56); \><v1x>;  
II(A, B, C, D, 8, 6,57); II(D, A, B, C, 15,10,58); II(C, D, A, B, 6, 15,59); II(B, C, D, A, 13,21,60); I@l }%L  
II(A, B, C, D, 4, 6,61); II(D, A, B, C, 11,10,62); II(C, D, A, B, 2, 15,63); II(B, C, D, A, 9, 21,64); (i>bGmiN  
1MxO((k  
AA := A + AA; 'I5~<"E  
BB := B + BB;  3;f}w g  
CC := C + CC; :i/uRR  
DD := D + DD; 6 u}c543  
end;
共1 條記錄, 每頁顯示 10 條, 頁簽: [1]

Copyright © 2000 - 2009 曙海教育集團
Powered By 曙海教育集團 Version 2.2
Processed in .01563 s, 2 queries.
主站蜘蛛池模板: 午夜成人影视 | 国产精品亚欧美一区二区三区 | 久久精品在现线观看免费15 | 欧美日韩精品免费一区二区三区 | 大量愉拍情侣在线视频 | 美女视频很黄很a免费国产 美女视频黄.免费网址 | 成年人免费小视频 | 草久在线观看视频 | 欧美二区在线观看 | 亚洲国内精品自在线影视 | 日韩欧一级毛片在线播无遮挡 | 欧美亚洲中日韩中文字幕在线 | 2022国内精品免费福利视频 | 日韩一区二区三区视频在线观看 | 国产成年女一区二区三区 | 欧美黄a| 国产美女视频网站 | 国产精品午夜性视频 | 亚洲欧美卡通动漫丝袜美腿 | 波多野结衣aⅴ在线 | 久久精品二三区 | 天堂影院jav成人天堂免费观看 | 久久久久亚洲国产 | 日韩第五页 | 日韩精品亚洲一级在线观看 | 国产99精品免费视频看6 | 一区二区三区四区产品乱码伦 | 中文字幕一区二区三区精彩视频 | 欧美专区一区二区三区 | 日韩视频中文字幕 | 真人毛片免费全部播放完整 | 国产情侣普通话刺激对白 | 欧美在线观看视频一区 | 99久久免费看国产精品 | 精品综合久久久久久88小说 | 日韩午夜三级 | 一区在线免费 | 最新亚洲情黄在线网站无广告 | 日本在线观看免费视频网址 | 久久久久综合一本久道 | 美女张开腿让男人桶爽免费网站 |