summaryrefslogtreecommitdiff
path: root/filters.h
Commit message (Collapse)AuthorAgeFilesLines
* Miscellaneos warning fixes (GH #739)bobsayshilol2018-11-131-1/+1
| | | | | | | | * Fix -pedantic warning in GCC. * Fix -Wunused-private-field warning. * Fix -Wkeyword-macro warning.
* Add VectorSource (GH #730)orangefour2018-11-011-1/+19
|
* SpellingJeffrey Walton2018-10-271-4/+4
|
* Update documentationJeffrey Walton2018-10-271-3/+4
|
* Update documentationJeffrey Walton2018-10-271-5/+10
|
* Update documentationJeffrey Walton2018-10-261-1/+3
|
* Add VectorSinkorangefour2018-09-051-4/+8
|
* Fix clang warnings in headers (#655)Marcel Raad2018-05-101-4/+4
| | | | | | | | | | * 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.
* Remove unneeded Doxygen directiveJeffrey Walton2018-01-191-32/+0
|
* Change Doxygen comment style from //! to ///Jeffrey Walton2017-11-291-549/+549
| | | | Also see https://groups.google.com/forum/#!topic/cryptopp-users/A7-Xt5Knlzw
* Clear GCC pedantic warnings (GH #537)Jeffrey Walton2017-11-191-2/+2
|
* Removed m_authenticated member variableJeffrey Walton2017-10-031-2/+3
| | | | Add m_isSpecial, m_mandatoryBlockSize and m_optimalBufferSize members. The additional members stabilize running times and avoid some unnecessary calculations. Previously we were calculating some values in each call to Put and LastPut.
* Add second ctor to StreamTransformationFilter for authenticated encryption modesJeffrey Walton2017-09-291-3/+26
| | | | | | | | StreamTransformationFilter had a small hack to accomodate AuthenticatedEncryptionFilter and AuthenticatedDecryptionFilter. The hack was enough to support CCM, EAX and GCM modes, which looks a lot like a regular stream cipher from the filter framework point of view. OCB is slightly different. To the filter framework it looks like a block cipher with an unusual last block size and padding scheme. OCB uses MandatoryBlockSize() == BlockSize() and MinLastBlockSize() == 1 with custom padding of the last block (see the handling of P_* and A_* in the RFC). The unusual config causes the original StreamTransformationFilter assert to fire even though OCB is in a normal configuration. For the time being, we are trying to retain the assert becuase it is a useful diagnostic. Its possible another authenticated encryption mode, like AEZ or NORX, will cause the assert to incorrectly fire (yet again). We will cross that bridge when we come to it.
* Revert AltiVec and Power8 commitsJeffrey Walton2017-09-051-2/+2
| | | | | The strategy of "cleanup under-aligned buffers" is not scaling well. Corner cases are still turing up. The library has some corner-case breaks, like old 32-bit Intels. And it still has not solved the AltiVec and Power8 alignment problems. For now we are backing out the changes and investigating other strategies
* Fixup under-aligned buffers for AltiVec and Power8Jeffrey Walton2017-09-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit supports the upcoming AltiVec and Power8 processor support. The commit favors AlignedSecByteBlock over SecByteBlock in places where messages are handled on the AltiVec and Power8 processor data paths. The data paths include all block cipher modes of operation, and some filters like Intel and ARM processors are tolerant of under-aligned buffers when using crypto intstructions. AltiVec and Power8 are less tolerant, and they simply ignore the three low-order bits to ensure an address is aligned. The AltiVec and Power8 have caused a fair number of wild writes on the stack and in the heap. Testing on a 64-bit Intel Skylake show a marked improvement in performance. We suspect GCC is generating better code since it knows the alignment of the pointers, and does not have to emit fixup code for under-aligned and mis-aligned data. Here are some data points: SecByteBlock - Poly1305: 3.4 cpb - Blake2s: 6.7 cpb - Blake2b: 4.5 cpb - SipHash-2-4: 3.1 cpb - SipHash-4-8: 3.5 cpb - ChaCha20: 7.4 cpb - ChaCha12: 4.6 cpb - ChaCha8: 3.5 cpb AlignedSecByteBlock - Poly1305: 2.9 cpb - Blake2s: 5.5. cpb - Blake2b: 3.9 cpb - SipHash-2-4: 1.9 cpb - SipHash-4-8: 3.3 cpb - ChaCha20: 6.0 cpb - ChaCha12: 4.0 cpb - ChaCha8: 2.9 cpb Testing on an mid-2000's 32-bit VIA C7-D with SSE2+SSSE3 showed no improvement, and no performance was lost.
* Update documentationJeffrey Walton2017-07-281-0/+12
|
* Update documentationJeffrey Walton2017-07-271-3/+2
| | | | This cleanup was performed using Clang and -Wdocumentation -Wno-documentation-deprecated-sync
* Revert "Revert "Clear Visual Studio warnings (Issue 412)""Jeffrey Walton2017-06-021-1/+1
| | | | This reverts commit c3871aec948013c1a4d5613050c659520f59e2e4.
* Revert "Clear Visual Studio warnings (Issue 412)"Jeffrey Walton2017-06-021-1/+1
| | | | This reverts commit eb3b27a6a543. 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.
* Clear Visual Studio warnings (Issue 412)Jeffrey Walton2017-05-301-1/+1
|
* Add C++ nullptr support (Issue 383)Jeffrey Walton2017-03-011-31/+31
|
* Change next version from 5.7 to 6.0Jeffrey Walton2017-02-211-1/+1
| | | | Crypto++ 5.7 was the increment after the 5.6.5 release. Crypto++ 6.0 accurately reflects compatibility
* Remove old VerifierFilter, switch to SignatureVerificationFilterJeffrey Walton2017-02-071-5/+34
| | | | | VerifierFilter was a typedef for SignatureVerificationFilter. The name changed at Crypto++ 5.0 Updated documentation
* Updated documentationJeffrey Walton2017-02-071-0/+3
|
* Add W3C_PADDING to encryption pathJeffrey Walton2017-02-061-1/+1
|
* Merge pull request #368 from edrlab/aes256cbc-w3c-padding-schemeJeffrey Walton2017-02-061-0/+2
|\ | | | | Support for AES-256-CBC with W3C padding scheme ( http://www.w3.org/2001/04/xmlenc#aes256-cbc )
| * patched CryptoPP Crypto++ to add support for AES-256-CBC with W3C padding ↵danielweck2017-01-241-0/+2
| | | | | | | | scheme (based on https://github.com/readium/readium-lcp-client/pull/26 )
* | Change file preamble to include "originally written by Wei Dai"Jeffrey Walton2017-01-271-1/+1
|/ | | | We have made a fair number of changes, and we don't want WD to receive credit for issues he was not part of
* spelling fixesklemens2016-12-271-1/+1
|
* Cleared 'warning: field 'm_attachment' will be initialized after field'Jeffrey Walton2016-12-221-3/+3
|
* Removed MAINTAIN_BACKWARDS_COMPATIBILITY_562 (Issue 70)Jeffrey Walton2016-12-031-20/+43
|
* Updated documentationJeffrey Walton2016-11-121-3/+12
|
* Updated documentationJeffrey Walton2016-11-121-1/+1
|
* Updated documentationJeffrey Walton2016-10-181-2/+9
|
* Updated documentationJeffrey Walton2016-10-121-5/+14
|
* Updated documentationJeffrey Walton2016-10-111-6/+53
|
* Updated documentationJeffrey Walton2016-09-261-8/+9
|
* Updated documentationJeffrey Walton2016-09-261-4/+8
|
* Updated documentationJeffrey Walton2016-09-261-2/+6
|
* Add CRYPTOPP_ASSERT (Issue 277, CVE-2016-7420)Jeffrey Walton2016-09-161-4/+4
| | | | 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
* Whitespace checkinJeffrey Walton2016-09-101-18/+18
|
* Fix clang warningMarcel Raad2016-05-311-2/+18
| | | | | | In 64-bit mode, clang 3.8 warns: cast to 'unsigned char *' from smaller integer type 'int' [-Wint-to-pointer-cast] Fix this by directly returning NULL in these functions.
* Cleared unused function warning under Visual Studio with /WallJeffrey Walton2016-05-021-1/+1
|
* Cleared compile errors under Visual Studio .Net compilersJeffrey Walton2016-04-291-1/+1
|
* Update documentationJeffrey Walton2016-02-291-9/+13
|
* Made MeterFilter Get*() functions constSteven Green2016-01-151-4/+4
|
* Updated documentationJeffrey Walton2015-12-161-28/+134
|
* Updated documentationJeffrey Walton2015-12-161-35/+222
|
* Additional documentation; fixed issues with Clang integrated assembler and ↵Jeffrey Walton2015-11-191-2/+2
| | | | different versions numbers for LLVM Clang and Apple Clang; fixed missing header in DSA class
* Cleared issues 11,12,13 (Clang integrated assembler), 58 (RC rollup), 66 ↵Jeffrey Walton2015-11-181-21/+159
| | | | (Coverity rollup)