Commit Graph

3434 Commits

Author SHA1 Message Date
Jeffrey Walton
92b03cdf62
Update Readme.txt 2018-01-22 18:34:20 -05:00
Jeffrey Walton
391cc2c141
Update version info 2018-01-22 18:25:19 -05:00
Jeffrey Walton
91a8652f9e
Update version info 2018-01-22 18:22:34 -05:00
Jeffrey Walton
19e07938fa
Post-release version increment
Also see https://www.cryptopp.com/wiki/Release_Versioning#Post-Release_Increment
2018-01-22 17:21:22 -05:00
Jeffrey Walton
b6c6684451
Update documentation 2018-01-22 15:54:51 -05:00
Jeffrey Walton
d429318230
Cleanup Doxygen directives 2018-01-22 09:53:49 -05:00
Jeffrey Walton
e1f2b69638
Removed vector_ptr
vector_ptr was added at Crypto++ 5.6.5 to manage an array acquired with new[] in C++03. We can now use a combination of SecBlock and SetMark(0) to achieve the same effect.
2018-01-22 09:37:04 -05:00
Jeffrey Walton
aee296d663
Fix AIX AlignedAllocate
Well, the IBM docs were not quite correct when they stated "The block is aligned so that it can be used for any type of data". The vector data types are pretty standard, even across different machines from diffent manufacturers
2018-01-21 19:48:36 -05:00
Jeffrey Walton
58f6b7695b
Cleanup Doxygen directives 2018-01-21 19:11:45 -05:00
Jeffrey Walton
8ffd165c7a
Rename nacl.h to naclite.h
This should avoid confusion with header files from the reference implementation and libsodium
2018-01-21 17:04:15 -05:00
Jeffrey Walton
1df1d25428
Cleanup warnings under MSC 2018-01-21 16:25:49 -05:00
Jeffrey Walton
d6cf3b5020
Simplify logic for selection of word128 2018-01-21 16:25:09 -05:00
Jeffrey Walton
c4e0942a68
Add CRYPTOPP_TABLE, remove CRYPTOPP_SECTION 2018-01-21 14:19:00 -05:00
Jeffrey Walton
5631da3697
Disable Travis iOS testing (GH #570) 2018-01-21 12:48:50 -05:00
Jeffrey Walton
133b2411d4
Disable Travis OS X and iOS testing (GH #570)
Travis is having infrastructure problems since it migrated in November 2017. Our OS X and iOS tests hang for days. When the current job hangs, new jobs that enter the queue later hang too because the original job is still waiting.

The subsequent hangs effect Android and Linux, too. Our Travis scripts test Android, Linux, OS X and iOS. A hang effects everything.

We are going to disable Travis OS X and iOS tests until things improve.
2018-01-21 11:02:42 -05:00
Felix Barz
105f78495c Update Android build scripts to the latest NDK (#546)
Fix Environment setup for android to match the new unified headers.
Adjust the Makefile accordingly.
Updated the test scripts and travis to test these changes.
2018-01-21 09:05:34 -05:00
Jeffrey Walton
bb03ba57fb
Update documentation 2018-01-21 08:46:21 -05:00
Jeffrey Walton
9b174e84de
Remove AsymmetricAlgorithm::BERDecode (GH #569) 2018-01-21 08:45:02 -05:00
Jeffrey Walton
565bd844fc
Clear GCC -Wcast-align warnings on ARM
The buffers and workspaces are aligned
2018-01-20 19:39:49 -05:00
Jeffrey Walton
2816efe188
Clear GCC -Wstrict-overflow warning
This is a false positive when "T=int" or "T=long". "value" is reduced by division so it converges to 0. It is never less than 0.
2018-01-20 19:37:58 -05:00
Jeffrey Walton
1b36c4e767
Clear GCC -Wc++11-compat warning 2018-01-20 19:35:50 -05:00
Jeffrey Walton
2d011dff34
Cleared GCC warning with -Wall 2018-01-20 17:09:23 -05:00
Jeffrey Walton
65963c5504
Fix Android x86 and x86-64 cross-compilesexit 2018-01-20 13:54:02 -05:00
Jeffrey Walton
5cee4a6573
Improve logic for <arm_acle.h> include (GH #568) 2018-01-20 13:23:41 -05:00
Jeffrey Walton
5adfe4e812
Sync setenv scripts 2018-01-20 12:46:34 -05:00
Jeffrey Walton
31c6b236dc Revert "Sync setenv scripts"
This reverts commit b225fbf. The new one was overwritten, not the old one.
2018-01-20 12:45:05 -05:00
Jeffrey Walton
b225fbfae7
Sync setenv scripts 2018-01-20 12:42:49 -05:00
Jeffrey Walton
600fa4d107
Clear unary minus on unsigned warning under MSVC 2018-01-19 20:09:02 -05:00
Jeffrey Walton
e4e1fbe0ed
Clear Coverity findings CID 186951, 186950, 186947
Coverity does not realize xorBlocks is always non-NULL when BT_XorInput is set
2018-01-19 19:42:03 -05:00
Jeffrey Walton
5c5d3e4c26
Clear Coverity finding CID 186948
"Logically dead code"
2018-01-19 18:35:23 -05:00
Jeffrey Walton
347c0e56c6
Clear Coverity finding CID 186949
The finding is "Overflowed return value", and it is rooted in the constant time code bit manipulations
2018-01-19 18:28:56 -05:00
Jeffrey Walton
befd04312d
Remove unneeded Doxygen directive 2018-01-19 14:31:20 -05:00
Jeffrey Walton
24a9466e54
Update documentation 2018-01-19 08:06:06 -05:00
Jeffrey Walton
a1deaf73c1 Revert "Update documentation"
This reverts commit 4050312. The version change used to build the documentation cross-polinated into the commit.
2018-01-19 08:04:46 -05:00
Jeffrey Walton
4050312025
Update documentation 2018-01-19 08:03:40 -05:00
Jeffrey Walton
a5d15863cb
Update documentation 2018-01-19 07:58:36 -05:00
Jeffrey Walton
a5a684d929
Remove DL_PrivateKey_GFP_OldFormat (GH #567) 2018-01-19 07:56:12 -05:00
Jeffrey Walton
4fd250c5c4
Remove commented compatibility methods 2018-01-19 05:52:45 -05:00
Jeffrey Walton
5542055327
Fix benchmarks after variable block size removal (GH #535) 2018-01-18 21:31:19 -05:00
Jeffrey Walton
58b6999274
Convert Kalyna from variable block size (GH #535) 2018-01-18 20:26:10 -05:00
Jeffrey Walton
1eca4fd940
Update documentation 2018-01-18 14:12:19 -05:00
Jeffrey Walton
6862298831
Update documentation 2018-01-18 13:13:22 -05:00
Jeffrey Walton
2e82caee09
Update documentation 2018-01-18 13:06:43 -05:00
Jeffrey Walton
0bb73e7035
Add _unchecked versions of crypto_box, crypto_box_open and crypto_box_beforenm
This check-in adds three additional functions for backwards compatibility: crypto_box_unchecked, crypto_box_open_unchecked and crypto_box_beforenm_unchecked. The functions can be used for interoperability with downlevel clients, like old versions of NaCl and libsodium. It should also help some cryptocurrencies, like Bitcoin, Ethereum, Monero and Zcash.

Also see https://eprint.iacr.org/2017/806.pdf (low order element attack) and https://github.com/jedisct1/libsodium/issues/662 (Zcash break).
2018-01-18 12:43:57 -05:00
Jeffrey Walton
efcede385f
Update documentation 2018-01-18 05:41:27 -05:00
Jeffrey Walton
d31fcd7a1a
Fix IBM XL/C/C++ compile due to uint8x16_p typedef 2018-01-18 05:18:00 -05:00
Jeffrey Walton
8aea7abb55
Update documentation 2018-01-17 22:33:27 -05:00
Jeffrey Walton
13ea8f374f
Add interface to TweetNaCl library (#566)
TweetNaCl is a compact reimplementation of the NaCl library by Daniel J. Bernstein, Bernard van Gastel, Wesley Janssen, Tanja Lange, Peter Schwabe and Sjaak Smetsers. The library is less than 20 KB in size and provides 25 of the NaCl library functions.

The compact library uses curve25519, XSalsa20, Poly1305 and SHA-512 as default primitives, and includes both x25519 key exchange and ed25519 signatures. The complete list of functions can be found in TweetNaCl: A crypto library in 100 tweets (20140917), Table 1, page 5.

Crypto++ retained the function names and signatures but switched to data types provided by <stdint.h> to promote interoperability with Crypto++ and avoid size problems on platforms like Cygwin. For example, NaCl typdef'd u64 as an unsigned long long, but Cygwin, MinGW and MSYS are LP64 systems (not LLP64 systems). In addition, Crypto++ was missing NaCl's signed 64-bit integer i64.

Crypto++ enforces the 0-key restriction due to small points. The TweetNaCl library allowed the 0-keys to small points. Also see RFC 7748, Elliptic Curves for Security, Section 6.

TweetNaCl is well written but not well optimized. It runs 2x to 3x slower than optimized routines from libsodium. However, the library is still 2x to 4x faster than the algorithms NaCl was designed to replace.

The Crypto++ wrapper for TweetNaCl requires OS features. That is, NO_OS_DEPENDENCE cannot be defined. It is due to TweetNaCl's internal function randombytes. Crypto++ used DefaultAutoSeededRNG within randombytes, so OS integration must be enabled. You can use another generator like RDRAND to avoid the restriction.
2018-01-17 22:02:09 -05:00
Jeffrey Walton
4e86f42d78
Fix Andoid ARMv8 builds
This toolchain is pretty lame. It does not make CRC or Crypto intrinsics available
2018-01-17 20:34:11 -05:00
Jeffrey Walton
9683b8068e
Clear unknown pragma warning under GCC 2018-01-17 18:58:29 -05:00