Commit Graph
60 Commits
Author SHA1 Message Date
Mounir IDRASSI d26be95861 Update copyright year to 2026 2026-06-09 09:56:25 +09:00
Mounir IDRASSI 689a59cd58 Merge commit from fork
Hidden volumes are forced to quick format to avoid rewriting the hidden data area. Keep that behavior while skipping the file-container allocation shortcut that writes plaintext zero sectors at 128 MiB intervals.

The allocation shortcut remains enabled for non-hidden file containers; hidden containers now use only the encrypted formatter write path for sectors that are written.
2026-06-03 14:32:17 +09:00
Mounir IDRASSI 19b3ebc0bb Windows: fix ReFS formatting during volume creation
Mount temporary ReFS volumes as fixed media, since Windows does not support ReFS on removable media. Use FMIFS_HARDDISK for the FormatEx fallback while preserving the removable-media path for NTFS and exFAT.

Also make the FormatEx DONE-with-failure status explicit and guard against a missing callback parameter.
2026-05-30 16:50:33 +09:00
Mounir IDRASSI ce20a24aa5 Fix hidden volume size estimate for exFAT outer volumes
On Unix and macOS, the hidden volume wizard estimates the available space for non-FAT outer filesystems using statvfs(). The previous calculation used f_bsize with f_bavail, which can overstate available bytes on macOS exFAT because f_bsize may be the preferred I/O size instead of the fragment size associated with the block counts.

Use f_frsize when it is reported, fall back to f_bsize, and clamp the non-FAT estimate to the actual outer VeraCrypt data size before applying the existing 80% safety heuristic.

Also harden hidden volume creation in both the cross-platform VolumeCreator path and the Windows/common formatting path by rejecting sizes that would exceed the hidden host data area and overlap volume header space.

Fixes #1037
2026-05-27 10:28:43 +02:00
Mounir IDRASSI 2b531dd113 Windows: Add an SDK for VeraCrypt Format that allows third-party application to create volumes 2025-06-13 21:12:14 +09:00
Mounir IDRASSI 9ea5ccc4aa Windows: Enable screen protection by default to block screenshots, recordings & Windows Recall. Add configurable setting in Preferences, Installer, and MSI.
This update introduces a screen protection mechanism that leverages the Windows Display Affinity API to prevent screen capture, screen recording, and inclusion in the Windows 11 Recall feature. By default, all VeraCrypt windows, menus, and tooltips are protected. Users can enable or disable this feature through a new setting available in the application Preferences, as well as in the installer and MSI configurations.

This enhances user privacy by mitigating potential leaks of sensitive interface content.

