1
0
mirror of https://github.com/veracrypt/VeraCrypt.git synced 2025-12-30 18:39:45 -06:00
Commit Graph

836 Commits

Author SHA1 Message Date
Mounir IDRASSI
fcc6302e61 Windows: Update LZMA SDK to version 24.09 2025-01-01 10:37:18 +01:00
Mounir IDRASSI
4e85009f57 Windows: use modern API to gather system entropy for random generation instead of obsolete that were not working
This commit increases randomness quality by using more dynamic/varied sources of entropy.
PDH-based disk and network statistics collection in now added to random pool

- Introduced `GetDiskStatistics` to gather disk read/write performance data using PDH API.
- Introduced `GetNetworkStatistics` to gather network send/receive performance data using PDH API.
- Integrated high-resolution timestamps and random intervals to improve entropy in collected data.
- Updated `SlowPoll` function to utilize PDH-based disk and network statistics.
- Removed obsolete NetAPI32-based network statistics collection.
2024-12-27 00:56:50 +01:00
Mounir IDRASSI
d9e17522ee Windows: Update Windows version check on startup to require Win10 1809 or later
- Add IsWin10BuildAtLeast() helper function to check Windows 10 build numbers
- Replace direct build number comparison with IsWin10BuildAtLeast() for ReflectDrivers check
- Update error message to be more specific about Windows version requirement
2024-12-25 17:00:37 +01:00
Mounir IDRASSI
81f0adcc35 Windows Driver: set Windows 10 version 1809 as minimum.
To support this, we had to replace ExAllocatePool2 by ExAllocatePoolUninitialized.
2024-12-25 16:18:19 +01:00
Mounir IDRASSI
c98fc900d8 Windows Setup: Fix the implementation of backup/restore of file permission during update 2024-11-27 01:04:55 +01:00
Mounir IDRASSI
0c5fcf2286 Windows Setup: Fix "Access Denied" issue during VeraCrypt update after a Windows upgrade
During a Windows upgrade, ownership of veracrypt.sys is set to TrustedInstaller, preventing VeraCrypt from accessing the file during an update.

This commit resolves the issue by temporarily taking ownership of the file to rename it, allowing the new file to be copied. The setup process now obtains additional privileges for this operation, which are properly dropped once the file copying is complete.
2024-11-25 00:05:50 +01:00
Mounir IDRASSI
8ad9e7d769 Set 1.26.17 release date to November 24th 2024-11-24 14:04:21 +01:00
Mounir IDRASSI
453ff2880e Windows Driver: Make max work items count configurable. Increase default to 1024. Queue write IRPs.
- Made the maximum work items count configurable to allow flexibility based on system needs.
  - Increased the default value of max work items count to 1024 to better handle high-throughput scenarios.
  - Queue write IRPs in system worker thread to avoid potential deadlocks in write scenarios.
2024-11-23 17:44:48 +01:00
Mounir IDRASSI
b85a2df224 Windows driver: use correct WDM type. Increment version to 1.26.17 2024-11-20 00:21:30 +01:00
Mounir IDRASSI
f9b9a9ca9f Increment version to 1.26.16. Update Release Notes. Update signed Windows drivers. 2024-11-18 00:04:26 +01:00
Mounir IDRASSI
93868acfdd Windows Driver: Use system functions directly instead of dynamic loading since we are targeting Windows 10 2024-11-17 21:37:16 +01:00
Mounir IDRASSI
a588b20975 Windows: Fix driver crash caused by 32-bit leftover code in derive_key_blake2s function 2024-11-16 17:38:25 +01:00
Mounir IDRASSI
9c9870b103 Windows: Avoid modifying BootArguments structure and use __unaligned keyword to inform compiler that pointer is unaligned.
This avoids issues with existing bootloaders
2024-11-16 01:50:06 +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
a69cba98ec Windows: Fix regression in self-test of hash algorithms that caused them to fail 2024-11-16 00:51:32 +01:00
Mounir IDRASSI
62e956942a Windows: remove VS 2019 solution and project files since we migrated to VS 2022. 2024-11-15 18:36:19 +01:00
Mounir IDRASSI
6d1ad12755 Windows: move main project files and solution from VS 2010 to VS 2022. Delete unused files. 2024-11-15 15:50:32 +01:00
Mounir IDRASSI
ad39040fdc Windows: Fix warning when building Setup and Portable. No file elevation is used for them. 2024-11-15 15:47:28 +01:00
Mounir IDRASSI
214fbb5cbd Windows: Upgrade VS 2019 solution/projects to VS 2022. Remove Win32 configuration for driver and binaries.
Only setup remains 32-bit to be compatible with both x64 and arm64 Windows.
2024-11-15 14:22:45 +01:00
Mounir IDRASSI
de9e472d10 Windows: Fix build of MBR bootloader 2024-11-15 11:16:19 +01:00
Mounir IDRASSI
21e61c8ded Windows: Fix warning in driver build by make get_pkcs5_iteration_count have a single return statement at the end 2024-11-15 11:15:41 +01:00
Mounir IDRASSI
fc4a544180 Windows: Use VS builtin __fastfail intrinsic for fatal exception instead of affecting NULL pointer 2024-11-15 00:42:19 +01:00
Mounir IDRASSI
43ad4f93eb Windows: Fix various compiler warnings 2024-11-15 00:41:07 +01:00
Mounir IDRASSI
75152f7dc0 Use adequate const qualifiers for pbkdf2 functions arguments 2024-11-13 09:28:32 +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
ec4b44c238 Windows: Use BCryptGenRandom instead of deprecated CryptGenRandom to generate secure random bytes 2024-11-13 02:04:13 +01:00
Mounir IDRASSI
68e2e01745 Windows: Fix EFI configuration editor various issues
We always using Unicode functions to interact with UI. We convert UTF8 string to UTF16 and vis-versa.
Overwrite input string instead of using resize that caused old test to remain.
Fix case of readOnly by using correct message.
change position of OK/cancel button to match other dialogs.
Activate translation on this dialog.
2024-09-19 00:36:31 +02:00
Mounir IDRASSI
380850787e Windows: Simplify error message related to IsEfiBoot since it always fail with ERROR_INVALID_FUNCTION
Proposed by @kriegste on https://github.com/veracrypt/VeraCrypt/issues/360
2024-09-17 18:25:52 +02:00
Mounir IDRASSI
eb0eec7b39 Windows: Fix failed EFI detection on some PCs where BootOrder variable is not defined.
we now report that EFI is not support only when GetFirmwareEnvironmentVariable fails with error ERROR_INVALID_FUNCTION.

Proposed by @kriegste on https://github.com/veracrypt/VeraCrypt/issues/360
2024-09-16 23:11:37 +02:00
Mounir IDRASSI
01dfd0e72b Linux/macOS: Fix missing define that was causing compilation error 2024-09-10 23:32:42 +02:00
Mounir IDRASSI
4a8f068ba5 Windows: Add support for x86 and x64 build for driver and binaries using Visual Studio 2019
We also enable Control Flow Guard and Spectre Mitigation
2024-09-08 17:14:31 +02:00
Mounir IDRASSI
0970a98c84 Windows: Fix bug in disabling of Windows privileges, they were completely removed instead
This started to cause issues after latest changes to disable privileges when they are no more needed.
Because of the bug, the privileges could not be enabled again because they were wrongly removed.
2024-09-02 14:08:26 +02:00
Mounir IDRASSI
f024653450 Windows: Fix truncated displayed error message 2024-09-02 14:02:46 +02:00
Mounir IDRASSI
71dc18aaa2 Windows: Fix MSI not installing all new documentation file. Remove old files left from old versions. Increment version to 1.26.15. 2024-09-01 17:20:01 +02:00
Mounir IDRASSI
af734f41df Increment version to 1.26.14. Set release date to August 25th. 2024-08-25 09:55:44 +02:00
Mounir IDRASSI
380ca35c6d Windows: Fix regression causing crash when a wrong password is used when changing password of volumes 2024-08-24 18:02:16 +02:00
Mounir IDRASSI
695d1735a0 Windows: Only load valid XML language files (Language.xx.xml or Language.xx-yy.xml format) 2024-08-21 09:24:57 +02:00
Mounir IDRASSI
2ea486e856 Update Release Notes. Set release date to August 17th. 2024-08-17 15:14:33 +02:00
Mounir IDRASSI
17ad739405 Windows: better handling of reading EFI variable to display help error messages in case of failure.
Now we accept the possibility of BootOrder EFI variable to be empty in order to try to solve issues on some PCs.
2024-08-14 10:58:52 +02:00
Mounir IDRASSI
c167799506 Windows: fix build failure for x86/x64 with newer Visual Studio that use Windows 10/11 SDK
We set Windows 8 as minimum API support fir Visual Studio 2015 and newer.

Closes #1398
2024-08-13 15:12:21 +02:00
Mounir IDRASSI
34ecb3a74d Fix another typo of "CPLC" is language files including English one. 2024-08-11 04:31:19 +02:00
Mounir IDRASSI
81f7d9997c Revert changes mistakenly included in previous commit 2024-08-11 01:24:14 +02:00
Mounir IDRASSI
d0fdc29d25 Fix typo of "CPLC" is language files including English one. 2024-08-11 01:22:24 +02:00
Mounir IDRASSI
715380afbb Update mount failure error messages to mention removal of TrueCrypt support and old algorithms. 2024-08-05 21:42:31 +02:00
Mounir IDRASSI
29c78490ef Update Release Notes. Set release date to August 4th. 2024-08-04 11:27:49 +02:00
Mounir IDRASSI
c8b9a73916 Windows: Fix rare cases being stuck in Secure Desktop after it is used for password entry
Cause seems to be IME as documented in KeePass project (https://keepass.info/help/kb/sec_desk.html#ime). We use the same approach as KeePass to disable IME in Secure Desktop.
This commit also add few changes:
  - we switch to secure desktop only if SetThreadDesktop succeeds
  - we call SwitchDesktop to switch to original desktop only if we actually succeeded in displaying secure desktop
2024-08-04 10:25:12 +02:00
Mounir IDRASSI
86bc9b56f0 Increment version to 1.26.13. Update release notes. Update signed Windows drivers. 2024-08-02 00:55:32 +02:00
Mounir IDRASSI
ed1263bf8c Implement detection of volumes with vulnerable XTS master key.
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.
2024-08-02 00:20:53 +02:00
Mounir IDRASSI
70cd0c0b1b Update CHM documentation. Use correct date of 1.26.12 in header. 2024-07-24 14:01:07 +02:00
Mounir IDRASSI
9697416919 Linux: Make the C++ code compatible with old compilers (g++ 4.4.7 on CentOS 6) 2024-06-30 01:22:05 +02:00