f6c4e269b1
sys/crypto: define ciphers via pseudomodules
2020-03-06 19:49:58 +01:00
Francisco Molina
0e4640276c
sys/include/crypto/modes/ccm: specify implem limits
2020-01-12 17:57:27 +01:00
Francisco
4c4cb8a14f
Merge pull request #12362 from mtausig/ccm_aadlen
...
Fix CCM mode when length of AAD is > 24
2020-01-07 22:26:24 +01:00
Mathias Tausig
3382a089a8
sys/crypto: Check block size for CCM operations
2020-01-07 21:22:09 +01:00
61db4d9724
sys/include: fix typos
2019-11-23 22:39:37 +01:00
Francois Berder
4a31f94cfc
many typo fixes
...
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-11-23 22:39:07 +01:00
Mathias Tausig
89db40b563
sys/crypto: Fix code style
2019-10-08 20:58:52 +02:00
Mathias Tausig
66edeeb9c6
crypto: aes_init(): Fail correctly when called with bad key length
...
A proper error code is returned if a key with unsupported (either by the implementation or the AES algorithm) length is passed to aes_init.
This fixes Issue #10175
2019-08-07 11:02:16 +02:00
José Alamos
d16d911f42
Merge pull request #10120 from mtausig/ocb
...
Add OCB encryption mode
2019-04-23 11:08:30 +02:00
Mathias Tausig
aa611f6468
crypto: Implement OCB encryption mode
2019-04-23 10:34:32 +02:00
1990e1629a
crypto: Add chacha20poly1305 AEAD algorithm
2019-02-04 09:29:26 +01:00
Kevin "Bear Puncher" Weiss
f05852290a
Merge pull request #9236 from bergzand/pr/crypto/poly1305
...
crypto: Poly1305 implementation
2018-12-03 14:31:28 +01:00
d5c527161d
test/crypto: Add tests for poly1305
...
Tests are based on the tests vectors provided in RFC 7539
2018-12-03 09:31:10 +01:00
731ceda2f7
crypto/poly1305: Initial import
...
poly1305 implementation strongly based on
https://github.com/floodyberry/poly1305-donna
2018-12-03 09:31:09 +01:00
Juan I Carrano
77c9cc4041
Merge pull request #10219 from bergzand/pr/crypt/helper_add_wipe
...
crypto/helper: Add secure wipe function
2018-11-30 11:32:45 +01:00
Gaëtan Harter
c87fe94ec1
crypto/modes/ccm: update api to const input buffers
...
Input buffers are not modified, so can be declared const arguments.
2018-11-19 16:44:04 +01:00
Gaëtan Harter
9427371849
crypto/modes/ctr: update api to const input buffers
...
Input buffers are not modified, so can be declared const arguments.
This will allow using `const` inputs for `modes/ccm`.
2018-11-19 16:44:04 +01:00
Juan Carrano
3393dafe82
sys/crypto: configure AES via pseudomodules.
...
USEMODULE += crypto_aes_precalculated enables the precalculated T tables (the old
code).
USEMODULE += crypto_aes_unroll causes loops to be unrolled.
2018-11-15 18:25:26 +01:00
Oleg Artamonov
05fe168a1e
sys/crypto: optimize AES
2018-11-15 18:21:17 +01:00
66e0d48037
Merge pull request #10159 from mtausig/crypto_documentation
...
crypto: fix several documentation issues
2018-11-08 12:13:59 +01:00
Mathias Tausig
4272ccf281
crypto: Fix whitespace errors
2018-11-08 11:25:50 +01:00
Mathias Tausig
41667cef66
crypto: Improve and fix comments
...
Update return values in documentation
Improve comments with separate @return statement for each rv
Remove incorrect return value for aes_init
Use @return instead of @returns
Fix comment lines over 80 chars
2018-11-08 11:25:50 +01:00
Mathias Tausig
3ddd17b267
crypto: Fix typos in comments
2018-11-08 11:25:14 +01:00
6c69e6f452
Merge pull request #10347 from mtausig/fixstyle
...
crypto: Fix code style
2018-11-08 10:58:50 +01:00
Mathias Tausig
068e263cba
crypto: Fix code style
2018-11-08 10:31:42 +01:00
fa64817e61
crypto/helper: Add secure wipe function
...
Adds a cryptographically secure wipe function to wipe structs with
sensitive data. Works by first casting the pointer to a `volatile`
pointer to ensure that the compiler doesn't optimize the "memset" away.
2018-11-07 09:38:08 +01:00
ed23bdf25a
crypto/helper: Change equals arguments to const
2018-10-21 20:27:33 +02:00
7d013eb2b6
sys: fix doxygen grouping
2018-06-11 19:12:02 +02:00
Pieter Willemsen
599dbd3bcd
crypto/cbc: add return values to documentation
2018-02-27 09:56:54 +01:00
Gaëtan Harter
5e22f61cda
sys/crypto/ccm: fix docstring value for 'nonce_len'
...
From RFC3610 - 2.1.2:
A nonce N of 15-L octets
(where L: Number of octets in length field)
2017-12-19 18:24:44 +01:00
Vincent Dupont
4f6fadbdc7
crypto/cbc: constify input buffers
2017-06-27 18:58:33 +02:00
0fcc7d3834
cleanup: apply headerguard script output
2017-05-24 17:54:02 +02:00
Emmanuel Baccelli
6589c01aa0
sys/crypto: remove 3DES
2017-04-25 18:34:18 +02:00
Oleg Hahm
9934837349
crypto: remove superfluous and unused header
...
The implementation is gone for a long time anyway.
2017-03-08 10:39:47 +01:00
Oleg Hahm
3c6678b037
*: fix mismatching endifs for header guards
2017-01-19 18:30:53 +01:00
Oleg Hahm
7ee7801c10
*: remove trailing underscores from header guards
2017-01-19 18:30:53 +01:00
Oleg Hahm
c2893d4a88
sys: crypto: remove twofish and rc5
2017-01-15 14:53:43 +01:00
Mathias Tausig
3a3b26e70a
ciphers: Added defines for return values of cipher_init() and [specific cipher]_init() functions
...
New definitions: CIPHER_INIT_SUCCESS and CIPHER_ERR_BAD_CONTEXT_SIZE
2016-10-04 13:01:38 +02:00
Mathias Tausig
bc3f49a7d0
ciphers: Documented return values of init functions
2016-10-04 09:30:22 +02:00
Shuguo Zhuo
4a0720fd21
sys/crypto: Rename header include guards.
2016-09-01 16:56:13 +02:00
9082273746
core: header cleanup
2016-02-28 22:46:28 +01:00
Oleg Hahm
51db509f7c
sha256: move from crypto to hashes
2016-02-04 14:58:34 +01:00
René Kijewski
cecb4c8c56
crypto: remove skipjack support
...
Unused, unmaintained, buggy code for an unknown algorithm.
2015-09-25 00:05:18 +02:00
Nico von Geyso
4a4235c622
Unified Cipher API and Block cipher operation modes
2015-07-22 19:18:34 +02:00
Joakim Gebart
5ab48c2d67
sys/crypto/twofish: Add casts to ensure bit shifts fit in the target variable
2015-07-14 08:11:15 +02:00
René Kijewski
2cf4253710
sys: add ChaCha stream cipher and PRNG
...
This implementation is optimized for a little code and data size, not
for speed. IMO the code is more readable than in the reference
implementation.
The biggest advantage of ChaCha over other stream ciphers is the very
little data usage with only 64 bytes of context, and its good encryption
speed.
Also part of this PR is pseudo-random number generator, that just
returns the keystream of a randomly initialized ChaCha context.
2015-06-28 18:32:04 +02:00
Joakim Gebart
13832d8e62
everything: Remove filename from @file Doxygen command
2015-05-22 07:34:41 +02:00
Oleg Hahm
3d411807c0
doc: fix and complemented some doxygen headers
2015-03-18 14:27:48 +01:00
Oleg Hahm
a9ed34a293
doc: fixed documentation for crypto headers
2014-12-06 11:55:28 +01:00
Oleg Hahm
43c86b5a3e
doc: fix remaining doxygen warnings
2014-12-04 17:16:57 +01:00