VeraCrypt
aboutsummaryrefslogtreecommitdiff
path: root/src/Crypto/Sha2.c
AgeCommit message (Collapse)AuthorFilesLines
2024-11-10Add support for SHA-256 x86 instrinsic for enhance performance of ↵Mounir IDRASSI1-0/+15
PBKDF2-HMAC-SHA256
2024-09-08Windows: Add support for x86 and x64 build for driver and binaries using ↵Mounir IDRASSI1-2/+2
Visual Studio 2019 We also enable Control Flow Guard and Spectre Mitigation
2024-06-12Avoid conflict with C++17 features std::byte by using uint8 type instead of byteMounir IDRASSI1-1/+1
2019-12-09Fix wrong check on the define CRYPTOPP_BOOL_X64Mounir IDRASSI1-1/+1
2019-12-09Linux/MacOSX: use x64 optimized SHA256 implementation instead of limiting it ↵Mounir IDRASSI1-1/+1
to Windows.
2019-12-09Linux: fix NOASM compilation (#563) (#568)alt3r 3go1-1/+1
Signed-off-by: alt3r 3go <alt3r.3go@protonmail.com>
2019-10-02Align section types of Whirlpool_C and SHA256_K (#479)Hans-Peter Jansen1-1/+1
in order to fix LTO linking. After switching to LTO for openSUSE Tumbleweed, veracrypt build failed with: [ 185s] ../Crypto/Whirlpool.c:105:45: error: 'Whirlpool_C' causes a section type conflict with 'SHA256_K' [ 185s] 105 | CRYPTOPP_ALIGN_DATA(16) static const uint64 Whirlpool_C[8*256+R] CRYPTOPP_SECTION_ALIGN16 = { [ 185s] | ^ [ 185s] ../Crypto/Sha2.c:321:34: note: 'SHA256_K' was declared here [ 185s] 321 | CRYPTOPP_ALIGN_DATA(16) uint_32t SHA256_K[64] CRYPTOPP_SECTION_ALIGN16 = { [ 185s] | ^ [ 185s] lto-wrapper: fatal error: g++ returned 1 exit status Aligning section types of Whirlpool_C and SHA256_K fixes this.
2017-07-04Don't check for SSSE3 to use 64-bit SHA-512 assembly code since it uses only ↵Mounir IDRASSI1-0/+4
SSE2 instructions.
2017-07-02Avoid alignement issues with some old compilers by using movdqu instead of ↵Mounir IDRASSI1-8/+8
movdqa in SHA-256 SSE2 assembly.
2017-07-01Fix crash on machines without SSSE3 support in CPU by correctly checking for ↵Mounir IDRASSI1-1/+1
SSSE3 before using SHA-512 SSE2 assembly which uses PSHUFB instruction.
2017-06-27MacOSX: various changes for assembly files build. Don't use 32-bit assembly ↵Mounir IDRASSI1-3/+3
code of SHA-512 since it is not compatible with PIE configuration of OSX compiler (absolute addressing used)
2017-06-24Linux/MacOSX: properly declare 64-bit constant integer values to avoid being ↵Mounir IDRASSI1-28/+28
truncated by compiler.
2017-06-23Crypto: Add optimized SHA-512 and SHA-256 assembly implementations for ↵Mounir IDRASSI1-654/+747
x86_64 and x86. This improves speed by 30%.
2017-05-22Windows Driver: fix "__chkstk" link error in debug build caused by some ↵Mounir IDRASSI1-0/+10
crypto functions using too much stack space for local variables.
2016-08-17Linux: fix various compilation issues under Linux.Mounir IDRASSI1-1/+1
2016-08-15Windows EFI Bootloader: modifications to prepare EFI system encryption ↵Alex1-1/+5
support (common files with DcsBoot)
2016-05-10Normalize all line terminatorsDavid Foerster1-753/+753
2015-12-31Cryptography: Optimize Whirlpool implementation by using public domain ↵Mounir IDRASSI1-18/+1
assembly code developed by Wei Dai
2014-11-08Add original TrueCrypt 7.1a sourcesMounir IDRASSI1-0/+770