]> git.lizzy.rs Git - plan9front.git/blob - sys/src/libsec/port/sha2test.c
libsec: mpconv -> mpfmt
[plan9front.git] / sys / src / libsec / port / sha2test.c
1 #include <u.h>
2 #include <libc.h>
3 #include "libsec.h"
4
5 char *tests[] = {
6         "",
7         "a",
8         "abc",
9         "message digest",
10         "abcdefghijklmnopqrstuvwxyz",
11         "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",
12         "123456789012345678901234567890123456789012345678901234567890"
13                 "12345678901234567890",
14         "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq",
15         "abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmnhi"
16                 "jklmnoijklmnopjklmnopqklmnopqrlmnopqrsmnopqrstnopqrstu",
17         0
18 };
19
20 void
21 main(void)
22 {
23         int i;
24         char **pp;
25         uchar *p;
26         uchar digest[SHA2_512dlen];
27
28         print("SHA2_224 tests:\n");
29         for(pp = tests; *pp; pp++){
30                 p = (uchar*)*pp;
31                 sha2_224(p, strlen(*pp), digest, 0);
32                 for(i = 0; i < SHA2_224dlen; i++)
33                         print("%2.2ux", digest[i]);
34                 print("\n");
35         }
36
37         print("\nSHA256 tests:\n");
38         for(pp = tests; *pp; pp++){
39                 p = (uchar*)*pp;
40                 sha2_256(p, strlen(*pp), digest, 0);
41                 for(i = 0; i < SHA2_256dlen; i++)
42                         print("%2.2ux", digest[i]);
43                 print("\n");
44         }
45
46         print("\nSHA384 tests:\n");
47         for(pp = tests; *pp; pp++){
48                 p = (uchar*)*pp;
49                 sha2_384(p, strlen(*pp), digest, 0);
50                 for(i = 0; i < SHA2_384dlen; i++)
51                         print("%2.2ux", digest[i]);
52                 print("\n");
53         }
54
55         print("\nSHA512 tests:\n");
56         for(pp = tests; *pp; pp++){
57                 p = (uchar*)*pp;
58                 sha2_512(p, strlen(*pp), digest, 0);
59                 for(i = 0; i < SHA2_512dlen; i++)
60                         print("%2.2ux", digest[i]);
61                 print("\n");
62         }
63 }