Note: Due to a regression in Windows 11 affecting layered windows, ComboBox dropdowns cannot currently be protected by this mechanism.
2025-05-24 15:28:39 +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
Helmut K. C. Tessarek 498dff9013 refactor: use the term unmount instead of dismount (#1478)
* refactor: use UNMOUNT instead of DISMOUNT in code

This change updates the term DISMOUNT in constants to UNMOUNT.
Other occurrences (e.g. variable names) are left alone for now.

* refactor(ui): use unmount instead of dismount

This change updates the GUI text and replaces dismount with unmount.

* docs: update term dismount -> unmount

* refactor(cmdline): add unmount

This change adds an argument 'unmount' for command line usage, while
trying to deprecate the old disnount argument.
The current dismount argument/flag will still work to not introduce
a breaking change.

* docs: mention that /dismount is deprecated

This change fixes the shorthand version of the argument /unmount
It also adds back the info for /dismount and that it is deprecated.
2025-01-31 23:18:26 +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 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
Mounir IDRASSI 201d09ff5a Windows: remove legacy code (XP, Vista). Simplify code since Windows 7 is now minimal OS version. 2023-09-03 16:47:41 +02:00
Mounir IDRASSI 8c7962bda7 Windows: Better way to enable required privileges for FastCreate Options
If we can set required privilege, we ask the user using UAC to enable them.
2023-08-13 00:56:49 +02:00
Mounir IDRASSI fa6359d424 Windows: Remove TrueCrypt support. Increment version to 1.26.4. 2023-07-22 10:25:22 +02:00
Mounir IDRASSI 6267b91931 Windows: fix issue with fastCreate by requesting SE_MANAGE_VOLUME_NAME privilege before calling CreateFile
This ensures that the returned handle inherits the privilege
2023-07-16 11:08:24 +02:00
Mounir IDRASSI 7a3daa389c Windows: Make API formatting fallback to format.com in case of elevation. remove dead code from ExternalFormatFs
We also modify UacFormatNtfs/UacFormatFs to return actual error code in case of failure
2023-07-01 22:46:01 +02:00
Mounir IDRASSI 0bfed6553d Windows: Fix formatting issue during volume creation by using /Y for format.com and specifying removal parameter in FormatEx
The usage of /Y parameter in format.com simplifies the logic and makes the code robust since we don't need to send \n to the format.com process.
Specifying RemovableMedia parameter to FormatEx fixes its failure in Windows 10 and later to perform quick format. This is also more adequate since we are mounting the volume as removable media for the formatting process.
We also add better error management in order to display adequate error message to the user in case of failure
2023-07-01 15:16:46 +02:00
Mounir IDRASSI 579ce2fd31 Windows: Better handling of quick format for file container
We write a zeroed sector every 128 MiB, leaving other sectors untouched
This helps users visualize the progress of actual file creation while forcing Windows to allocate the disk space of each 128 MiB chunk immediately, otherwise, Windows would delay the allocation until we write the backup header at the end of the volume which would make the user think that the format process has stalled after progress bar reaches 100%.
2023-06-28 00:47:58 +02:00
Mounir IDRASSI bb55343f63 Windows: if /fastCreateFile set, request SE_MANAGE_VOLUME_NAME privileges (credits: @xnoreq)
Display a warning if request failed and allow to continue without fast creation
2023-06-23 00:36:07 +02:00
Mounir IDRASSI a0809fe85c Windows: check result of WriteFile and don't block if it is failing (Coverity) 2022-03-26 21:15:04 +01:00
Mounir IDRASSI 002a9a29a7 Windows: Use native Windows format program first to perform formatting since it is more reliable and only fallback to FormatEx function from fmifs.dll in case of issue. 2020-07-02 02:21:25 +02:00
Mounir IDRASSI 28c51228f8 Windows: Hide the console windows of the native Windows format tool when we call it to perform formatting 2020-07-02 02:21:16 +02:00
Mounir IDRASSI 14fa3de4b6 Windows: Fallback to Windows native formatting tool if we fail to format a volume as NTFS/exFAT/ReFS using FormatEx function from fmifs.dll 2020-06-29 00:59:54 +02:00
Mounir IDRASSI a8abe94992 Windows: Avoid displaying waiting dialog when /silent specified for "VeraCrypt Format" during creating of file container using /create switch and a filesystem other than FAT (fixes Github issue #648) 2020-06-29 00:59:39 +02:00
Mounir IDRASSI 0121dc0b81 Windows: Fix issue when RAM encryption used, AES selected and AES-NI not supported by CPU that caused the free space of newly created volumes not filled with random data even if "quick format" is not selected by user. 2020-06-21 00:27:15 +02:00
Mounir IDRASSI be1aee0034 Windows: Fix regression in Expander and Format when RAM encryption is enable that was causing volume headers to be corrupted. 2020-01-22 18:20:11 +01:00
Mounir IDRASSI f9d95ef2c8 Windows: Add switch /FastCreateFile for VeraCrypt Format.exe to speedup creation of large file container if quick format is selected. This switch comes with security issues since it will embed existing content on disk into the file container which may expose sensitive content to an attacker who has access to the file container. 2019-12-10 00:51:34 +01:00
Mounir IDRASSI 5e96a5c44c Windows: enhancements to the mechanism preserving file timestamps, especially for keyfiles. 2019-12-08 23:42:47 +01: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 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 0ebc26e125 Update IDRIX copyright year 2017-06-23 22:15:59 +02:00
Mounir IDRASSI ce2aa639f4 Windows: various fixes following Coverity analysis. 2017-06-11 17:28:22 +02:00
Mounir IDRASSI e9220590ef Windows: fix compilation error cause by extra '&&' in if statement 2017-06-02 23:09:24 +02:00
Mounir IDRASSI bc8e6fa5bd Windows: add support for ReFS on Windows 10 when creating normal volumes. 2017-05-28 00:04:30 +02:00
Mounir IDRASSI 335f17b72f Windows: in case of In-Place encryption, encrypt random data instead of existing data when filling unused space like the other cases. 2016-09-11 13:12:45 +02:00
Mounir IDRASSI 24560eae1d Windows: fill unused/reserved header areas with the result of encryption of random data instead of the encryption of zeros for better entropy of resulting random data. 2016-08-15 01:09:20 +02:00
Mounir IDRASSI b146e235f8 Windows: align buffers used for keys to avoid issues when SSE used. 2016-08-15 01:09:14 +02:00
Mounir IDRASSI 5b381ce7d7 Windows: Fix vulnerability inherited from TrueCrypt that allows an attacker to detect with high probability if a hidden volume is present. Vulnerability reported by Ivanov Alexey Mikhailovich. 2016-08-15 01:09:05 +02:00
David Foerster 11716ed2da Remove trailing whitespace 2016-05-10 22:18:34 +02:00
David Foerster fc37cc4a02 Normalize all line terminators 2016-05-10 20:20:14 +02:00
Mounir IDRASSI ae7ec4802a Windows:Fix various issues and warnings reported by static code analysis tool Coverity. 2016-02-07 02:39:43 +01:00
Mounir IDRASSI dcb8390bb2 Windows/Linux: Implement exFAT support. 2016-01-27 01:13:46 +01:00
Mounir IDRASSI bda7a1d0bd Copyright: update dates to include 2016. 2016-01-20 00:53:24 +01:00
Mounir IDRASSI 8f6c08330a Windows: Implement PIM caching, both for system encryption and for normal volumes. Add options to activate it in the Preferences and System Settings. 2015-12-21 01:19:04 +01:00
Mounir IDRASSI 90bd57fe40 Windows: Full UNICODE rewrite and implement support for UNICODE passwords. 2015-11-26 01:44:52 +01:00
Mounir IDRASSI 4d7dc3ba25 Windows: first implementation of CLI support for creating volumes. 2015-09-16 01:33:11 +02:00
Mounir IDRASSI 041024fbb9 Update license information to reflect the use of a dual license Apache 2.0 and TrueCrypt 3.0. 2015-08-06 00:04:25 +02:00
Mounir IDRASSI 6ef41abdd2 Use Pim name for internal variables instead of the old name Pin 2015-07-11 01:58:34 +02:00