THashMD5,THashSHA1,THashBobJenkins,TIdHashMessageDigest5的用法

摘要:
[delphi]viewplaincopyunitUnit1;interfaceusesWinapi.Windows,Winapi.Messages,System.SysUtils,System.Variants,System.Classes,Vcl.Graphics,Soap.EncdDecd,IdHashMessageDigest,IdSSLOpenSSL,IdSSLOpenSSLHeader

[delphi]view plaincopy

  1. unitUnit1;
  2. interface
  3. uses
  4. Winapi.Windows,Winapi.Messages,System.SysUtils,System.Variants,
  5. System.Classes,Vcl.Graphics,Soap.EncdDecd,IdHashMessageDigest,IdSSLOpenSSL,IdSSLOpenSSLHeaders,
  6. Vcl.Controls,Vcl.Forms,Vcl.Dialogs,Vcl.StdCtrls,System.Hash;
  7. type
  8. TForm1=class(TForm)
  9. Button1:TButton;
  10. Button2:TButton;
  11. Button3:TButton;
  12. Button4:TButton;
  13. procedureButton1Click(Sender:TObject);
  14. procedureButton2Click(Sender:TObject);
  15. procedureButton3Click(Sender:TObject);
  16. procedureButton4Click(Sender:TObject);
  17. private
  18. {Privatedeclarations}
  19. public
  20. {Publicdeclarations}
  21. end;
  22. TMD5=class(TIdHashMessageDigest5);
  23. var
  24. Form1:TForm1;
  25. implementation
  26. {$R*.dfm}
  27. functionMyFun(p:Pointer):Integer;stdcall;
  28. var
  29. i:Integer;
  30. begin
  31. fori:=0to500do
  32. begin
  33. Form1.Canvas.Lock;
  34. Form1.Canvas.TextOut(10,10,'threadid='+IntToStr(GetCurrentThreadId())+
  35. ','+IntToStr(i));
  36. Form1.Canvas.Unlock;
  37. Sleep(10);
  38. end;
  39. Result:=0;
  40. end;
  41. procedureMyPro();
  42. var
  43. i:Integer;
  44. begin
  45. fori:=0to500do
  46. begin
  47. Form1.Canvas.Lock;
  48. Form1.Canvas.TextOut(10,10,'threadid='+IntToStr(GetCurrentThreadId())+
  49. ','+IntToStr(i));
  50. Form1.Canvas.Unlock;
  51. Sleep(10);
  52. end;
  53. end;
  54. procedureTForm1.Button1Click(Sender:TObject);
  55. begin
  56. ShowMessage('xxx');
  57. MessageBox(0,'nn','mmm',0);
  58. Application.MessageBox('xxx','system',0);
  59. end;
  60. procedureTForm1.Button2Click(Sender:TObject);
  61. begin
  62. //
  63. TThread.CreateAnonymousThread(MyPro).Start;
  64. end;
  65. procedureTForm1.Button3Click(Sender:TObject);
  66. var
  67. data,key:string;
  68. begin
  69. data:='xxx';
  70. key:='key';
  71. ShowMessage(THashMD5.Create.GetHashString(data));
  72. ShowMessage(THashMD5.Create.GetHMAC(data,key));
  73. ShowMessage(THashSHA1.Create.GetHashString(data));
  74. ShowMessage(THashSHA1.Create.GetHMAC(data,key));
  75. ShowMessage(THashBobJenkins.Create.GetHashString(data));
  76. ShowMessage(THash.GetRandomString(10));
  77. ShowMessage(THash.DigestAsString(TEncoding.UTF8.GetBytes(data)));
  78. end;
  79. procedureTForm1.Button4Click(Sender:TObject);
  80. var
  81. data,key:string;
  82. begin
  83. data:='fuck';
  84. data:=EncodeString(data);
  85. ShowMessage(data);
  86. ShowMessage(DecodeString(data));
  87. ShowMessage(TMD5.Create.HashStringAsHex(data));
  88. end;
  89. end.
http://blog.csdn.net/earbao/article/details/46532077

免责声明:文章转载自《THashMD5,THashSHA1,THashBobJenkins,TIdHashMessageDigest5的用法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇临时表列的长度oc之字典创建 复制 获取key value值下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

(转)在CentOS中修改中文字符集

本文介绍在linux的shell环境下优化linux中文显示的方法。在CentOS7以前的版本下,默认的字符集的路径一般保存在/etc/sysconfig/i18n文件中。但是在CentOS7版本中,字符集配置文件位于/etc/locale.conf。通过source命令即可使修改生效:[ruby]viewplaincopy#source/etc/local...

微信分享回调

在我们的项目中,我曾经判断用户是否通过微信分享了文章或内容。在确认用户通过微信分享了文章或内容后,我向用户添加了相应的分数。...

DD-wrt+Wiwiz搭建私人免费(收费)WiFi认证页面+详细的操作教程

因此,请选择正确的DD-WRT版本将无线路由器连接到Internet。执行以下命令:#cd;wgethttp://dl.wiwiz.com/hsbuilder-util-latest-DD-WRT.tar.gz#cd/jffs ; tar zxf/tmp/root/hsbuilder-util-lalatest-DD-WRT.tar。gz#/jffs/usr...

华为交换机堆叠配置

请参考华为交换机的配置堆栈。[Leaf1-stack-port0/1]portinterfaceg0/0/12启用物理接口12加入堆栈组[Leaf1]stackslot0priority255修改优先级255,默认值为100警告:不要频繁修改优先级,因为它会使堆栈分裂。持续...

Oracle 12c新特性(For DBA)

2: Oracle12cIn-MemoryOracle12cIn-Memory提供了一种独特的双格式体系结构,它可以使用传统的行格式和新的内存列格式同时在内存中存储表。与其他NOSQL分片结构相比,OracleSharding提供了优异的运行时性能和更简单的生命周期管理。OracleSharding使用GDS体系结构自动部署和管理分片和复制技术。GDS还提供...

安装pygame

在python3中安装pygame库。一段时间后,您可以看到安装成功,并且可以导入pygame...