Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Use a single Sbox table for Whirlpool | Jack Lloyd | 2020-12-22 | 3 | -618/+205 |
| | | | | | | This actually only degrades performance slightly, and Whirlpool is already quite slow. Saves 14K of ROM and probably lessens side channel risk a bit. | ||||
* | Add SHACAL2 using ARMv8 SHA instructions | Jack Lloyd | 2020-12-21 | 1 | -4/+4 |
| | |||||
* | Align SHA-2 constants | Jack Lloyd | 2020-12-20 | 2 | -19/+19 |
| | | | | | This allows using the aligned load instruction from SSE2 though that doesn't seem to make any difference on performance. | ||||
* | Avoid having something at namespace scope named TABLE | Jack Lloyd | 2020-12-12 | 1 | -23/+23 |
| | | | | Likely to cause problems in the amalgamation | ||||
* | It seems basemetal armeabi won't do local alignments greater than 8 | Jack Lloyd | 2020-12-11 | 1 | -45/+49 |
| | | | | | Move these tables outside of the functions so larger values can be applied. | ||||
* | Incrase the alignment of all lookup tables | Jack Lloyd | 2020-12-11 | 3 | -13/+13 |
| | | | | | | | | | We had done this in an ad-hoc way in the past for eg the AES tables but given how easy C++'s alignas is to use we should apply it universally. Use 256 byte alignment for larger tables since that heads of any possible issues that arise from machines with large cache lines. | ||||
* | Cleanups in the Aarch64 SHA-2 code | Jack Lloyd | 2020-12-05 | 1 | -101/+88 |
| | |||||
* | Clean up the SHA-2 x86 SHA-NI implementation | Jack Lloyd | 2020-12-05 | 1 | -98/+99 |
| | |||||
* | Remove ULL suffixes | Jack Lloyd | 2020-12-01 | 4 | -803/+803 |
| | | | | Not required anymore | ||||
* | Add support for keyed Blake2b and also MAC via Blake2b. | Tom | 2020-11-29 | 2 | -5/+54 |
| | |||||
* | Make scan_name.h, cpuid.h and http_util.h internal | Jack Lloyd | 2020-11-28 | 5 | -5/+5 |
| | |||||
* | Merge GH #2456 Remove deprecated headers, make many headers internal | Jack Lloyd | 2020-11-06 | 53 | -171/+129 |
|\ | |||||
| * | Remove deprecated headers, make more headers internal | Jack Lloyd | 2020-11-06 | 53 | -171/+129 |
| | | | | | | | | | | | | | | | | | | Now modules default to internal headers instead of defaulting to public; making a new public API should be a visible and intentional choice. Brings the public header count from over 300 to around 150. Also removes the deprecated tls_blocking interface | ||||
* | | Remove compiler version checks for old compilers | Jack Lloyd | 2020-11-06 | 4 | -10/+10 |
|/ | | | | Also, add MSVC for ghash_cpu - somehow this got lost! | ||||
* | Remove default output length for SHAKE | Jack Lloyd | 2020-11-05 | 1 | -4/+4 |
| | | | | Instead it must be specified | ||||
* | Remove Tiger hash function | Jack Lloyd | 2020-11-05 | 5 | -633/+0 |
| | |||||
* | Minor optimization for Blake2b::final_result | Jack Lloyd | 2019-12-08 | 1 | -1/+2 |
| | | | | Avoids some needless memsets | ||||
* | Resolve various integer conversion warnings from MSVC | Jack Lloyd | 2019-12-06 | 1 | -1/+1 |
| | |||||
* | Deprecate many publically available headers | Jack Lloyd | 2019-09-06 | 38 | -0/+60 |
| | |||||
* | Make ssse3/sse2 dependencies explicit rather than implicit | Jack Lloyd | 2019-09-04 | 2 | -0/+2 |
| | | | | Previously --disable-sse2/--disable-ssse3 would not work as expected | ||||
* | Add BOTAN_FORCE_INLINE and use it in BLAKE2b | Jack Lloyd | 2019-08-31 | 1 | -3/+3 |
| | | | | Closes #2089 | ||||
* | Fix a carry handling bug in Streebog | Jack Lloyd | 2019-08-26 | 1 | -3/+4 |
| | | | | Closes #2082 | ||||
* | Remove BearSSL provider | Jack Lloyd | 2019-07-05 | 1 | -16/+1 |
| | | | | | | BearSSL is much slower than Botan's builtins, and it is not commonly included in distributions so doesn't even have the advantage of ubiquity. | ||||
* | Fix conflict when BMI2 is enabled and --single-amalgamation-file | Jack Lloyd | 2019-06-19 | 1 | -3/+3 |
| | | | | Not sure why this wasn't causing an error in the MSVC CI builds. | ||||
* | Make the ISA list a list | Jack Lloyd | 2019-04-17 | 8 | -8/+28 |
| | |||||
* | Fix some extra semicolons | Jack Lloyd | 2019-03-27 | 1 | -1/+1 |
| | |||||
* | Work around problem with GCC 4.8 | Jack Lloyd | 2019-03-26 | 2 | -2/+4 |
| | |||||
* | Fix some warnings from GCC 9 | Jack Lloyd | 2019-03-25 | 2 | -2/+2 |
| | | | | New redundant-move and pessimizing-move warnings found some | ||||
* | s/Blake2b/BLAKE2b/ | Jack Lloyd | 2019-02-22 | 2 | -18/+20 |
| | | | | As that is the proper name of the hash. Add a typedef for compat. | ||||
* | Unroll SHA-3 | Jack Lloyd | 2019-02-21 | 2 | -132/+158 |
| | | | | Improves performance by about 10-12% | ||||
* | Recognize BLAKE2b also [ci skip] | Jack Lloyd | 2019-01-31 | 1 | -1/+1 |
| | | | | See #1822 | ||||
* | Add BMI2 variants for SHA-512 and SHA-3 | Jack Lloyd | 2019-01-18 | 10 | -10/+413 |
| | | | | Both about 33% faster on Skylake | ||||
* | Avoid including rotate.h in bswap.h | Jack Lloyd | 2018-12-21 | 9 | -0/+9 |
| | | | | | | | It was only needed for one case which is easily hardcoded. Include rotate.h in all the source files that actually use rotr/rotl but implicitly picked it up via loadstor.h -> bswap.h -> rotate.h include chain. | ||||
* | Fix more MSVC warnings | Jack Lloyd | 2018-12-10 | 1 | -1/+1 |
| | |||||
* | Fix some MSVC warnings | Jack Lloyd | 2018-12-10 | 1 | -1/+1 |
| | |||||
* | Merge GH #1776 Clean ups in MDx_HashFunction | Jack Lloyd | 2018-12-08 | 2 | -33/+49 |
|\ | |||||
| * | Require MDx_HashFunction block size to be a power of 2 | Jack Lloyd | 2018-12-08 | 2 | -14/+25 |
| | | | | | | | | | | | | Allows replacing div/mod by a variable with a shift/mask. Allows storing just the bit count, which saves a few bytes. | ||||
| * | Cleanups in MDx_HashFunction | Jack Lloyd | 2018-12-08 | 2 | -32/+37 |
| | | |||||
* | | Clean up Streebog and fix use of unaligned loads | Jack Lloyd | 2018-12-08 | 2 | -94/+114 |
|/ | |||||
* | Avoid calling memset, memcpy within library code | Jack Lloyd | 2018-11-17 | 1 | -1/+3 |
| | | | | | | | | | Prefer using wrappers in mem_utils for this. Current exception is where memcpy is being used to convert between two different types, since copy_mem requires input and output pointers have the same type. There should be a new function to handle conversion-via-memcpy operation. | ||||
* | Fix some warnings in ARM specific code | Jack Lloyd | 2018-10-01 | 1 | -12/+12 |
| | |||||
* | Add support for hashing with CommonCrypto | Jose Pereira | 2018-09-03 | 1 | -3/+17 |
| | |||||
* | Tiny optimization in MDx_HashFunction::final_result | Jack Lloyd | 2018-05-28 | 1 | -2/+1 |
| | | | | Typically not a bottleneck but this shows up in XMSS profiling | ||||
* | Add BMI2-specific SHA-256 | Jack Lloyd | 2018-05-27 | 4 | -2/+167 |
| | | | | | Currently just a copy of the baseline compression function, but compiled with BMI2 flags. On Skylake improves performance by about 40%. | ||||
* | Add message to BOTAN_ARG_CHECK and use it more widely | Jack Lloyd | 2018-05-13 | 1 | -2/+2 |
| | |||||
* | Rename threefish module to threefish_512 | Jack Lloyd | 2018-03-06 | 2 | -2/+2 |
| | | | | GH #1477 | ||||
* | Optimize SHA_3::expand | Jack Lloyd | 2018-01-31 | 1 | -15/+14 |
| | | | | Noticable speedup for SHAKE esp with longer output lengths | ||||
* | Whitespace | Jack Lloyd | 2018-01-30 | 1 | -5/+5 |
| | |||||
* | Use copy_out_vec_le instead of explicit loop in SHA-3 and Keccak | Jack Lloyd | 2018-01-30 | 2 | -4/+2 |
| | |||||
* | Reorganize SHA-3 source file [ci skip] | Jack Lloyd | 2018-01-30 | 1 | -35/+35 |
| | | | | Put all the statics at beginning followed by member functions. |