diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/util/crypto_kdf.c | 1 | ||||
-rw-r--r-- | src/util/perf_crypto_hash.c | 30 |
2 files changed, 31 insertions, 0 deletions
diff --git a/src/util/crypto_kdf.c b/src/util/crypto_kdf.c index 9424c2350..17d95b2e0 100644 --- a/src/util/crypto_kdf.c +++ b/src/util/crypto_kdf.c | |||
@@ -63,6 +63,7 @@ GNUNET_CRYPTO_kdf_v (void *result, size_t out_len, const void *xts, | |||
63 | xts, xts_len, skm, skm_len, argp); | 63 | xts, xts_len, skm, skm_len, argp); |
64 | } | 64 | } |
65 | 65 | ||
66 | |||
66 | /** | 67 | /** |
67 | * @brief Derive key | 68 | * @brief Derive key |
68 | * @param result buffer for the derived key, allocated by caller | 69 | * @param result buffer for the derived key, allocated by caller |
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 | ||
31 | static void | 32 | static void |
@@ -41,6 +42,26 @@ perfHash () | |||
41 | } | 42 | } |
42 | 43 | ||
43 | 44 | ||
45 | static void | ||
46 | perfHKDF () | ||
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 | |||
44 | int | 65 | int |
45 | main (int argc, char *argv[]) | 66 | main (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 | ||