aboutsummaryrefslogtreecommitdiff
path: root/src/util/perf_crypto_hash.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/util/perf_crypto_hash.c')
-rw-r--r--src/util/perf_crypto_hash.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/util/perf_crypto_hash.c b/src/util/perf_crypto_hash.c
index 5261c711b..6a63b543f 100644
--- a/src/util/perf_crypto_hash.c
+++ b/src/util/perf_crypto_hash.c
@@ -26,6 +26,7 @@
26#include "platform.h" 26#include "platform.h"
27#include "gnunet_util_lib.h" 27#include "gnunet_util_lib.h"
28#include <gauger.h> 28#include <gauger.h>
29#include <gcrypt.h>
29 30
30 31
31static void 32static void
@@ -41,6 +42,26 @@ perfHash ()
41} 42}
42 43
43 44
45static void
46perfHKDF ()
47{
48 unsigned int i;
49 char res[128];
50 char buf[128];
51 char skm[64];
52
53 memset (buf, 1, sizeof (buf));
54 memset (skm, 2, sizeof (skm));
55 for (i = 0; i < 1024; i++)
56 GNUNET_CRYPTO_hkdf (res, sizeof (res),
57 GCRY_MD_SHA512, GCRY_MD_SHA256,
58 buf, sizeof (buf),
59 skm, sizeof (skm),
60 "test", (size_t) 4,
61 NULL, 0);
62}
63
64
44int 65int
45main (int argc, char *argv[]) 66main (int argc, char *argv[])
46{ 67{
@@ -55,6 +76,15 @@ main (int argc, char *argv[])
55 64 * 1024 / (1 + 76 64 * 1024 / (1 +
56 GNUNET_TIME_absolute_get_duration 77 GNUNET_TIME_absolute_get_duration
57 (start).rel_value_us / 1000LL), "kb/ms"); 78 (start).rel_value_us / 1000LL), "kb/ms");
79 start = GNUNET_TIME_absolute_get ();
80 perfHKDF ();
81 printf ("HKDF perf took %s\n",
82 GNUNET_STRINGS_relative_time_to_string (GNUNET_TIME_absolute_get_duration (start),
83 GNUNET_YES));
84 GAUGER ("UTIL", "Cryptographic HKDF",
85 64 * 1024 / (1 +
86 GNUNET_TIME_absolute_get_duration
87 (start).rel_value_us / 1000LL), "kb/ms");
58 return 0; 88 return 0;
59} 89}
60 90