VeraCrypt
aboutsummaryrefslogtreecommitdiff
path: root/src/Common/Crypto.h
AgeCommit message (Collapse)AuthorFilesLines
2024-11-16Windows: remove 32-bit logic from the code since we support only 64-bit. ↵Mounir IDRASSI1-3/+1
remove 32-bit EFI bootloader files. We also fix intermediary files folder for Portable and Setup projects
2024-11-13Windows: Remove support for 32-bit driver code. Set build target as Windows ↵Mounir IDRASSI1-5/+5
10. Simplify code and fix all warnings in driver.
2024-08-02Implement detection of volumes with vulnerable XTS master key.Mounir IDRASSI1-0/+2
If vulnerability detected, a warning message is displayed during mount or backup/restore header, and changing the password is disallowed since it will not change the master key.
2023-07-22Windows: Remove TrueCrypt support. Increment version to 1.26.4.Mounir IDRASSI1-1/+0
2022-03-08Implement support of Blake2s-256 hash algorithm and remove deprecated ↵Mounir IDRASSI1-8/+6
algorithms RIPEMD-160 and GOST89.
2021-07-13Windows: replace insecure wcscpy/wcscat/strcpy runtime functions with secure ↵Mounir IDRASSI1-2/+2
equivalents This fixed failure to build driver for ARM64 with latest VS 2019
2019-09-23Fix build error of UEFI bootloader caused by latest changes that introduced ↵Mounir IDRASSI1-0/+2
ChaCha20 and T1HA algorithms and which are not present nor used in UEFI bootloader
2019-03-02Windows: Generalize RAM encryption for keys to VeraCrypt binaries, ↵Mounir IDRASSI1-1/+8
especially Format and Expander
2019-03-01Windows Driver: Implement RAM encryption for cached passwordsMounir IDRASSI1-0/+1
2019-03-01Windows: Implement RAM encryption for keys on 64-bit machines using ChaCha12 ↵Mounir IDRASSI1-0/+21
cipher and t1ha non-cryptographic fast hash (https://github.com/leo-yuriev/t1ha)
2019-02-15Windows: rename IsCpuRngSupport to IsCpuRngSupported for clarity and use it ↵Mounir IDRASSI1-1/+1
in Mount.c
2019-02-08Windows: Add option to enable use of CPU RDRAND/RDSEED as source of entropy ↵Mounir IDRASSI1-0/+4
which is now disabled by default
2019-02-01Windows driver: replace SHA512 by RIPEMD160 when calculating internal hash ↵Mounir IDRASSI1-1/+1
of master key to avoid calling KeSaveFloatingPointState/KeSaveExtendedProcessorState since SHA512 implementation uses SSE2/AVX and RIPEMD160 is pure C
2019-01-21Windows driver: remove volumes master keys from CRYPTO_INFO since they are ↵Mounir IDRASSI1-1/+5
not needed after their key schedule is created
2019-01-21Windows: remove unused fields from CRYPTO_INFO structureMounir IDRASSI1-6/+1
2019-01-09Windows Security: Add new entry point in driver that allows emergency ↵Mounir IDRASSI1-0/+1
clearing of all encryption keys from memory. This entry point requires administrative privileges and it will caused BSDO when system encryption is active. It can be useful for example to applications that monitors physical access to the machine and which need to erase sensitive key material from RAM when unauthorized access is detected.
2018-03-27Crypto: Add support for 5 new cascades of cipher algorithms ↵Mounir IDRASSI1-1/+1
(Camellia-Kuznyechik, Camellia-Serpent, Kuznyechik-AES, Kuznyechik-Serpent-Camellia and Kuznyechik-Twofish)
2017-07-22Windows: reduce size of MBR bootloader by removing unused functions in each ↵Mounir IDRASSI1-1/+1
build type.
2017-06-23Update IDRIX copyright yearMounir IDRASSI1-1/+1
2017-01-12Windows: Fix Streebog not recognized by /hash command line switch but making ↵Mounir IDRASSI1-1/+3
hash names matching more generic.
2016-10-17Windows EFI: don't use optimized Serpent implementation for EFI bootloader ↵Mounir IDRASSI1-1/+1
because lack of C++ support in EDKII framework
2016-10-17Crypto: Use SIMD optimized Serpent implementation from Botan. 2.5x speed ↵Mounir IDRASSI1-1/+5
gain factor. Update credits and copyrights notice.
2016-08-17Linux: fix various compilation issues under Linux.Mounir IDRASSI1-2/+2
2016-08-15Windows: Show only supported encryption algorithm in the system encryption ↵Mounir IDRASSI1-0/+6
wizard for MBR
2016-08-15Windows EFI Bootloader: modifications to prepare EFI system encryption ↵Alex1-12/+12
support (common files with DcsBoot)
2016-08-15Windows: Add support for Streebog (hash) and kuznyechik (encryption)Mounir IDRASSI1-7/+16
2016-08-15Windows: Add Magma cipher (GOST-89)Mounir IDRASSI1-3/+5
2016-06-02Crypto: Add support for Japanese encryption standard Camellia, including for ↵Mounir IDRASSI1-1/+7
system encryption.
2016-05-10Remove trailing whitespaceDavid Foerster1-11/+11
2016-05-10Normalize all line terminatorsDavid Foerster1-363/+363
2016-01-20Copyright: update dates to include 2016.Mounir IDRASSI1-1/+1
2016-01-03Cryptography: Set 16-byte alignment for KEY_INFO structure that is used as ↵Mounir IDRASSI1-1/+10
input for Whirlpool hash. This helps improve performance.
2015-11-26Windows: Full UNICODE rewrite and implement support for UNICODE passwords.Mounir IDRASSI1-11/+17
2015-08-06Update license information to reflect the use of a dual license Apache 2.0 ↵Mounir IDRASSI1-7/+9
and TrueCrypt 3.0.
2015-07-11Use Pim name for internal variables instead of the old name PinMounir IDRASSI1-1/+1
2015-06-07Windows: Add support for PIN in favorites. Several enhancements to GUI ↵Mounir IDRASSI1-0/+1
handling of Dynamic Mode.
2015-05-26Windows: first implementation of dynamic modeMounir IDRASSI1-0/+1
2015-01-03Windows: change cascade encryption naming format to reflex mathematical ↵Mounir IDRASSI1-1/+1
composition of the encryption algorithm, thus being more clear. For example AES(Twofish(Serpent)) instead of AES-Twofish-Serpent.
2014-12-28Windows: support loading TrueCrypt volumes. Implement converting TrueCrypt ↵Mounir IDRASSI1-0/+1
volumes to VeraCrypt using the change password functionality.
2014-12-16Windows: Enhance performance by implementing the possibility to choose the ↵Mounir IDRASSI1-1/+19
correct hash algorithm of volumes during various operations (mount, change password...). In case of system encryption, slightly speedup Windows startup time by making the driver pickup the correct hash algorithm used for the encryption.
2014-11-08Bootloader: optimize code size in single cipher mode by manually inlining ↵Mounir IDRASSI1-0/+4
EAInit, EAGetFirst and EAGetKeySize, and by removing the loop in ReadVolumeHeader that tests for encryption algorithms.
2014-11-08Add support for SHA-256 in key derivation for bootloader encryption. Create ↵Mounir IDRASSI1-8/+15
separate bootloader images for SHA-256 and RIPEMD-160. Set SHA-256 as the default PRF for boot encryption and SHA-512 as default PRF for all other cases. Depricate RIPEMD-160.
2014-11-08Adapt certain functions in the case of Windows bootloader in order to make ↵Mounir IDRASSI1-2/+10
its size as small as possible.
2014-11-08Lower number of times we overwrite volume header during the encryption of a ↵Mounir IDRASSI1-0/+3
partition if the user choose to wipe the driver. Latest studies show that even one pass is enough to make data irretrievable. A value of 3 is a conservative approach that enhance performance without scarifying security. http://www.infosecisland.com/blogview/16130-The-Urban-Legend-of-Multipass-Hard-Disk-Overwrite.html http://digital-forensics.sans.org/blog/2009/01/15/overwriting-hard-drive-data/
2014-11-08Remove remaining legacy cryptographic algorithms that are never used by ↵Mounir IDRASSI1-3/+0
VeraCrypt.
2014-11-08Remove deprecated/legacy cryptographic algorithms and encryption modes that ↵Mounir IDRASSI1-27/+1
are never used by VeraCrypt. This will speed up volumes opening in many cases.
2014-11-08Static Code Analysis : Add various NULL pointers checksMounir IDRASSI1-2/+2
2014-11-08Add original TrueCrypt 7.1a sourcesMounir IDRASSI1-0/+332