1 #include <stdio.h>
2 
3 #include "tinydtls.h"
4 #include "debug.h"
5 #include "global.h"
6 #include "crypto.h"
7 
8 int
main()9 main() {
10   /* see http://www.ietf.org/mail-archive/web/tls/current/msg03416.html */
11   unsigned char key[] = { 0x9b, 0xbe, 0x43, 0x6b, 0xa9, 0x40, 0xf0, 0x17,
12 			  0xb1, 0x76, 0x52, 0x84, 0x9a, 0x71, 0xdb, 0x35 };
13   unsigned char label[] = { 0x74, 0x65, 0x73, 0x74, 0x20, 0x6c, 0x61, 0x62,
14 			    0x65, 0x6c};
15   unsigned char random1[] = { 0xa0, 0xba, 0x9f, 0x93, 0x6c, 0xda, 0x31, 0x18};
16   unsigned char random2[] = {0x27, 0xa6, 0xf7, 0x96, 0xff, 0xd5, 0x19, 0x8c
17   };
18   unsigned char buf[200];
19   size_t result;
20 
21   result = dtls_prf(key, sizeof(key),
22 		    label, sizeof(label),
23 		    random1, sizeof(random1),
24 		    random2, sizeof(random2),
25 		    buf, 100);
26 
27   printf("PRF yields %zu bytes of random data:\n", result);
28   hexdump(buf, result);
29   printf("\n");
30   return 0;
31 }
32