Commit Graph

219 Commits

Author SHA1 Message Date
orangefour
20f82c067e Add VectorSource (GH #730) 2018-11-01 06:49:04 -04:00
Jeffrey Walton
c0471236f4
Use version 7.0 rather than 6.2
We had to perform a major version bump due to an ABI break
2018-10-19 20:43:23 -04:00
orangefour
9b81a545fc Add VectorSink 2018-09-05 09:25:09 +02:00
Jeffrey Walton
f2171cbe2f
Remove Thread and Socket classes (GH #208, PR #703)
Also see https://groups.google.com/forum/#!topic/cryptopp-users/5btwLoxXXD4.
2018-08-17 23:55:39 -04:00
Jeffrey Walton
b91491da4f
Fix Solaris i386 compile of CHAM and LEA for SunStudio 12.3 and below 2018-07-16 12:21:44 -04:00
Jeffrey Walton
8197732756
Fix SunStudio 12.6 runtime crash on i386
This bug has been around since the Sun Studio 11/SunCC 5.8 days
2018-07-16 10:33:14 -04:00
Jeffrey Walton
71cc002fd5
Update documentation 2018-07-06 22:12:15 -04:00
Jeffrey Walton
b74a6f4445
Add algorithm provider member function to Algorithm class 2018-07-06 09:23:37 -04:00
Jeffrey Walton
6d9047b444
Fix spelling 2018-07-06 09:21:13 -04:00
Jeffrey Walton
77cd5c69d0
Update documentation 2018-07-06 03:18:45 -04:00
Jeffrey Walton
ecababa006
Update documentation 2018-07-06 02:57:48 -04:00
Jeffrey Walton
989bf6dc5e
Add HC-256 stream cipher (GH #680) 2018-07-05 06:43:04 -04:00
Jeffrey Walton
541cdf373c
Update documentation 2018-07-05 01:26:48 -04:00
Jeffrey Walton
476559e763
Update documentation 2018-07-04 04:08:33 -04:00
Jeffrey Walton
5e0d31fa8b
Update documentation 2018-07-04 04:05:56 -04:00
Jeffrey Walton
da32ed4679
Fix versioning that cross-pollinated when building docs 2018-07-01 03:46:11 -04:00
Jeffrey Walton
c58ea35e23
Update documentation 2018-07-01 03:42:17 -04:00
Jeffrey Walton
207c6fcb1a
Update documentation 2018-06-18 00:14:31 -04:00
Marcel Raad
7c1d296283 Fix clang warnings in headers (#655)
* remove superfluous semicolon

* Remove C-style casts from public headers

clang warns about them with -Wold-style-cast. It also warns about
implicitly casting away const with -Wcast-qual. Fix both by removing
unnecessary casts and converting the remaining ones to C++ casts.
2018-05-10 19:59:21 -04:00
Jeffrey Walton
4bb331f5d0
Post-release version increment 2018-04-08 15:58:25 -04:00
Jeffrey Walton
c8d8caf700
Prepare for Crypto++ 7.0 release 2018-04-08 04:48:59 -04:00
Jeffrey Walton
cd8c03c816
Move PasswordBasedKeyDerivationFunction to cryptlib.h 2018-04-07 08:14:22 -04:00
Jeffrey Walton
62a9574f3f
Make AuthenticatedSymmetricCipher::AlgorithmName non-pure
Also see https://stackoverflow.com/q/49658309/608639
2018-04-05 20:34:08 -04:00
Jeffrey Walton
cdd751d27a
Don't use anonymous namespace in header file (GH #631, PR #633) 2018-04-02 05:24:01 -04:00
Jeffrey Walton
57a35a6896
Update documentation 2018-03-29 23:23:37 -04:00
Jeffrey Walton
7b33bc5e04
Cutover PBKDF to KeyDerivationFunction interface (GH #610, PR #612) 2018-03-29 23:13:56 -04:00
Jeffrey Walton
32abab75f2
Add KeyDerivationFunction interface (GH #610, PR #611) 2018-03-29 20:18:27 -04:00
Jeffrey Walton
da11d90ddb
Post-release version increment 2018-02-22 12:47:18 -05:00
Jeffrey Walton
15b14cc618
Remove Simon and Speck ciphers (GH #585)
We recently learned our Simon and Speck implementation was wrong. The removal will stop harm until we can loop back and fix the issue.
The issue is, the paper, the test vectors and the ref-impl do not align. Each produces slightly different result. We followed the test vectors but they turned out to be wrong for the ciphers.
We have one kernel test vector but we don't have a working implementation to observe it to fix our implementation. Ugh...
2018-02-14 04:06:16 -05:00
Jeffrey Walton
526742d862
Update documentation 2018-01-25 16:27:44 -05:00
Jeffrey Walton
675575d960
Update documentation 2018-01-23 17:47:19 -05:00
Jeffrey Walton
c9b00c14fd
Update documentation 2018-01-22 20:13:18 -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
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
befd04312d
Remove unneeded Doxygen directive 2018-01-19 14:31:20 -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
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
61ec50dabe
Change Doxygen comment style from //! to ///
Also see https://groups.google.com/forum/#!topic/cryptopp-users/A7-Xt5Knlzw
2017-11-29 10:54:33 -05:00
Jeffrey Walton
5a8e4d1545
Update documentation 2017-11-28 04:37:37 -05:00
Jeffrey Walton
2d4614084a
Update documentation 2017-11-24 22:35:53 -05:00
Jeffrey Walton
14e33af525
Update documentation 2017-11-21 08:32:58 -05:00
Jeffrey Walton
156fedea7f Revert "Remove master-merge script"
This reverts commit d3dc091. A version number change used to build the docs cross-pollinated into the deletion of the script.
2017-11-16 12:53:33 -05:00
Jeffrey Walton
d3dc09120b
Remove master-merge script
We don't use branches for development because they pollute the logs on Master
2017-11-16 12:51:33 -05:00
Jeffrey Walton
50e3fd0d9a
Update comments 2017-11-13 14:28:16 -05:00
Jeffrey Walton
660681a884
Fix SunCC 12.2 compile 2017-11-13 12:30:46 -05:00
Jeffrey Walton
2623d24f5c
Update documentation
Removed defined-out code
2017-11-12 13:10:22 -05:00
Jeffrey Walton
bf717f47e6
Reduce C++ file scope class objects
Update comments and documentation
2017-11-12 11:55:57 -05:00
Jeffrey Walton
3cfbe66c82
Update documentation 2017-10-01 09:32:07 -04:00
Jeffrey Walton
bbc6ea5355
Comments, constants and whitespace 2017-09-30 06:19:28 -04:00
Jeffrey Walton
abc92b2e74
Updated documentation 2017-09-30 04:52:50 -04:00
Jeffrey Walton
e92eb31690
Update StreamTransformation and ProcessLastBlock
Some authenticated encryption modes have needs that are not expressed well with MandatoryBlockSize() and MinLastBlockSize(). When IsLastBlockSpecial() returns true three things happen. First, standard block cipher padding is not applied. Second, the ProcessLastBlock() is used that provides inString and outString lengths. Third, outString is larger than inString by 2*MandatoryBlockSize(). That is, there's a reserve available when processing the last block.

The return value of ProcessLastBlock() indicates how many bytes were written to outString. A filter driving data will send outString and returned length to an AttachedTransformation() for additional processing.
2017-09-29 22:34:33 -04:00
Jeffrey Walton
9099dc0625
Update documentation 2017-09-27 06:40:05 -04:00
Jeffrey Walton
326700f6ec
Fix library version numbers
They were inadvertently checked-in with the SHA doc updates
2017-08-05 01:08:25 -04:00
Jeffrey Walton
d779462a38
Update documentation 2017-08-05 01:05:58 -04:00
Jeffrey Walton
3fc7b104e6
Update documentation 2017-07-28 12:35:25 -04:00
Jeffrey Walton
46993f10f4
Update documentation 2017-07-28 11:50:11 -04:00
Jeffrey Walton
2c9a3039e8
Update documentation
This cleanup was performed using Clang and -Wdocumentation -Wno-documentation-deprecated-sync
2017-07-27 19:15:21 -04:00
Jeffrey Walton
7ac77ca9ac Revert "Revert "Clear Visual Studio warnings (Issue 412)""
This reverts commit c3871aec94.
2017-06-02 05:18:52 -04:00
Jeffrey Walton
c3871aec94 Revert "Clear Visual Studio warnings (Issue 412)"
This reverts commit eb3b27a6a5. The change broke GCC 4.8 and unknown version of Clang on OS X. UB reported the OS X break, and JW found duplicated the break on a ARM CubieTruck with GCC 4.8.
2017-06-02 05:06:56 -04:00
Jeffrey Walton
eb3b27a6a5
Clear Visual Studio warnings (Issue 412) 2017-05-30 16:37:41 -04:00
Jeffrey Walton
0cbaea0428
Add tests for Information Dispersal and Secret Sharing 2017-05-09 18:44:45 -04:00
Jeffrey Walton
6ca68e714b
Updated documentation 2017-05-08 23:25:39 -04:00
Jeffrey Walton
a33a3435f4
Remove HashFunction typedef (Issue 369)
This should have happened when we removed most of MAINTAIN_BACKWARDS_COMPATIBILITY artifacts.
2017-05-01 16:41:43 -04:00
Jeffrey Walton
ba904cc9da
Update algorithm list in cryptlib.h 2017-04-17 02:39:22 -04:00
Jeffrey Walton
bed31de2f6
Whitespace check-in 2017-03-17 18:31:40 -04:00
Jeffrey Walton
d8570a3435
Avoid inlining LibraryVersion (Issue 371) 2017-03-14 10:26:51 -04:00
Jeffrey Walton
5efb019d8b
Add C++ nullptr support (Issue 383) 2017-03-01 06:10:06 -05:00
Jeffrey Walton
5fb2f5d45b
Remove NULL_CHANNEL and CW8 workaround (Issue 382) 2017-03-01 03:54:02 -05:00
Jeffrey Walton
62f92dd592
Change next version from 5.7 to 6.0
Crypto++ 5.7 was the increment after the 5.6.5 release. Crypto++ 6.0 accurately reflects compatibility
2017-02-21 12:59:20 -05:00
Jeffrey Walton
42af35fd2b
Change to more intuitive names LibraryVersion and HeaderVersion (Issue 371) 2017-01-28 07:09:27 -05:00
Jeffrey Walton
6f7339c81b
Add BuildVersion and RuntimeVersion functions (Issue 371)
These function are intended to catch mining and matching of library versions. BuildVersion provides CRYPTOPP_VERSION when the shared object was built. RuntimeVersion provides CRYPTOPP_VERSION the app compiled against, which could be different than the shared object's version
2017-01-28 05:43:24 -05:00
Jeffrey Walton
81b1a18063
Change file preamble to include "originally written by Wei Dai"
We have made a fair number of changes, and we don't want WD to receive credit for issues he was not part of
2017-01-27 07:05:45 -05:00
Jeffrey Walton
79f3ab89f1
Removed remaining CRYPTOPP_MAINTAIN_BACKWARDS_COMPATIBILITY (Issue 369) 2017-01-27 06:02:58 -05:00
klemens
5a5c633073 spelling fixes 2016-12-27 18:34:57 +01:00
Jeffrey Walton
1a17ade299
Fixed version numbers
Version numbers are rolled back to update the docs. The rolled back versions got committed with the updated docs
2016-12-11 07:06:38 -05:00
Jeffrey Walton
99ae937d8b
Updated documentation (Issue 121) 2016-12-11 06:56:52 -05:00
Jeffrey Walton
7e42780517
Add Deterministic DSA and ECDSA Signatures (Issue 121)
Based on Douglas Roark PR 131
2016-12-11 01:02:00 -05:00
Jeffrey Walton
5ec9763485
Updated documentation 2016-12-03 18:17:10 -05:00
Jeffrey Walton
ba75834ae9
Removed VC++ 5.0 and 6.0 workarounds (Issue 342) 2016-12-03 05:05:56 -05:00
Jeffrey Walton
bded4d385f
Commented typedef guarded by CRYPTOPP_MAINTAIN_BACKWARDS_COMPATIBILITY
The typedefs were only commented so folks could search for a missing symbol, like Crypto++ 4.0 PK_FixedLengthEncryptor or PK_FixedLengthDecryptor
This is a distinct change from CRYPTOPP_MAINTAIN_BACKWARDS_COMPATIBILITY_562
2016-12-03 00:58:54 -05:00
Jeffrey Walton
40230dd3bf
Removed MAINTAIN_BACKWARDS_COMPATIBILITY_562 (Issue 70) 2016-12-03 00:32:07 -05:00
Jeffrey Walton
82009ecf41
Increment version to 5.7 due to ABI break *Issue 337)
We still need to supply a patch for those maintaining 5.6.x
2016-12-01 18:10:56 -05:00
Jeffrey Walton
16ffe513a4
Add Integer bitwise AND, OR and XOR (Issue 336) 2016-11-23 21:55:30 -05:00
Jeffrey Walton
1ba8142195
Guard XOR of optional xorBlock. Updated documentation 2016-11-14 03:48:21 -05:00
Jeffrey Walton
7c7cb15f36
Remove unneeded include 2016-11-12 04:23:36 -05:00
Jeffrey Walton
93a6758fd9
Updated documentation 2016-10-12 02:57:28 -04:00
Jeffrey Walton
4bee0519f5
Updated documentation 2016-10-11 19:51:15 -04:00
Jeffrey Walton
22400b2ad1
Updated documentation 2016-10-11 19:13:36 -04:00
Jeffrey Walton
4d562aaac7
Post-release version increment 2016-10-11 14:37:03 -04:00
Jeffrey Walton
399a1546de Add CRYPTOPP_ASSERT (Issue 277, CVE-2016-7420)
trap.h and CRYPTOPP_ASSERT has existed for over a year in Master. We deferred on the cut-over waiting for a minor version bump (5.7). We have to use it now due to CVE-2016-7420
2016-09-16 11:27:15 -04:00
Jeffrey Walton
8a47758463 Updated documentation 2016-09-13 16:43:12 -04:00
Jeffrey Walton
aa5767cccf Post-release version increment 2016-09-11 14:35:21 -04:00
Jeffrey Walton
3074541e92 Bump Crypto++ version number from 5.6.3 to 5.6.4 2016-09-10 02:51:54 -04:00
Jeffrey Walton
1c2c91945b Updated documentation 2016-09-08 14:30:01 -04:00
Jeffrey Walton
fcdc845bba Updated documentation (Issue 248) 2016-08-27 23:52:43 -04:00
Jeffrey Walton
a2f97661ec Updated documentation 2016-04-26 17:11:50 -04:00
Jeffrey Walton
f4877218fa Updated documentation 2016-04-24 22:20:25 -04:00
Jeffrey Walton
c8900f3992 Updated documentation 2016-04-22 00:06:50 -04:00