Commit Graph

667 Commits

Author SHA1 Message Date
Steffen Jaeckel
3249dcb963 allow TAB_SIZE to be defined at compile-time 2018-04-06 10:27:12 +02:00
Steffen Jaeckel
70ec9b3b35 back-port of the bugfix done in #363 2018-04-04 19:31:36 +02:00
Steffen Jaeckel
24aab18d5b Merge pull request #359 from vchong/ltc_ctr
ltc: ctr: improve performance
(cherry picked from commit 9b80d07487bed20575b9846ba0d4bcdc280ae8c0)
2018-04-04 19:27:40 +02:00
Steffen Jaeckel
affb3d70cb improve fortuna_import()
This makes fortuna_import() kinda compliant to the "Update seed file"
behavior of the original paper.
It differs from the original behavior in that it allows to import
seed files which are larger	than 64 bytes.

(cherry picked from commit 39d4a14c29c97f002b85038bdcdc2a788f83fe73)
2018-04-04 19:25:31 +02:00
Steffen Jaeckel
415c57f3af don't ignore additional data on SOBER128-PRNG import
(cherry picked from commit d502869728298e9cc7d5261cad084e3d6cc4deea)
2018-04-04 19:25:31 +02:00
Steffen Jaeckel
b9fa4c063a fortuna_import() shouldn't ignore additional input
(cherry picked from commit 0c05e5386f836a8cbf4bfbc12bc9113f974b6d61)
2018-04-04 19:25:31 +02:00
Steffen Jaeckel
67d8ca19f5 ensure that fortuna has been seeded properly
(cherry picked from commit 04ce8cf613f635a8445b5de09cdd58847f0fcd64)
2018-04-04 19:25:31 +02:00
Steffen Jaeckel
873240e7a0 Merge pull request #350 from libtom/fix/no-file-warnings
Fix warnings in `XMAC_file()` functions when compiling with `LTC_NO_FILE`.
(cherry picked from commit 11cda2e274b415c6ab6a6a2f49fdbf9d7251897f)
2018-04-04 19:19:19 +02:00
Tetsuya Yoshizaki
144839a8db ltc: ctr: update pt and ct after acceleration
Problem occurs in the condition of the following case:

1st decryption:
Decrypt a ciphertext whose length is a multiple of the block size (16B)
(len = n * block_size)
2nd decryption:
Decrypt the continuing ciphertext whose length is not a multiple of the
block size
(len = m * block_size + l)

In this case accel_ctr_encrypt() is firstly used at the 2nd decryption.
If pt and ct are not updated, the top (l = len % block_size) bytes of
decryption result are sometimes destroyed.

From: Tetsuya Yoshizaki <yoshizaki.tetsuya@socionext.com>
Signed-off-by: Tetsuya Yoshizaki <yoshizaki.tetsuya@socionext.com>
Signed-off-by: Victor Chong <victor.chong@linaro.org>
(cherry picked from commit d1d3ae2d1e705f36e7d313aa4a9b61c0a146ee44)
2018-01-19 10:01:03 +01:00
Steffen Jaeckel
5501572b35 Merge pull request #339 from libtom/minor_improvements
Minor improvements
(cherry picked from commit df8ed5c76b66f5891c8eeb274769a3f8f7dad086)
2018-01-15 00:39:26 +01:00
Steffen Jaeckel
f4d2b37cf4 Merge pull request #337 from libtom/fix/prng_pthread
prevent undefined behavior with LTC_PTHREAD
(cherry picked from commit 45db2a9d9a8fca00948edb285e06dfb2ea5a4828)
2017-12-17 01:20:32 +01:00
Steffen Jaeckel
cfaf964284 Bump version 2017-12-05 18:40:49 +01:00
Steffen Jaeckel
f9e90f5b1c revert the change of MAXBLOCKSIZE
Currently this only plays a role in HMAC which still uses dynamic
allocation depending on the real blocksize defined by the hash
algorithm.
2017-12-05 17:46:08 +01:00
Steffen Jaeckel
f122e9b887 Merge pull request #329 from libtom/pr/sha3-blocksize
Correct SHA3 block sizes
(cherry picked from commit 64d028832b36559af753f8c341c53720e5b33aba)
2017-12-05 17:43:46 +01:00
Steffen Jaeckel
13d91e7c8b Merge pull request #327 from libtom/fix/ccm_segfault
Fix ccm_memory() cleaning user-supplied key
(cherry picked from commit 85ac227862eceb3b22c0852a7dc363d46c2dd532)
2017-12-05 09:23:06 +01:00
Steffen Jaeckel
368dc60ff3 Merge pull request #326 from libtom/pr/ccm_process
fixes #323 ccm_process fails to process input buffer longer than 256
(cherry picked from commit 7c4c61d7ef3cbf8ff8ebaad9976224364a688b3c)
2017-12-05 09:21:52 +01:00
Karel Miko
153b897984 helper.pl - detect sizeof without brackets
(cherry picked from commit b7e35e9f57f5747d497e1101a624092b8b633302)
2017-12-05 09:21:27 +01:00
Karel Miko
f10c2055dc helper.pl - improved detection of static functions without _
(cherry picked from commit 5c34fb2bad2cc23fc2c038158a606d7b83c33170)
2017-12-05 09:21:17 +01:00
Karel Miko
a674de7408 Merge branch 'diamondo25-patch-2' into develop
Fix not defined warnings (-Wundef)

