Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Disable Sonar build | Jack Lloyd | 2018-11-17 | 1 | -5/+5 |
| | | | | | | | | | | | | It is suddenly 5x slower for an unknown reason https://community.sonarsource.com/t/sonar-analysis-step-suddenly-much-5x-slower-on-travis-ci/4364 Now it either times out or else completely dominates the runtime for Travis, either is not acceptable. Leave the framework for using Sonar in CI for now so it is easy to test if things have improved later. If things are still broken in a month or two I'll probably just drop support for Sonar. | ||||
* | Fix Sonar warning | Jack Lloyd | 2018-11-17 | 1 | -1/+1 |
| | |||||
* | Attempt to fix Sonar build problem | Jack Lloyd | 2018-11-17 | 2 | -1/+8 |
| | | | | | | The build is timing out. Use -Os instead of -O3 in an attempt to speed up the build step, and enable multithreaded analysis as that step is also quite slow. | ||||
* | Use vzeroupper/vzeroall to transition between AVX and SSE states. | Jack Lloyd | 2018-11-10 | 4 | -0/+32 |
| | | | | | | | | Otherwise some CPUs suffer serious stalls. Using vzeroall on exit also has the nice effect that we don't have to worry about register contents leaking. HT to @noloader for doing the background research on this. | ||||
* | Avoid an implausible integer overflow flagged by Coverity [ci skip] | Jack Lloyd | 2018-11-10 | 1 | -1/+6 |
| | |||||
* | Merge GH #1738 Avoid conditional branches during NIST reductions | Jack Lloyd | 2018-11-10 | 2 | -59/+58 |
|\ | |||||
| * | Avoid branching in the NIST prime reduction code | Jack Lloyd | 2018-11-09 | 2 | -59/+58 |
|/ | | | | | This is still vulnerable to a cache-based side channel since the multiple chosen leaks the final carry. | ||||
* | Merge GH #1737 Inline mp_core | Jack Lloyd | 2018-11-09 | 4 | -604/+439 |
|\ | |||||
| * | Use resize instead of shrink_to_fit | Jack Lloyd | 2018-11-09 | 2 | -3/+10 |
| | | | | | | | | Avoid recalculating significant words which slows down reduction | ||||
| * | Inline the contents of mp_core.cpp | Jack Lloyd | 2018-11-09 | 2 | -601/+429 |
| | | |||||
* | | Bump ABI version | Jack Lloyd | 2018-11-09 | 1 | -1/+1 |
| | | | | | | | | BigInt has changed size | ||||
* | | Cleanups in Poly1305 | Jack Lloyd | 2018-11-09 | 1 | -23/+23 |
| | | |||||
* | | Document the problem of old binutils | Jack Lloyd | 2018-11-09 | 1 | -0/+14 |
| | | | | | | | | See GH #1721 and #1718 | ||||
* | | Add --disable-bmi2, --disable-rdseed, --disable-rdrand flags | Jack Lloyd | 2018-11-09 | 1 | -1/+1 |
|/ | | | | GH #1721 #1718 | ||||
* | Merge GH #1734 Refactor BigInt data model, add sig_words cache | Jack Lloyd | 2018-11-09 | 3 | -107/+253 |
|\ | |||||
| * | Optimize mod_sub | Jack Lloyd | 2018-11-09 | 1 | -10/+21 |
| | | | | | | | | | | We already assumed the args are < modulus so we can avoid the call to sig_words. This provides a noticable speedup for ECDSA overall. | ||||
| * | Add a cache of sig words to BigInt | Jack Lloyd | 2018-11-09 | 3 | -97/+232 |
| | | |||||
* | | Rename get_uint32_t to get_uint32 | Jack Lloyd | 2018-11-09 | 1 | -67/+67 |
| | | |||||
* | | Merge GH #1736 Skip RSA blinding tests on non-base providers | Jack Lloyd | 2018-11-08 | 1 | -2/+9 |
|\ \ | |/ |/| | |||||
| * | Run RSA blinding tests only with base provider | Alexander Bluhm | 2018-11-08 | 1 | -2/+9 |
|/ | | | | | Only the base provider uses blinding for RSA. So the test should run exclusively for this provider. Also use base provider explicitly. | ||||
* | Add some missing includes | Jack Lloyd | 2018-11-08 | 8 | -0/+9 |
| | | | | This is not exhaustive. See GH #1733 | ||||
* | Merge GH #1735 Use OpenSSL 1.1 API with LibreSSL | Jack Lloyd | 2018-11-08 | 3 | -6/+6 |
|\ | |||||
| * | Switch LibreSSL provider to OpenSSL 1.1 API | Alexander Bluhm | 2018-11-07 | 3 | -6/+6 |
|/ | | | | | | | LibreSSL 2.7 has added parts of the OpenSSL 1.1 API. Remove the defined(LIBRESSL_VERSION_NUMBER) as it is not necessary anymore. Switch to the newer API unconditionally, older LibreSSL version are not supported. | ||||
* | Compile fix | Jack Lloyd | 2018-11-07 | 2 | -1/+2 |
| | |||||
* | Update news [ci skip] | Jack Lloyd | 2018-11-07 | 1 | -0/+5 |
| | |||||
* | Avoid throwing std:: exceptions | Jack Lloyd | 2018-11-07 | 3 | -2/+3 |
| | | | | | Also include <new> in mem_ops.cpp as apparently that header is where bad_alloc is defined. | ||||
* | Avoid using std::invalid_argument | Jack Lloyd | 2018-11-07 | 3 | -4/+4 |
| | | | | See #1726 | ||||
* | Merge GH #1733 Add includes for MSVC 2019 | Jack Lloyd | 2018-11-07 | 2 | -2/+2 |
|\ | |||||
| * | Add missing <stdexcept> <string> necessary | Larry-Hu | 2018-11-07 | 2 | -2/+2 |
|/ | |||||
* | Simplify BigInt::is_zero | Jack Lloyd | 2018-11-06 | 1 | -6/+1 |
| | | | | | | The definition of return value of sig_words() means the integer is zero iff sig_words() returns zero, so there is no reason to scan over the data twice. | ||||
* | Update news | Jack Lloyd | 2018-11-06 | 1 | -1/+6 |
| | |||||
* | Merge GH #1730 Optimize AVX2 ChaCha | Jack Lloyd | 2018-11-06 | 2 | -238/+209 |
|\ | |||||
| * | Optimize AVX2 ChaCha | Jack Lloyd | 2018-11-05 | 2 | -238/+209 |
| | | | | | | | | | | | | Using the same transposition trick used for SSE2 in #1728 On my Skylake desktop about 5-10% faster depending on buffer sizes. | ||||
* | | Merge GH #1729 Optimize SIMD_4x32 for NEON | Jack Lloyd | 2018-11-06 | 1 | -33/+32 |
|\ \ | |||||
| * | | Fix for 32-bit ARM | Jack Lloyd | 2018-11-05 | 1 | -0/+9 |
| | | | |||||
| * | | Some optimizations for NEON in SIMD_4x32 | Jack Lloyd | 2018-11-05 | 1 | -35/+25 |
| |/ | |||||
* / | Remove SIMD_32 typedef | Jack Lloyd | 2018-11-05 | 4 | -50/+48 |
|/ | | | | | It is confusing since its not clear from the name how many elements it has, and this gives consistency with SIMD_8x32 type. | ||||
* | Update news | Jack Lloyd | 2018-11-05 | 1 | -1/+1 |
| | |||||
* | Merge GH #1728 Fix ChaCha bug, optimize, add AltiVec support | Jack Lloyd | 2018-11-05 | 17 | -621/+305 |
|\ | |||||
| * | Add ChaCha using SIMD_4x32 | Jack Lloyd | 2018-11-04 | 14 | -612/+279 |
| | | | | | | | | | | | | | | | | | | | | | | This allows supporting SSE2, NEON and AltiVec in a single codebase, so drop the NEON and SSE2 code. This new impl avoids having to do shuffles with every round and so is about 10% faster on Skylake. Also, fix bugs in both baseline and AVX2 implementations when the low counter overflowed. The SSE2 and NEON code were also buggy here. | ||||
| * | Use 64-bit integer for seek value in stream cipher tests | Jack Lloyd | 2018-11-04 | 1 | -1/+1 |
| | | |||||
| * | Add VarMap::get_opt_u64 | Jack Lloyd | 2018-11-04 | 2 | -8/+25 |
|/ | |||||
* | Ensure this works even if par mult param is set to 1 | Jack Lloyd | 2018-11-02 | 1 | -1/+1 |
| | | | | As this paramater is technically a user configurable toggle. | ||||
* | Correct test | Jack Lloyd | 2018-11-02 | 4 | -3/+18 |
| | | | | This was trying to test for issue in #1723 but was incorrect. | ||||
* | Fix issue when CXX was set to 'ccache g++' see ↵ | Jack Lloyd | 2018-11-02 | 1 | -1/+1 |
| | | | | https://github.com/randombit/botan-rs/pull/9 | ||||
* | Merge GH #1724 Increase update granularity of GCM to work around FFI problem | Jack Lloyd | 2018-11-02 | 1 | -1/+1 |
|\ | |||||
| * | Fixed an issue where update_granularity is equal to tag_size in GCM mode, ↵ | chux0519 | 2018-11-01 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | | | which will cause incremental decoding to fail in ffi. related code(ffi_cipher.cpp): ```cpp BOTAN_ASSERT(cipher.update_granularity() > cipher.minimum_final_size(), "logic error"); ``` | ||||
* | | Merge GH #1726 Add missing includes caught by VC2019 | Jack Lloyd | 2018-11-02 | 1 | -0/+2 |
|\ \ | |/ |/| | |||||
| * | Add missing <stdexcept> <string> necessary | Cheney-Wang | 2018-11-02 | 1 | -0/+2 |
|/ | |||||
* | Minor optimization when primality checking | Jack Lloyd | 2018-10-31 | 1 | -2/+4 |
| | | | | | | | Avoid doing the comparison against the largest hard coded prime, when we know the prime table is 16 bits and we already have to compute the bitsize of n in order to calculate the required number of Miller-Rabin iterations. |