zoukankan      html  css  js  c++  java
  • THashMD5,THashSHA1,THashBobJenkins,TIdHashMessageDigest5的用法

     
    1. unit Unit1;  
    2.   
    3. interface  
    4.   
    5. uses  
    6.   Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,  
    7.   System.Classes, Vcl.Graphics,Soap.EncdDecd,IdHashMessageDigest,IdSSLOpenSSL,IdSSLOpenSSLHeaders,  
    8.   Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, System.Hash;  
    9.   
    10. type  
    11.   TForm1 = class(TForm)  
    12.     Button1: TButton;  
    13.     Button2: TButton;  
    14.     Button3: TButton;  
    15.     Button4: TButton;  
    16.     procedure Button1Click(Sender: TObject);  
    17.     procedure Button2Click(Sender: TObject);  
    18.     procedure Button3Click(Sender: TObject);  
    19.     procedure Button4Click(Sender: TObject);  
    20.   private  
    21.     { Private declarations }  
    22.   public  
    23.     { Public declarations }  
    24.   end;  
    25.   TMD5 = class(TIdHashMessageDigest5);  
    26.   
    27. var  
    28.   Form1: TForm1;  
    29.   
    30. implementation  
    31.   
    32. {$R *.dfm}  
    33.   
    34. function MyFun(p: Pointer): Integer; stdcall;  
    35. var  
    36.   i: Integer;  
    37. begin  
    38.   for i := to 500 do  
    39.   begin  
    40.     Form1.Canvas.Lock;  
    41.     Form1.Canvas.TextOut(10, 10, 'threadid=' + IntToStr(GetCurrentThreadId()) +  
    42.       ',' + IntToStr(i));  
    43.     Form1.Canvas.Unlock;  
    44.     Sleep(10);  
    45.   end;  
    46.   
    47.   Result := 0;  
    48. end;  
    49.   
    50. procedure MyPro();  
    51. var  
    52.   i: Integer;  
    53. begin  
    54.   for i := to 500 do  
    55.   begin  
    56.     Form1.Canvas.Lock;  
    57.     Form1.Canvas.TextOut(10, 10, 'threadid=' + IntToStr(GetCurrentThreadId()) +  
    58.       ',' + IntToStr(i));  
    59.     Form1.Canvas.Unlock;  
    60.     Sleep(10);  
    61.   end;  
    62. end;  
    63.   
    64. procedure TForm1.Button1Click(Sender: TObject);  
    65. begin  
    66.   ShowMessage('xxx');  
    67.   MessageBox(0, 'nn', 'mmm', 0);  
    68.   Application.MessageBox('xxx', 'system', 0);  
    69.   
    70. end;  
    71.   
    72. procedure TForm1.Button2Click(Sender: TObject);  
    73. begin  
    74.   //  
    75.   TThread.CreateAnonymousThread(MyPro).Start;  
    76. end;  
    77.   
    78. procedure TForm1.Button3Click(Sender: TObject);  
    79. var  
    80.   data, key: string;  
    81. begin  
    82.   data := 'xxx';  
    83.   key := 'key';  
    84.   ShowMessage(THashMD5.Create.GetHashString(data));  
    85.   ShowMessage(THashMD5.Create.GetHMAC(data, key));  
    86.   ShowMessage(THashSHA1.Create.GetHashString(data));  
    87.   ShowMessage(THashSHA1.Create.GetHMAC(data, key));  
    88.   
    89.   ShowMessage(THashBobJenkins.Create.GetHashString(data));  
    90.   
    91.   ShowMessage(THash.GetRandomString(10));  
    92.   ShowMessage(THash.DigestAsString(TEncoding.UTF8.GetBytes(data)));  
    93. end;  
    94.   
    95. procedure TForm1.Button4Click(Sender: TObject);  
    96. var  
    97.   data, key: string;  
    98. begin  
    99.   data:='fuck';  
    100.   data:=EncodeString(data) ;  
    101.   ShowMessage(data);  
    102.   ShowMessage(DecodeString(data));  
    103.   ShowMessage(TMD5.Create.HashStringAsHex(data));  
    104.   
    105.   
    106. end;  
    107.   
    108. end.  
     
     http://blog.csdn.net/earbao/article/details/46532077
  • 相关阅读:
    结对-五子棋游戏-开发过程
    团队-象棋游戏-设计文档
    课后作业-阅读任务-阅读提问-4
    团队-及格成绩查询系统-项目总结
    11.29-构建之法:现代软件工程-阅读笔记
    软件工程课程总结
    团队-及格成绩查询系统-最终程序
    团队-象棋游戏-团队一阶段互评
    课后作业-阅读任务-阅读提问-3
    课后作业-阅读任务-阅读笔记-3
  • 原文地址:https://www.cnblogs.com/findumars/p/5338895.html
Copyright © 2011-2022 走看看