Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Dmitry Baryshkov
nettle
Commits
4b7d469f
Commit
4b7d469f
authored
Jan 27, 2014
by
Niels Möller
Browse files
Benchmarking of chacha.
parent
93fc1d14
Changes
4
Hide whitespace changes
Inline
Side-by-side
ChangeLog
View file @
4b7d469f
2014-01-27 Niels Möller <nisse@lysator.liu.se>
* examples/nettle-benchmark.c (main): Add benchmarking of chacha.
* nettle-internal.c (nettle_chacha): New const struct, for the
benchmark.
Chacha implementation, based on contribution by Joachim
Strömbergson.
* chacha.h: New file.
...
...
examples/nettle-benchmark.c
View file @
4b7d469f
...
...
@@ -680,7 +680,7 @@ main(int argc, char **argv)
&
nettle_des3
,
&
nettle_serpent256
,
&
nettle_twofish128
,
&
nettle_twofish192
,
&
nettle_twofish256
,
&
nettle_salsa20
,
&
nettle_salsa20r12
,
&
nettle_salsa20
,
&
nettle_salsa20r12
,
&
nettle_chacha
,
NULL
};
...
...
nettle-internal.c
View file @
4b7d469f
...
...
@@ -36,6 +36,7 @@
#include "des.h"
#include "eax.h"
#include "gcm.h"
#include "chacha.h"
#include "salsa20.h"
/* DES uses a different signature for the key set function. We ignore
...
...
@@ -79,6 +80,25 @@ nettle_des3 = {
const
struct
nettle_cipher
nettle_blowfish128
=
_NETTLE_CIPHER
(
blowfish
,
BLOWFISH
,
128
);
/* Sets a fix zero iv. For benchmarking only. */
static
void
chacha_set_key_hack
(
void
*
ctx
,
size_t
length
,
const
uint8_t
*
key
)
{
static
const
uint8_t
iv
[
CHACHA_IV_SIZE
];
chacha_set_key
(
ctx
,
length
,
key
);
chacha_set_iv
(
ctx
,
iv
);
}
/* Claim zero block size, to classify as a stream cipher. */
const
struct
nettle_cipher
nettle_chacha
=
{
"chacha"
,
sizeof
(
struct
chacha_ctx
),
0
,
CHACHA_KEY_SIZE
,
chacha_set_key_hack
,
chacha_set_key_hack
,
(
nettle_crypt_func
*
)
chacha_crypt
,
(
nettle_crypt_func
*
)
chacha_crypt
};
/* Sets a fix zero iv. For benchmarking only. */
static
void
salsa20_set_key_hack
(
void
*
ctx
,
size_t
length
,
const
uint8_t
*
key
)
...
...
nettle-internal.h
View file @
4b7d469f
...
...
@@ -61,6 +61,7 @@ extern const struct nettle_cipher nettle_des3;
extern
const
struct
nettle_cipher
nettle_blowfish128
;
/* For benchmarking only, sets no iv and lies about the block size. */
extern
const
struct
nettle_cipher
nettle_chacha
;
extern
const
struct
nettle_cipher
nettle_salsa20
;
extern
const
struct
nettle_cipher
nettle_salsa20r12
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment