parent
502924ac8a
commit
6ea60084a8
@ -1,22 +1,57 @@ |
|||||||
|
|
||||||
#include <stdio.h> |
#include <stdio.h> |
||||||
#include <assert.h> |
#include <assert.h> |
||||||
|
#include <string.h> |
||||||
|
|
||||||
#include "sha1.h" |
#include "sha1.h" |
||||||
|
|
||||||
char sha1sum[41]; |
char sha1sum[41]; |
||||||
|
|
||||||
|
#define SHA1STR() { \ |
||||||
|
p=sha1sum; \
|
||||||
|
for(i=19; i>=0; --i){ \
|
||||||
|
sprintf(p,"%02x", ((unsigned char*)(sha1_digest))[i] ); \
|
||||||
|
p+=2; \
|
||||||
|
}} |
||||||
|
|
||||||
|
#define SOMEDATA "fassadenpassformpassendedachkonstuktionen_lagerraumroboterverwaltungssoftwarejungelnesehtorptsurb_fahrradpumpenschlauch_mcguiver_mit_pommes" |
||||||
|
|
||||||
|
#define SECRET1 {0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b} |
||||||
|
#define MSG1 "Hi There" |
||||||
|
|
||||||
int main(){ |
int main(){ |
||||||
|
/*SHA1STR makro needs those two*/ |
||||||
int i; |
int i; |
||||||
char* p; |
char* p; |
||||||
|
|
||||||
sha1_init(); |
sha1_init(); |
||||||
sha1_fill(0); |
sha1_fill(0); |
||||||
p=sha1sum; |
SHA1STR(); |
||||||
for(i=0; i<20; ++i){ |
printf("SHA1: %s\n",sha1sum); |
||||||
sprintf(p,"%02x", ((char*)(sha1_digest))[i] ); |
assert(strcmp("da39a3ee5e6b4b0d3255bfef95601890afd80709",sha1sum)==0); |
||||||
p+=2; |
|
||||||
|
sha1_init(); |
||||||
|
sha1_addbyte('a'); |
||||||
|
sha1_addbyte('b'); |
||||||
|
sha1_addbyte('c'); |
||||||
|
sha1_fill(3); |
||||||
|
SHA1STR(); |
||||||
|
printf("SHA1: %s\n",sha1sum); |
||||||
|
assert(strcmp("a9993e364706816aba3e25717850c26c9cd0d89d",sha1sum)==0); |
||||||
|
|
||||||
|
sha1_init(); |
||||||
|
for(i=0;i<strlen(SOMEDATA);i++){ |
||||||
|
sha1_addbyte(SOMEDATA[i]); |
||||||
} |
} |
||||||
sprintf(sha1sum,"%x%x%x%x%x",sha1_digest[0],sha1_digest[1],sha1_digest[2],sha1_digest[3],sha1_digest[4]); |
sha1_fill( strlen(SOMEDATA) ); |
||||||
|
SHA1STR(); |
||||||
printf("SHA1: %s\n",sha1sum); |
printf("SHA1: %s\n",sha1sum); |
||||||
// assert(strncmp("da39a3ee5e6b4b0d3255bfef95601890afd80709",sha1sum)==0);
|
assert(strcmp("4d71043a68fa28b9592d1aa5748e5cd4291c0512",sha1sum)==0);
|
||||||
|
|
||||||
|
char sec[20]=SECRET1; |
||||||
|
hmac(MSG1,8,sec,20); |
||||||
|
SHA1STR(); |
||||||
|
printf("HMAC: %s\n",sha1sum); |
||||||
|
assert(strcmp("b617318655057264e28bc0b6fb378c8ef146be00",sha1sum)==0);
|
||||||
|
|
||||||
} |
} |
||||||
|
|||||||
Loading…
Reference in new issue