Commit Graph

4955 Commits (26a59cd94b854399b8c9516169532bb939e8728d)

Author SHA1 Message Date
Jeffrey Walton 255a6f2aa0
Clear UBsan warning -Wstringop-overflow 2019-04-27 21:08:02 -04:00
Jeffrey Walton 39418a8512
Use PowerPC unaligned loads and stores with Power8 (GH #825, PR #826)
Use PowerPC unaligned loads and stores with Power8. Formerly we were using Power7 as the floor because the IBM POWER Architecture manuals said unaligned loads and stores were available. However, some compilers generate bad code for unaligned loads and stores using `-march=power7`, so bump to a known good.
2019-04-27 20:35:01 -04:00
Jeffrey Walton d451751eb2
Update SKIPJACK documentation (GH #824) 2019-04-27 14:40:53 -04:00
Jeffrey Walton cdaac6b844
Add SKIPJACK/CBC test vectors (GH #824)
Generated using Botan 1.11.17, https://github.com/noloader/cryptopp-test/tree/master/SKIPJACK
2019-04-27 14:21:48 -04:00
Jeffrey Walton d1b1554188
Add SKIPJACK test vectors from SP800-17, Table 6, pp. 140-42 (GH #824) 2019-04-27 13:24:54 -04:00
Jeffrey Walton e8107e9cb8
Update documentation
The library uses both PKCS #5 and PKCS #7 padding
2019-04-04 07:20:33 -04:00
Jeffrey Walton 9f8017a276
Fix missing GF2NT_233_Multiply_Reduce_CLMUL in the cursed DLL (GH #783)
This should have been checked-in during GH #783 and PR #784. I think there was one mailing list message about missing symbols GF2NT_233_Multiply_Reduce_CLMUL and GF2NT_233_Square_Reduce_CLMUL. I missed it when attempting to reproduce the issue. I can duplicate it now using VS2013. I think the addition of CRYPTOPP_DLL caused the issue to surface.
2019-03-21 08:13:14 -04:00
Jeffrey Walton fc3b16e3a3
Fix SHAKE compile error with old GCC (GH #818) 2019-03-18 08:06:48 -04:00
Jeffrey Walton 0d17eea82c
Add x25519 default constructor 2019-03-04 19:43:33 -05:00
Jeffrey Walton 08b9e21e5a
Use TCXXFLAGS for feature tests in GNUmakefile-cross
This mirrors PR #815, where we used CXXFLAGS instead of TCXXFLAGS for feature tests
2019-02-28 06:42:16 -05:00
Nicolas Chauvet (kwizart) 7c7a12c584 Use TCXXFLAGS instead of CXXFLAGS (#815)
As done with others tests. This will avoid a miss-detection of aarch64 features
when using flags such as _FORTIFY_SOURCE that needs to be filtered for testing

This fixes https://github.com/weidai11/cryptopp/issues/812

V2: Fix all cases

Signed-off-by: Nicolas Chauvet <kwizart@gmail.com>
2019-02-28 06:37:18 -05:00
Jeffrey Walton 84ab1f3c66
Remove early NEON qualification tests from Makefile (GH #812, GH #813)
The makefile tries to pre-qualify NEON (for lack of a better term), and sets IS_NEON accordingly. If IS_NEON=1, then we go on to perform test compiles to see if -mfloat-abi=X -mfpu=neon (and friends) actually work. Effectively we are performing a test to see if we should perform another test.

The IS_NEON flag predates our compile time feature tests. It was kind of helpful when we were trying to sort out if a platform and compiler options supported NEON without a compile test. That was an absolute mess and we quickly learned we needed a real compile time feature test (which we now have).

Additionally, Debian and Fedora ARMEL builds are failing because we are misdetecting NEON availability. It looks like we fail to set IS_NEON properly, so we never get into the code paths that set either (1) -mfloat-abi=X -mfpu=neon or (2) -DCRYPTOPP_DISABLE_NEON or -DCRYPTOPP_DISABLE_ASM. Later, the makefile builds a *_simd.cpp and the result is an error that NEON needs to be activated (or disabled).

This commit removes IS_NEON so we immediately move to compile time feature tests.
2019-02-27 19:35:04 -05:00
Jeffrey Walton 8624a91988
Spelling 2019-02-24 17:00:20 -05:00
Jeffrey Walton 3183970300
Add missing BLAKE2 constructors
BLAKE2b and BLAKE2s are both missing a constructor that takes only the digest size. Also see https://groups.google.com/d/msg/cryptopp-users/QCFGYw8q3Yo/vpBCqz-vBgAJ
2019-02-24 15:45:00 -05:00
Jeffrey Walton 758939ab2e
Fix missing BlockSize() in BLAKE2 classes (GH #811) 2019-02-23 14:13:31 -05:00
Jeffrey Walton 6138b8a127
Post-release version increment
Also see https://www.cryptopp.com/wiki/Release_Process#Increment_version_numbers
2019-02-23 14:03:49 -05:00
Jeffrey Walton 20e9e0cb10
Prepare for Crypto++ 8.1 release
This should have been checked in with 1c34979592. Too late now, but fix it anyway.
2019-02-23 13:57:40 -05:00
Jeffrey Walton 1c34979592
Prepare for Crypto++ 8.1 release 2019-02-23 00:18:15 -05:00
Jeffrey Walton 95bc90adc4
Clear unused warnings with MSVC 2019-02-22 08:38:20 -05:00
Jeffrey Walton 3185e93fe3
Fix missing symbols in Windows DLL 2019-02-22 08:38:13 -05:00
Fabrice Fontaine a809dbdbc4 AVX2 depends on GCC 4.9 (PR #809) 2019-02-21 18:34:32 -05:00
Jeffrey Walton 0239393a22
Update Readme 2019-02-15 21:37:26 -05:00
Jeffrey Walton 72719766bb
Update Readme 2019-02-15 16:42:58 -05:00
Jeffrey Walton f44d4cb5b8
Update documentation 2019-02-15 08:57:54 -05:00
Jeffrey Walton e8bb20d84f
Fix AlgorithmName for SHA3-based classes 2019-02-13 14:22:43 -05:00
Jeffrey Walton 8dd39d03ae
Update documentation 2019-02-13 12:16:05 -05:00
Jeffrey Walton 00f9c1f0eb
Enable extended output in SHAKE-128 and SHAKE-256 (GH #805, PR #806) 2019-02-13 11:31:18 -05:00
Jeffrey Walton 2e440959b1
Update documentation 2019-02-13 00:01:58 -05:00
Jeffrey Walton 8db6fe16b4
Update documentation 2019-02-12 23:52:19 -05:00
Jeffrey Walton 57465b5ae3
Update documentation 2019-02-12 23:38:38 -05:00
Jeffrey Walton 9defd0afcd
Add SHAKE-128 and SHAKE-256 (GH #805, PR #806)
This should have been added during the original commit
2019-02-12 23:12:35 -05:00
Jeffrey Walton c6e8a61b8b
Add SHAKE-128 and SHAKE-256 (GH #805, PR #806) 2019-02-12 19:51:37 -05:00
Jeffrey Walton e499131ea6
Latch previous ROUNDS in Salsa and ChaCha ciphers (GH #800, PR #804) 2019-02-12 16:56:01 -05:00
asbai a9eac2ce6e Fix missing AlgorithmProvider() on PanamaHash (GH #801, PR #803) 2019-02-12 15:05:39 -05:00
Jeffrey Walton 6befce1851
Update documentation 2019-02-11 12:44:30 -05:00
Jeffrey Walton d86fcf64a7
Update documentation 2019-02-11 12:29:04 -05:00
Jeffrey Walton 161d680434
Back-off ChaCha assert at the moment (GH #790)
We don't know what we are supposed to do at the moment. We need the CFRG or IETF to say what is supposed to happen.
2019-02-11 11:40:05 -05:00
Jeffrey Walton 0ca4c41a97
Add ed25519 SignStream and VerifyStream functions (GH #796, PR #797) 2019-02-10 23:08:14 -05:00
Jeffrey Walton 1c6a96a57e
Update README 2019-02-10 04:41:51 -05:00
Jeffrey Walton 978b221909
Update README 2019-02-09 14:05:09 -05:00
Jeffrey Walton 65b10a4af8
Add additional XChaCha20/Poly1305 test vectors (GH #724)
These test vectors were generated with Botan
2019-02-08 17:08:17 -05:00
Jeffrey Walton b9eea8e842
Add additional ChaCha20/Poly1305 test vectors (GH #724)
These test vectors were generated with Botan
2019-02-08 16:38:23 -05:00
Jeffrey Walton cae5f8e0fd
Add SecretToPublicKey function for x25519 2019-02-07 17:05:23 -05:00
Jeffrey Walton de85886ca4
Update comments 2019-02-07 15:45:38 -05:00
Jeffrey Walton 4caa5ee724
Add SecretToPublicKey function for ed25519
Also remove IsClamped. Clamping occurs with ed25519, but it happens inside the Donna code. It is not needed elsewhere for ed25519.
2019-02-07 15:00:00 -05:00
Jeffrey Walton dde43de786
Use SECRET_KEYLENGTH for ed25519PrivateKey::GenerateRandom 2019-02-06 19:20:48 -05:00
Jeffrey Walton 23a32c4e3d
Add XChaCha20/Poly1305 benchmark 2019-02-06 16:57:36 -05:00
Jeffrey Walton 76b47204df
Add IETF XChaCha20Poly1305 (GH #727, PR #795) 2019-02-06 04:14:39 -05:00
Jeffrey Walton 0661536bd6
Fix spelling 2019-02-06 01:23:27 -05:00
Jeffrey Walton 26c83877ef
Add IETF XChaCha (GH #727, PR #794) 2019-02-06 01:03:28 -05:00