(cherry picked from commit 617698e54459ec9f31c894ba83c6f4dfc5570291)
2017-12-05 09:20:41 +01:00
karel-m
7f6af93798 Merge pull request #320 from diamondo25/patch-1
Remove duplicate prototypes
(cherry picked from commit b4eae5231dfbbc2f34509a8e09f7111d189c25df)
2017-12-05 09:20:15 +01:00
karel-m
00ca140c57 Merge pull request #316 from libtom/pr/register-all
register_all_* should return CRYPT_OK on success
(cherry picked from commit e4763d940a03a18ec56810152c3dda79991258ac)
2017-12-05 09:19:40 +01:00
Steffen Jaeckel
521d0737ea fix typo
(cherry picked from commit 442bb90a51621deb38a5f9dce890db0f3b312e49)
2017-12-05 09:17:30 +01:00
Steffen Jaeckel
a7d0008f52 bump version 2017-10-10 15:48:35 +02:00
Steffen Jaeckel
62143d96bd fix doxygen warning 2017-10-10 15:43:26 +02:00
Steffen Jaeckel
ea5cb8bff6 make it possible to use LTC_NOTHING with a math provider 2017-10-10 15:19:01 +02:00
Steffen Jaeckel
dd0bbdeac0 increase default value of Miller-Rabin rounds to 40 2017-10-09 17:58:47 +02:00
Karel Miko
959121253d rename duplicit rc4.c sober128.c 2017-10-07 11:35:10 +02:00
Steffen Jaeckel
58b71292c3 fixup caed025f8a
Simply always use an unsigned long long for ltc_mp_digit on 64-bit besides
when using MSVC.
2017-10-03 19:20:33 +02:00
Steffen Jaeckel
e438dbc3bf add ltc_mp_digit to sizes and tests 2017-10-03 18:43:32 +02:00
Steffen Jaeckel
caed025f8a define ltc_mp_digit as 'unsigned long' resp 'unsigned long long' for x32
This fixes #306
2017-10-03 18:42:26 +02:00
Steffen Jaeckel
cb34ef8626 fix-up LTC_FAST related defines/typedefs 2017-10-03 13:32:17 +02:00
Steffen Jaeckel
bb291cbbeb init_GMP() works perfectly fine 2017-10-02 14:06:42 +02:00
Steffen Jaeckel
7f302dab54 make sure size is valid 2017-10-02 01:18:36 +02:00
Steffen Jaeckel
ce7ae84d0d correctly fix decoding of SubjectPublicKeyInfo 2017-10-01 22:56:47 +02:00
Steffen Jaeckel
db7d7a866e Revert "fix bit-length check in der_decode_raw_bit_string()"
This reverts commit 2b8d83ff93da0764f19f494de0a8211515428cef.
2017-10-01 22:56:47 +02:00
Steffen Jaeckel
e5de0a0004 Revert "catch case where blen%8 != 0"
This reverts commit 548ee347c0d3366a41e5fa28ac3c0b44b362fdb5.
2017-10-01 22:56:47 +02:00
Steffen Jaeckel
d1d9566250 format code 2017-10-01 22:56:47 +02:00
Steffen Jaeckel
30b3a9a986 remove {MIN,MAX}_RSA_SIZE 2017-10-01 22:56:47 +02:00
Steffen Jaeckel
40e4a66693 catch case where blen%8 != 0 2017-10-01 22:56:47 +02:00
Steffen Jaeckel
3fef07c03e also clear bits in der_decode_raw_bit_string() 2017-10-01 22:56:47 +02:00
Steffen Jaeckel
9cfbaa83a3 mostly remove MAX_RSA_SIZE 2017-10-01 22:56:47 +02:00
Steffen Jaeckel
ab02d2e450 fix rsa_import() of MAX_RSA_SIZE'ed keys
The ASN1 encoded RSA key contains two MPI's therefore MAX_RSA_SIZE / 8
isn't enough.
2017-10-01 22:56:47 +02:00
Steffen Jaeckel
15eab9702b don't over-allocate that much in der_decode_subject_public_key_info() 2017-10-01 22:56:46 +02:00
Steffen Jaeckel
0b04279890 fix bit-length check in der_decode_raw_bit_string() 2017-10-01 22:56:46 +02:00
Rob Swindell
6da2211ee9 Update rsa_import.c
Bug-fix: MAX_RSA_SIZE is the maximum RSA key size in *bits* (as commented in tomcrypt_custom.h), so the proper conversion to bytes (as the argument value to XCALLOC) would be to divide by 8 (bits per byte), not multiply by 8. This excessive allocation (32 Kbytes instead of 512 bytes) is readily apparent in memory-constrained environments.
2017-10-01 22:56:46 +02:00
Steffen Jaeckel
f4802ef40a add ltc_math_descriptor to crypt_sizes 2017-09-30 13:01:08 +02:00
Steffen Jaeckel
07c5e6b0a4 bump version 2017-09-27 21:37:21 +02:00
Steffen Jaeckel
4a8bfc0a21 introduce CRYPT_INPUT_TOO_LONG 2017-09-27 21:34:11 +02:00
Steffen Jaeckel
13cb43ad4c initialize 'flags' etc. to invalid values before trying to decode 2017-09-27 21:34:11 +02:00
Steffen Jaeckel
20c6bf812b bump version 2017-09-25 16:56:57 +02:00