📄 sha1_example.c
字号:
#include <windows.h>
#include <stdio.h>
#include <time.h>
#include "sha1.h"
/* Test Vectors
String: "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq",
Digest: "84983e441c3bd26ebaae4aa1f95129e5e54670f1",
*/
#define NUM 1000000
#define MESSAGELEN 1300
void sha1_example()
{
clock_t start,finish;
int i;
unsigned char msg[MESSAGELEN];
unsigned char digest[20];
struct sha1Context ctx;
char str[512], *m;
start = clock();
for(i=0; i< NUM; i++){
ds_sha1Init(&ctx);
ds_sha1Update(&ctx, msg, MESSAGELEN);
ds_sha1Final(&ctx,digest);
}
finish = clock();
str[0] = 0;
sprintf(str+strlen(str), "%.4f seconds spent in hashing\r\n", (double)(finish - start) / CLOCKS_PER_SEC );
sprintf(str+strlen(str), "Speed: %.2fMbps\r\n\r\n", (MESSAGELEN*8000)/(double)(finish - start) );
m = "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq";
ds_sha1Init(&ctx);
ds_sha1Update(&ctx, m, strlen(m));
ds_sha1Final(&ctx,digest);
sprintf(str+strlen(str),"String: %s\r\n",m);
sprintf(str+strlen(str),"Digest: ");
for(i=0;i<20;i++)
sprintf(str+strlen(str),"%02x",digest[i]);
sprintf(str+strlen(str),"\r\nSHOULD BE: 84983e441c3bd26ebaae4aa1f95129e5e54670f1\r\n");
MessageBox(NULL,str,"SHA1 test",MB_OK);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -