Mounir IDRASSI
3867c1cca3
Use blake2b as hash for random generator from Argon2 is used.
2025-07-03 17:32:47 +09:00
Mounir IDRASSI
3c17b8ced2
Windows: Add support for Argon2id as an alternative to PBKDF2 key derivation
2025-06-25 15:44:31 +09:00
Mounir IDRASSI
44a9f8bcff
Remove SM4 support!
2025-05-18 18:31:39 +09:00
Mounir IDRASSI
982fffe4db
Reorder SM4-based cascade ciphers: apply SM4 as the final stage following external review.
...
The cascade order has been updated so that SM4 is applied after the other cipher(s) (e.g., Serpent). This change reflects standard cryptanalytic guidance, which shows that the overall strength of a cascade is limited by the first encryption stage. Given that SM4 uses a 128-bit key, its post-quantum brute-force resistance is lower than ciphers with a 256-bit key (such as Serpent). By placing SM4 last, we ensure that any potential weakness in SM4 cannot reduce the security margin provided by the stronger cipher.
2025-05-16 15:37:32 +09:00
Mounir IDRASSI
b673901503
Move copyright and links to "AM Crypo", amcrypto.jp and veracrypt.jp
2025-05-11 16:02:20 +09:00
Mounir IDRASSI
7924f06e39
Initial support of SM4 cipher for normal volumes
2025-05-04 02:27:05 +09:00
Mounir IDRASSI
54bd819990
Windows/Linux/macOS: implement AES hardware support on ARM64 (ARMv8)
2025-01-17 00:58:54 +01:00
Mounir IDRASSI
1b35abb191
Increment version to 1.26.18. Update copyright date. Update Release Notes. Update Windows drivers.
2025-01-14 12:26:28 +01:00
Mounir IDRASSI
c86577fc0e
Windows: remove 32-bit logic from the code since we support only 64-bit. remove 32-bit EFI bootloader files.
...
We also fix intermediary files folder for Portable and Setup projects
2024-11-16 01:05:15 +01:00
Mounir IDRASSI
de9e472d10
Windows: Fix build of MBR bootloader
2024-11-15 11:16:19 +01:00
Mounir IDRASSI
43ad4f93eb
Windows: Fix various compiler warnings
2024-11-15 00:41:07 +01:00
Mounir IDRASSI
cb97351250
Windows: Remove support for 32-bit driver code. Set build target as Windows 10. Simplify code and fix all warnings in driver.
2024-11-13 02:08:51 +01:00
Mounir IDRASSI
455a4f2176
Avoid conflict with C++17 features std::byte by using uint8 type instead of byte
2024-06-12 12:30:04 +02:00
lealem47
9247ce1bb9
wolfCrypt as crypto backend for VeraCrypt ( #1227 )
...
* wolfCrypt as crypto backend for VeraCrypt
* Refactor to use EncryptionModeWolfCryptXTS class
2023-11-13 00:51:31 +01:00
Mounir IDRASSI
c0f8179f2a
Windows: enhancement to RAM encryption
...
- use a more standard-looking memory value tag instead of fully random one that will look suspicious and outstanding
- If we fail to allocate 1MiB for derivation area, we device the size by two in a loop until we succeed. This is better than falling back directly to 8KiB size
- Better method to derive actual encryption key: instead of simply duplicating 128bit key value, we combine a xor addition and self-encryption to build a 256-bit key
- use both encID and pbKeyDerivationArea to derive IV for encryption and not only endID
2023-09-29 22:26:54 +02:00
Mounir IDRASSI
d2efeaffe7
Correctly detect ARM builds when listing CPU features in headers
2023-06-30 00:34:16 +02:00
Mounir IDRASSI
36795a688f
Implement support of Blake2s-256 hash algorithm and remove deprecated algorithms RIPEMD-160 and GOST89.
2022-03-08 00:29:26 +01:00
Mounir IDRASSI
d9e1d57a53
Windows Driver: use functions from ntstrsafe.h instead of strsafe.h since they are destined for kernel mode
2021-08-30 00:26:50 +02:00
Mounir IDRASSI
b98606e390
Windows: Fix compilation error of bootloader caused by introduction of strsafe.h in crypto.c
2021-07-14 23:59:37 +02:00
Mounir IDRASSI
c374782436
Windows: replace insecure wcscpy/wcscat/strcpy runtime functions with secure equivalents
...
This fixed failure to build driver for ARM64 with latest VS 2019
2021-07-13 22:08:02 +02:00
Mounir IDRASSI
9881744c95
Windows: Add support for ARM64 platform (e.g. Microsoft Surface Pro X). System encryption still not implemented on ARM64
2021-01-02 01:16:31 +01:00
Mounir IDRASSI
e97114e7a0
Windows: support RAM encryption only if t1ha2 algorithm self test succeeds
2020-06-21 00:27:22 +02:00
alt3r 3go
0364a36f84
Linux: fix NOASM compilation ( #563 ) ( #568 )
...
Signed-off-by: alt3r 3go <alt3r.3go@protonmail.com >
2019-12-09 17:43:33 +01:00
Mounir IDRASSI
6b10f88e40
Fix build error of UEFI bootloader caused by latest changes that introduced ChaCha20 and T1HA algorithms and which are not present nor used in UEFI bootloader
2019-09-23 00:07:15 +02:00
Mounir IDRASSI
321715202a
Windows: Generalize RAM encryption for keys to VeraCrypt binaries, especially Format and Expander
2019-03-02 10:23:39 +01:00
Mounir IDRASSI
3d6032d69e
Windows: better debug messages for VcProtectKeys and VcUnprotectKeys functions
2019-03-01 00:35:47 +01:00
Mounir IDRASSI
954bfd45d0
Windows Driver: Implement RAM encryption for cached passwords
2019-03-01 00:35:40 +01:00
Mounir IDRASSI
0391b8e550
Windows: Add some logs in functions for RAM encryption
2019-03-01 00:35:27 +01:00
Mounir IDRASSI
cf48b532b4
Windows: Implement RAM encryption for keys on 64-bit machines using ChaCha12 cipher and t1ha non-cryptographic fast hash ( https://github.com/leo-yuriev/t1ha )
2019-03-01 00:35:13 +01:00
Mounir IDRASSI
29b749bdd9
Windows: rename IsCpuRngSupport to IsCpuRngSupported for clarity and use it in Mount.c
2019-02-15 00:17:11 +01:00
Mounir IDRASSI
adf97533d3
Windows: Set CpuRngDisabled variable to TRUE for clarity even if it will be set to TRUE anyway by default through EnableCpuRng calls
2019-02-15 00:17:03 +01:00
Mounir IDRASSI
97ccbaf0a3
Fix typo in CPU RNG detection condition (Github issue #417 )
2019-02-10 17:28:38 +01:00
Mounir IDRASSI
e5b9cee868
Windows: Add option to enable use of CPU RDRAND/RDSEED as source of entropy which is now disabled by default
2019-02-08 01:50:03 +01:00
Mounir IDRASSI
ee0a2659da
Windows driver: remove volumes master keys from CRYPTO_INFO since they are not needed after their key schedule is created
2019-01-21 00:45:31 +01:00
Mounir IDRASSI
652e989d23
Windows Security: Add new entry point in driver that allows emergency 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.
2019-01-09 00:30:12 +01:00
Mounir IDRASSI
7df9724e20
Crypto: Add support for 5 new cascades of cipher algorithms (Camellia-Kuznyechik, Camellia-Serpent, Kuznyechik-AES, Kuznyechik-Serpent-Camellia and Kuznyechik-Twofish)
2018-03-27 16:15:57 +02:00
Mounir IDRASSI
f53eb8e260
SIMD speed optimization for Kuznyechik cipher implementation (up to 2x speedup). Based on https://github.com/aprelev/libgost15 .
2017-11-27 16:16:35 +01:00
Mounir IDRASSI
ff871511af
Windows: reduce size of MBR bootloader by removing unused functions in each build type.
2017-07-22 00:30:19 +02:00
Mounir IDRASSI
88cc8a00f4
Windows: correctly handle SEH exceptions during self-tests in order to disable CPU extended features in such case.
2017-07-04 12:28:17 +02:00
Mounir IDRASSI
0ebc26e125
Update IDRIX copyright year
2017-06-23 22:15:59 +02:00
Mounir IDRASSI
70097ecfe5
Crypto: Add optimized Camellia assembly implementation for x86_64 based on work by Jussi Kivilinna ( https://github.com/jkivilin/supercop-blockciphers ). This improve speed by a factor of 2.5 when AES-NI supported by CPU and by 30% if AES-NI not supported.
2017-06-21 01:39:55 +02:00
Mounir IDRASSI
e831198b3b
Windows: Fix Streebog not recognized by /hash command line switch but making hash names matching more generic.
2017-01-12 09:42:54 +01:00
Mounir IDRASSI
5493de11d5
Windows: Enable Twofish optimized 64-bit assembly for UEFI bootloader since a pre-compiled object file was included to its build system.
2016-12-26 00:00:05 +01:00
Mounir IDRASSI
a0eadbd660
Windows: Don't use Twofish x64 assembly implementation for UEFI bootloader (for now, yasm is not integrated in EDKII framework).
2016-12-07 12:36:08 +01:00
Mounir IDRASSI
263abeee3a
Crypto: Add optimized Twofish assembly implementation for x86_64.
2016-12-07 12:36:04 +01:00
Mounir IDRASSI
5547a605bd
Windows EFI: don't use optimized Serpent implementation for EFI bootloader because lack of C++ support in EDKII framework
2016-10-17 18:40:26 +02:00
Mounir IDRASSI
e5a9e9239b
Crypto: Use SIMD optimized Serpent implementation from Botan. 2.5x speed gain factor. Update credits and copyrights notice.
2016-10-17 18:40:23 +02:00
Mounir IDRASSI
b65eabe23d
Add test vectors for Kuznyechik and GOST89 (the later is deprecated)
2016-10-17 18:40:16 +02:00
Mounir IDRASSI
d18ecc1a37
Crypto: deprecate GOST89 so that it can't be used to create new volumes. Keep only for existing volumes.
2016-10-17 18:40:15 +02:00
Mounir IDRASSI
2780ac962e
Linux: fix various compilation issues under Linux.
2016-08-17 00:08:18 +02:00