在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签名字符串。
  详细解决方案
                Delphi 中Md5获取(Indy 9)
热度:32   发布时间:2024-01-21 11:26:41.0
                    相关解决方案
                
                - DELPHI 中怎么让LISTBOX控件显示SQL的数据库中所有的表名和让COMBOBOX控件显示数据库名的有关问题!
 - Delphi 求指点
 - delphi:webbrowser作浏览器时,获取当前网页缩放比率
 - makespellcode 函数的引述单元 delphi
 - Delphi Prism 2010运用的语言是delphi么,已经用DelphiDistiller破解delphi2010的机器还需要单独破解Prism
 - delphi.net 语言,怎的实现批复制
 - Delphi.Net 好用吗?解决方法
 - delphi.net版会编DELPHI7的程序么?就是不需要.NET框架的程序
 - 请教哪里有 delphi 2006 上载?小弟我想学DELPHI .NET
 - delphi.net 要学其他语言吗? 还是直接用DELPHI 语言解决思路
 - C# 调用 delphi 编纂的接口函数文件
 - 粗浅点讲,Delphi.net到底是怎样
 - Delphi 跟 C#之间的选择
 - delphi 7.0加载 Raize 5.0 老是报序列号不对,不为什么
 - Delphi 调用C#的DLL 和调用C++的DLL,有什么区别吗?那个更简单?该怎么解决
 - delphi Tree解决方法
 - delphi.net能进行CORBA的开发吗?该如何处理
 - delphi 绘图解决思路
 - delphi.net板块很冷清清啊
 - delphi.net能开展CORBA的开发吗
 - delphi 第三方控件 cxTreeList 如何把读数据库数据
 - 客户端与服务器的连接有关问题(delphi)
 - DELPHI +SQL SERVER 2005 掉线 急该如何处理
 - delphi 里面如何检测com口是不是存在
 - 请教:delphi 2006 asp.net 怎么连接SYBASE数据库?[急]
 - Turbo Delphi.net 新建Asp.net程序出现的有关问题
 - delphi.net可以搞网站吗
 - Delphi 2005安装包 小弟我这里有 哪位高手需要留言 刚学有经验的指导上
 - Delphi MDI加载dll的有关问题()
 - delphi Tree解决思路