Karel Miko
591ef19c7a
comment: it might happen that LTC_WCHAR_MAX is undefined
2017-03-09 20:48:24 +01:00
Karel Miko
7ab76a464e
introducing LTC_WCHAR_MAX
2017-03-09 20:48:24 +01:00
Karel Miko
ac3f55fd92
there is no snprintf before Visual C++ 2015
2017-03-09 20:07:39 +01:00
Steffen Jaeckel
9092470843
fix doxygen warnings
2017-03-01 15:00:41 +01:00
Francois Perrad
eca2290b1e
missing prototypes
2017-02-28 23:07:06 +01:00
Karel Miko
4bd327a4cc
better handling wchar_t when __WCHAR_MAX__ is 0xFFFF (2 bytes only)
2017-02-28 20:24:49 +01:00
Steffen Jaeckel
03f0674985
add compare_testvector() prototype to tomcrypt_misc.h
2017-02-28 20:09:32 +01:00
Steffen Jaeckel
9a29428f8e
Add secondary rc2 setup function
...
...to be able to pass the effective key length.
2017-02-28 20:09:32 +01:00
Steffen Jaeckel
eee936d752
add base64url_strict_encode()
2017-02-28 01:27:06 +01:00
Steffen Jaeckel
c1dd1cbe30
re-work strict/relaxed base64 decoding implementation
...
Instead of one API function with an option parameter, provide two API
functions.
Instead of defaulting to strict decoding, default to relaxed decoding.
2017-02-28 01:27:03 +01:00
Steffen Jaeckel
bc16c149fc
fix base64[url] strict/relaxed decode
2017-02-28 01:27:01 +01:00
Steffen Jaeckel
b10f9502f8
add RFC4648 base64 decoding compliance
2017-02-28 01:26:57 +01:00
Matt Kelly
e187f4cbf4
Fix all warnings from -Wcast-align
2017-02-26 10:12:16 -05:00
Francois Perrad
b0f06ed1ec
add parenthese in macro
2017-02-24 19:00:36 +01:00
Francois Perrad
5d7036ebe2
remove hard tab
2017-02-24 16:26:48 +01:00
Steffen Jaeckel
ecb2402ba8
remove [X]CLOCKS_PER_SEC
2017-02-24 00:28:59 +01:00
Karel Miko
0c226834cc
introducing LTC_INLINE
2017-02-23 23:47:56 +01:00
Karel Miko
3d5b90d24d
LTC_NO_PROTOTYPES related cosmetics
2017-02-23 11:03:55 +01:00
Steffen Jaeckel
76b289833c
only define LTC_NO_PROTOTYPES on one point
...
This closes #132
2017-02-23 11:03:55 +01:00
Karel Miko
a2c87f54de
adding rsa_import_radix
2017-02-21 16:55:09 +01:00
Karel Miko
10545366d2
adding dsa_import_radix
2017-02-21 16:54:10 +01:00
Steffen Jaeckel
383f200cb6
fix LTC_MINIMAL
2017-02-20 19:19:44 +01:00
Steffen Jaeckel
08aabc7f8c
improve print_hex() prototype
2017-02-17 11:53:14 +01:00
Steffen Jaeckel
7c2ff8ebfe
show ROtate operator configuration in build settings
...
[skip ci]
2016-01-05 23:55:06 +01:00
Steffen Jaeckel
460b8716c9
fix clang-analyzer warnings
...
This fixes #80
2015-12-05 14:31:01 +01:00
Steffen Jaeckel
01f1845402
harden RSA CRT by implementing the proposed countermeasure
...
... from ch. 1.3 of [1]
[1] https://people.redhat.com/~fweimer/rsa-crt-leaks.pdf
2015-09-08 02:44:17 +02:00
Steffen Jaeckel
6ec93afa3c
clean-up test-build and extend tomcrypt_custom.h
...
added LTC_MINIMAL to be able do a build without nearly any
functionality :)
make sure timing resistant RSA & ECC are enabled if not said otherwise
2015-09-01 17:36:43 +02:00
Jerome Forissier
5c3f177b34
Add function pointers for accelerated XTS to ltc_cipher_descriptor
...
Similar to what already exists for other modes.
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
2015-08-25 23:58:22 +02:00
Steffen Jaeckel
a13257094e
handle LTC_NO_FAST before handling LTC_FAST
2015-08-23 22:59:15 +02:00
Steffen Jaeckel
ee03c97cde
add crc32
2015-08-23 22:59:14 +02:00
Steffen Jaeckel
9585faca2b
re-work debug output of some tests
2015-08-23 22:59:14 +02:00
Steffen Jaeckel
1987a2f975
add adler32 checksum algorithm
2015-08-23 22:59:14 +02:00
Pascal Brand
3605983f09
Introduce ECC raw algorithms for sign and verify
...
As it is performed on dsa, raw sign and verify on ECC
are introduced.
Signed-off-by: Pascal Brand <pascal.brand@st.com>
2015-08-21 22:14:03 +02:00
Karel Miko
aeaa6d4a51
cygwin related fix - variable name B0 changed to B_0 (part 2)
2015-04-17 08:59:35 +02:00
Karel Miko
a8e91afb16
cygwin/64bit related fix - added !defined(__x86_64__)
2015-04-17 08:50:38 +02:00
Uli Köhler
d24e9cd32d
Fix config file reference
2015-03-27 21:41:51 +01:00
Pascal Brand
f20b5daf39
Use XMEM_NEQ instead of mem_neq
...
mem_neq is no more used directly. XMEM_NEQ is used instead,
in the same way XMEMCMP, XMEMCPY,... are.
Signed-off-by: Pascal Brand <pascal.brand@st.com>
2015-02-27 08:54:30 +01:00
Steffen Jaeckel
dfa938a4f6
verify outcome when defining LTC_NOTHING
...
check that LTC_NOTHING really creates nothing but the libraries' basic
API functions
2015-02-15 17:25:45 +01:00
Steffen Jaeckel
90e968a202
der_decode_subject_public_key_info: fix compile error
...
also make it possible to define min/max RSA key sizes externally
This closes #59
2015-02-15 16:32:12 +01:00
Saleem Abdulrasool
62878de0c5
adjust inline asm requiring constants
...
In order to ensure that the shift is within range, convert the inline assembly
routines into macros with compound statements.
2015-01-20 22:36:07 +01:00
Steffen Jaeckel
9782c09a3a
use XMEM{CMP, CPY, SET} macros instead of standard versions
2015-01-20 22:36:06 +01:00
Steffen Jaeckel
26c5d54e5c
add constant-time memcmp()
...
[skip ci]
2014-11-12 23:59:27 +01:00
Pascal Brand
992506cb49
Add incremental CCM authentication processing
...
CCM is only meant for packet mode where the length of the input is known in
advance. Since it is a packet mode function, CCM only had one function that
performs the protocol.
However, incremental authentication is usefull in some usecases. It also
ensure some kind of coherencies when processing with a given authentication
mode or another. To achieve this aim, this commit adds the following functions:
ccm_init()
ccm_add_aad()
cm_add_nonce()
ccm_process()
ccm_done()
ccm_reset()
as well as the data structure
ccm_state
Change-Id: I5225a42bb098708c4af07518b561bb00f85bc243
2014-10-17 09:00:19 +02:00
Steffen Jaeckel
2d8933e4f1
der: add new enum element for context-specific encodings
2014-10-06 18:57:42 +02:00
Steffen Jaeckel
c1e81ad469
minor changes
...
print MP_DIGIT_BIT when running test
der_test: improve error output of 'short integer' test
2014-09-30 13:26:18 +02:00
Steffen Jaeckel
f58c87866e
add possibility to export RSA public key in SubjectPublicKeyInfo format
2014-09-29 23:44:47 +02:00
Steffen Jaeckel
7842e338bf
fix API of dynamic language helpers
...
it is easier to handle 'int' than 'long' in the foreign language
2014-09-29 23:30:02 +02:00
Steffen Jaeckel
23fb224e19
add sha512/224 and sha512/256
2014-09-29 19:57:21 +02:00
Pascal Brand
adc54d08d0
Enable multiple XTS encryption or decryption
...
multiple xts_encrypt() cannot be performed because the
tweak is not updated. That means that
xts_encrypt(buffer1, tweak)
xts_encrypt(buffer2, tweak)
is not the same as
xts_encrypt(concat(buffer1, buffer2), tweak)
Current patch enables such functionalities by
updating the tweak as output of the encryption.
Note that the tweak is no more constant.
The very same modification is performed
on xts_decrypt()
Signed-off-by: Pascal Brand <pascal.brand@st.com>
2014-09-28 22:55:02 +02:00
Steffen Jaeckel
f597f29ece
math: change get_digit() return value
...
unsigned long is 32bit wide when compiling with the compiler flag "-mx32"
but the digit size of the math libraries is still 64 bit which lead to
the buggy ecc code.
Therefore define a new type ltc_mp_digit with the correct width and use
that as return value of get_digit()
Has been tested with all three math providers
2014-09-10 16:15:35 +02:00