MD5 与 SHA 在 Delphi 中函数实现,加密密码

MD5 与 SHA 在 Delphi 中函数实现。

为了加密密码,必须使用一种算法,查询资料,比较好的方法是使用:MD5等算法,参考:Delphi XE8 支持MD5

第一种方式是:引用 System.Hash 中的 THashMD5, (或者 THashSHA1,THashSHA2) 参考 官方文档。

                         http://docwiki.embarcadero.com/Libraries/Tokyo/en/System.Hash

      简单用法:  hashmd5 := THashMD5.Create.GetHashString('abc');         ‘abc’ 是你想加密的字符串,你提供。

       使用它计算的结果中,字符是小写。MD5 ("abc") =   900150983cd24fb0d6963f7d28e17f72

        另一种加密是:    hashsha1 := THashSHA1.Create.GetHashString('abc');

第二种方式是:使用  IdHashMessageDigest  ,产生的加密字符是:大写格式

                                比如:加密 ‘abc ’   MD5 ("abc") = 900150983CD24FB0D6963F7D28E17F72  

在单元中,引入Uses  IdHashMessageDigest,(也可以包括:,IdHash,IdGlobal, 不知道原因 !)

代码如下:

Uses  IdHashMessageDigest;

function MD5Encode(const str:string):String;     //定义一个公开函数

function MD5Encode(const str:string):String;
var
    //引用 IdHashMessageDigest,IdHash,IdGlobal 空间
    AMD5Encode:TIdHashMessageDigest5;
begin
    AMD5Encode:=TIdHashMessageDigest5.Create;            //创建实例

    try
        Result  :=  AMD5Encode.HashStringAsHex(str);      //这是实现!

    finally
        AMD5Encode.Free;
    end;
end;

   

猜你喜欢

转载自www.cnblogs.com/hopesun/p/9656814.html