summaryrefslogtreecommitdiff
path: root/cryptlib.vcxproj.filters
Commit message (Collapse)AuthorAgeFilesLines
* Add LSH dynamic dispatch (PR #1032)Jeffrey Walton2021-04-261-0/+12
| | | This commit adds dynamic dispatch to LSH. The implementation pivots on AVX2 and SSSE3.
* Add LSH to Visual Studio project filesJeffrey Walton2021-04-161-0/+9
|
* Remove 64-bit AdvancedProcessBlocks (GH #945)Jeffrey Walton2020-07-071-9/+0
|
* Add XTS block cipher mode of operation (GH #891, PR #892)Jeffrey Walton2019-10-121-0/+6
|
* Add BytePtr and ConstBytePtr overloads for SecByteBlock (GH #890)Jeffrey Walton2019-10-031-0/+3
|
* Avoid circular dependency using AlignedAllocate (GH #885)Jeffrey Walton2019-09-281-0/+6
|
* Fix RDSEED hang on x86 (GH #872) (#873)Jeffrey Walton2019-08-061-0/+3
| | | | | Calls to `MASM_RDSEED_GenerateBlock` would hang for an unknown reasons on Windows 10 and VS2017/VS2019 toolchains. Similar calls to `MASM_RDRAND_GenerateBlock` worked as expected. They were effectively the same code. The only differences were the function names and the opcodes (they were literally copy/paste). Splitting `rdrand.asm` (with both `RDRAND` and `RDSEED`) into `rdrand.asm` (with `RDRAND`) and `rdseed.asm` (with `RDSEED`) resolved the issue. We don't know why.
* Revert changes for lgtm findingsJeffrey Walton2019-06-091-3/+0
| | | | This broke SunCC to the point of no repair. SunCC is using AVX2 instructions for C++ and SSE2. Man this compiler sucks...
* Clear lgtm findingsJeffrey Walton2019-06-081-0/+3
| | | | We did some refactoring and added sse_simd.h. Over time more SSE functions will likely move into sse_simd.h
* Make config.h more Autoconf friendly (GH #835, PR #836)Jeffrey Walton2019-05-171-0/+30
|
* Add SHAKE-128 and SHAKE-256 (GH #805, PR #806)Jeffrey Walton2019-02-121-4/+10
|
* Add ChaCha20/Poly1305 AEAD cipher (GH #724)Jeffrey Walton2019-01-281-0/+12
|
* Use carryless multiplies for NIST b233 and k233 curves (GH #783, PR #784)Jeffrey Walton2019-01-161-0/+3
| | | Use carryless multiplies for NIST b233 and k233 curves.
* Add ed25519 (GH #764, PR #767)Jeffrey Walton2018-12-241-0/+9
| | | Add ed25519
* Add Test vectors and data to VS project filesJeffrey Walton2018-12-151-1/+1
|
* Add Moon's curve25519 using SSE2 (GH #761)Jeffrey Walton2018-12-131-0/+3
| | | | Moon's code is very fast. In fact it is so fast it broke our benchmarks. Moon's code registers 0.00 milliseconds and 0.00 megacycles/operation.
* Add Langley's curve25519 (GH #761, PR# 762)Jeffrey Walton2018-12-111-0/+21
|
* Add CRYPTOPP_INLINE to SIMON and SPECk for debuggingJeffrey Walton2018-11-131-2/+0
|
* Rename files with dashes to underscoresJeffrey Walton2018-11-101-20/+20
| | | | Also see https://github.com/weidai11/cryptopp/issues/736
* Add ChaCha AVX2 implementation (GH #735)Jeffrey Walton2018-11-081-1/+6
|
* Split Blake2 SIMD files into blake2s-simd.cpp and blake2b-simd.cpp (GH #729, ↵Jeffrey Walton2018-11-021-1/+4
| | | | | | GH #731) The split was required for Blake2b and Power8; Blake2s only requires Power7
* Add ChaCha SSE2 implementationJeffrey Walton2018-10-231-0/+3
| | | | | | | | Thanks to Jack Lloyd and Botan for allowing us to use the implementation. The numbers for SSE2 are very good. When compared with Salsa20 ASM the results are: * Salsa20 2.55 cpb; ChaCha/20 2.90 cpb * Salsa20/12 1.61 cpb; ChaCha/12 1.90 cpb * Salsa20/8 1.34 cpb; ChaCha/8 1.5 cpb
* Add keccakc.h and keccakc.cpp for shared F1600Jeffrey Walton2018-08-221-0/+6
|
* Remove Thread and Socket classes (GH #208, PR #703)Jeffrey Walton2018-08-171-30/+0
| | | Also see https://groups.google.com/forum/#!topic/cryptopp-users/5btwLoxXXD4.
* Split simon-simd.cpp and speck-simd.cpp into separate source filesJeffrey Walton2018-08-151-2/+8
| | | | SIMON-64 and SIMON-128 have different ISA requirements. The same applies to SPECK-64 and SPECK-128. GCC generated code that resulted in a SIGILL due to the ISA differences on a down level machine. The instructions was a mtfprwz from POWER8. It was prsent in a function prologue on a POWER7 machine.
* Add AES-NI accelerated SM4 encryption (GH #540)Jeffrey Walton2018-07-131-0/+3
| | | | Thanks to Markku-Juhani Olavi Saarinen for the code. Also see https://github.com/mjosaarinen/sm4ni
* Add HC-256 stream cipher (GH #680)Jeffrey Walton2018-07-051-0/+6
|
* Add HC-128 stream cipher (GH #679)Jeffrey Walton2018-07-051-0/+6
|
* Add Rabbit stream cipher (GH #678)Jeffrey Walton2018-07-041-0/+6
|
* Add SIMECK-64 SSSE3 implementation (GH #675)Jeffrey Walton2018-07-011-0/+3
|
* Add Simeck lightweight block cipher (GH #675)Jeffrey Walton2018-06-301-0/+6
| | | Add Simeck lightweight block cipher (GH #675)
* Add HIGHT lightweight block cipher (GH #672)Jeffrey Walton2018-06-241-0/+6
|
* Add LEA-128 SSSE3 implementation (GH #669)Jeffrey Walton2018-06-221-0/+3
| | | | LEA-128(128) from 6.73 cpb to 2.84 cpb on modern Core-i5 6400. LEA-128 from 10.12 cpb to 7.84 cpb antique Core2 Duo.
* Add CHAM128 SSSE3 implementation (PR #670)Jeffrey Walton2018-06-191-0/+3
| | | | CHAM-128(128) from 10.5 cpb to 4.1 cpb. CHAM-128(256) from 12.5 cpb to 4.7 cpb.
* Add CHAM lightweight block cipher (PR #670)Jeffrey Walton2018-06-171-0/+6
| | | Add CHAM lightweight block cipher
* Add LEA lightweight block cipher (GH #669)Jeffrey Walton2018-06-171-0/+6
|
* Add scrypt key derivation function (GH #613, PR #626)Jeffrey Walton2018-03-311-1/+7
|
* Re-add Simon and Speck, enable SSE (GH #585)Jeffrey Walton2018-02-181-0/+18
| | | | This commit re-adds Simon and Speck. The commit includes C++, SSSE3 and SSE4. NEON, Aarch32 and Aarch64 are disabled at the moment.
* Remove Simon and Speck ciphers (GH #585)Jeffrey Walton2018-02-141-19/+1
| | | | | | 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...
* Rename nacl.h to naclite.hJeffrey Walton2018-01-211-1/+1
| | | | This should avoid confusion with header files from the reference implementation and libsodium
* Add interface to TweetNaCl library (#566)Jeffrey Walton2018-01-171-0/+9
| | | | | | | | | | | | | 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.
* Refactor <cipher>_AdvancedProcessBlocks_<arch> into adv-simd.hJeffrey Walton2017-12-091-0/+3
| | | | This also fixes the SPECK64 bug where CTR mode self tests fail. It was an odd failure because it only affected 64-bit SPECK. SIMON was fine and it used nearly the same code. We tracked it down through trial and error to the table based rotates.
* Add simon-simd.cpp to file list and nmake fileJeffrey Walton2017-11-271-1/+1
|
* Add NEON and ASIMD intrinsics for SPECK-128 (GH #539)Jeffrey Walton2017-11-271-1/+4
| | | | Performance increased by about 200% on a 980 MHz BananaPi dev-board. Throughput went from about 176.6 cpb to about 60.3 cpb.
* Add SM3 hash function (GH #541)Jeffrey Walton2017-11-231-12/+12
|
* Add SM4 block ciphers (GH #540)Jeffrey Walton2017-11-231-0/+6
|
* Add speck-simd.cpp to project files (GH #538, #539)Jeffrey Walton2017-11-221-0/+3
| | | | Cleaned up whitespace
* Add SIMON-64 and SIMON-128 lightweight block ciphers (GH #539)Jeffrey Walton2017-11-211-0/+6
|
* Add SPECK-64 and SPECK-128 lightweight block ciphers (GH #538)Jeffrey Walton2017-11-201-0/+6
|
* Add sse-simd.cpp to nmake file and vcxproj filtersJeffrey Walton2017-11-161-0/+3
|