| ²é¿´: 552 | »Ø¸´: 0 | |||
zyj8119ľ³æ (ÖøÃûдÊÖ)
|
[½»Á÷]
¡¾×ªÌû¡¿Delphi ÖеÄMD5ʵÏÖ·½·¨¼°delphi2009ºÍdelphi2010ÖÐÓ÷¨
|
|
ÔÚDelphi×Ô´øµÄIndy¿Ø¼þÖÐÆäʵÊÇÌṩÁËMD2,MD4,MD5¶ÔÏóµÄ£¬ÎÒÃÇ¿ÉÒÔÖ±½ÓʹÓÃËüÃÇÀ´Íê³ÉMD5µÄÇ©ÃûËã·¨¡£¶ø²»ÐèÒªÔÙÈ¥ÕÒÆäËüµÄDLL»òÊÇPasÁË¡£ ÔÚUsesµ¥ÔªÖÐÒýÓà IdHashMessageDigest,IdGlobal, IdHash µ¥Ôª£¬ÔÙдÈçÏ´úÂë¼´¿ÉÒÔ´ïµ½MD5µÄʵÏÖ¡£ ʾÀý´úÂë procedure TForm1.Button1Click(Sender: TObject); var MyMD5: TIdHashMessageDigest5; Digest: T4x4LongWordRecord; begin MyMD5 := TIdHashMessageDigest5.Create; Digest := MyMD5.HashValue(''); ShowMessage('32: ' + MyMD5.AsHex(Digest)); //ÏÔʾ32¸ö×Ö·û³¤¶ÈµÄMD5Ç©Ãû½á¹û ShowMessage('16: ' + Copy(MyMD5.AsHex(Digest), 9, 16)); //ÏÔʾ16¸ö×Ö·û³¤¶ÈµÄMD5Ç©Ãû½á¹û end; ˵Ã÷£º MyMD5.HashValue º¯ÊýÖпÉÒÔÊÇÒ»¸ö×Ö·û´®»òÊÇÒ»¸öÁ÷¶ÔÏó,Ëü·µ»ØµÄ½á¹ûÀàÐÍΪ T4x4LongWordRecord µÄMD5Ç©Ãûºó½á¹û MyMD5.AsHex º¯ÊýÊǽ«T4x4LongWordRecordµÄMd5Ç©Ãûת»»³ÉΪʮÁù½øÖƵÄMD5Ç©Ãû×Ö·û´®¡£ -----------------------------------------ÒÔÉϵķ½·¨ÊʺÏIndy9--------------------------------------------- ÒÔÏÂΪIndy10µÄÓ÷¨ÓÃdelphi2009»òdelphi2010ʱÒÔÉϾͻᱨ´íÁË. type TMD5 = class(TIdHashMessageDigest5); function StrToMD5(S: String): String; overload; function StrToMD5(S: String; L: integer): String; overload; implementation function StrToMD5(S: String): String; var Md5Encode: TMD5; begin Md5Encode:= TMD5.Create; try //Result := Md5Encode.AsHex(Md5Encode.HashValue(S)); // Indy9µÄд·¨ Result := Md5Encode.HashStringAsHex(S); // Indy10ÖпÉÒÔÖ±½ÓHashStringAsHex finally Md5Encode.Free; end; end; function StrToMD5(S: String; L: integer): String; begin Result := Copy(StrToMD5(S), 5, L); end; |
» ²ÂÄãϲ»¶
314Çóµ÷¼Á
ÒѾÓÐ5È˻ظ´
314Çóµ÷¼Á
ÒѾÓÐ11È˻ظ´
»¹Óл¯¹¤¶þÂÖµ÷¼ÁµÄѧУÂð
ÒѾÓÐ28È˻ظ´
²ÄÁÏ»¯¹¤×Ü·Ö334Çóµ÷¼Á
ÒѾÓÐ12È˻ظ´
296Çóµ÷¼Á
ÒѾÓÐ5È˻ظ´
297Çóµ÷¼Á
ÒѾÓÐ14È˻ظ´
¿¼ÑжþÂÖµ÷¼Á
ÒѾÓÐ5È˻ظ´
Çó»úеר˶297µÚ¶þÅúµ÷¼Á
ÒѾÓÐ5È˻ظ´
±¾¿ÆÖ£ÖÝ´óѧ£¬Ò»Ö¾Ô¸»ª¶«Ê¦·¶´óѧ282Çóµ÷¼Á
ÒѾÓÐ25È˻ظ´
283Çóµ÷¼Á
ÒѾÓÐ6È˻ظ´














»Ø¸´´ËÂ¥