1
0
mirror of https://github.com/veracrypt/VeraCrypt.git synced 2025-11-11 02:58:02 -06:00
Commit Graph

245 Commits

Author SHA1 Message Date
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
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
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
lollolong
321637e0e0 Windows: disable dropdown split button in volume expander (#1389) 2024-08-05 20:52:01 +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
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
76c64d49ea Windows: Add tooltip message and help button for new option to disable memory protection
Also a dedicated page in the documentation was added for it.
2023-09-24 01:26:02 +02:00
Mounir IDRASSI
0f3ae268a4 Windows: Add setting in main UI and setup wizard to disable memory protection
This can be useful for users who need Accessibility software that may not work when memory protection is active in VeraCrypt
2023-09-20 09:39:22 +02:00
Mounir IDRASSI
b1657e88e4 Windows Security: make memory protection enabled by default. Add process mitigation (ASLR, Dynamic code, extension points)
Memory protection can be disabled using registry value "VeraCryptEnableMemoryProtection" under the key "HKLM\SYSTEM\CurrentControlSet\Services\veracrypt"
2023-09-18 00:13:52 +02:00
Mounir IDRASSI
d2f2defca9 Windows: replace CoInitialize calls with CoInitializeEx 2023-09-11 00:03:28 +02:00
Mounir IDRASSI
2a6726b00e Windows: Replace legacy file/dir selection APIs with modern IFileDialog interface
We remove usage of GetOpenFileNameW/GetSaveFileNameW/SHBrowseForFolderW which are deprecated by Microsoft
2023-09-03 23:42:41 +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
d68b9546bd Windows: simpler and more robust safe dll loading combined with delay loading thanks to Windows 7 being minimum supported version.
We also block execution on Windows versions older than Windows 7.
A lot of code was removed thanks to this.
2023-09-03 00:58:34 +02:00
Mounir IDRASSI
e8f83544ea Windows: Fix false positive detection of new device insertion when clear keys option is enable
When this option is enabled, we first build the list of currently inserted devices then we start listening to insertion events.
When a device insertion occurs, we check if this device is on our list and if yes, we ignore its insertion.
We also ignore devices whose Device ID starts with "SWD\" and "ROOT\" since these are not real devices.
2023-08-05 00:45:39 +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
17dcd73936 Windows: Don't make Mount button split button if it is for dismounting
If the currently selected item in the drive list is a mounted volume that can be dismounted, the Mount button displays "Dismount" and so we should not add the popup menu of "mount without cache" to it.
2023-07-01 09:58:36 +02:00
Mounir IDRASSI
034b64f415 EMV keyfile support: Overall code improvements and bug fixes 2023-06-29 00:06:20 +02:00
mmauv
502ab9112a Add EMV functionality (#1080)
* Add basic strcture needed for EMV implementation

* Add demo EMV functionality with C code pasted in a very dirty and unsafe way. NOT FINAL

* Refactor IccExtractor Structure

* Fix Makefile

* fix include file

* move global variables from h to c

* revert to memcpy

* fix icc data recovery functions

* Add EMV functionalities on windows

* Make EMVToken structures like SecurityToken

* Define constants instead of hard coded values

* Token structures created with inheritance

* refactor TokenKeyfile to use inherit. + polymor.

* add Token.h + Token.cpp in modules in VS2010

* Add a comment at each use of SecurityToken class or objects

* SecurityTokenKeyfilesDialog preparation

* Implemennt GetAvailableTokens in Token class on windows

* merge

* up (patching for Windows)

* foreach Token.cpp corrected

* Display EMV keyfiles on first window in graphic interface

* Add token to Windows UI

* EMVToken selection on OKButton on Linux

* Keyfile.cpp optimization

* Move getKeyfileData in the token class

* EMV::Token GetAvailableKeyfiles() base

* Move getKeyfileData in the token class on unix

* Remove test comments

* Warnings resolved

* RemoveeSecurityTokenLibraryNotInitialized exception if at least one emv token is detected

* Adding new files

* Remove old files and add the new version to the windows project

* Change make_shared to shared_ptr constructor

* IccExtractor integration working on linux

* Throwing card not EMV execption

* catch error when not EMV type in EMVToken::GetAvailableKeyfiles

* Change types to compile on windows

* list all keyfiles, security keyfiles and emv keyfiles in command line

* Change type to be coherent and remove old todo comments

* Remove todo comments

* Change indentation and resolve a bug from previous commit

* Use polymorphism for GetKeyfileData and add export option for EMVTokens on Linux

* Linux : Allow to export EMV Tokens in command lines, Windows : Disable the delete button when EMV Keyfiles are selected

* Remove SlotId from TokenInfo as it is already in Token

* Correct errors on Linux

* Disable delete option if one EMV Token is selected on Linux

* Fix bug enabling delete button if nothing is selected

* emv data used as reference then burnt

* use of normal files in linux corrected

* help updated

* help updated for export functionnality

* option EMV added to graphic interface but not yet working

* Bug fix : Allow to use multiple EMV on windows

* EMV Option added to UserPreferences

* EMV Option working for Linux

* EMV option added to Windows (not working yet)

* [NOT TESTED] EMV option for Windows

* Working EMV option on Windows

* EMV Option for data extraction working for volume creation

* EMV Option for data extraction working for Mount

* EMV Option for data extraction working for mounting favorites volumes

* EMV Option for extraction working for Changing volume password, Set Derivation Key Algorithm and Add or remove keyfile from volume

* Windows : re-checking EMV Option when getting data

* Removing error catches in the IccDataExtractor classe (It only throws error now). Changing GetPan signature to resemble the other functions signatures more

* Changing EMV errors

- Only throwing ICCExtractionException from outside of the ICC module.
- Catching all TLVExceptions and PCSCExceptions to throw the right ICCExtractionException

- Deleting APDU exceptions.

* First version of the documentation

* Adding function pointers for winscard library (but it crashes VeraCrypt)

* Debugging function pointers

* The import of the library on windows work as expected now

* Reverting EMVToken.cpp changes used to test to library import

* Searching for the System32 path instead of hard codding it

* Fixing the bug were VeraCrypt crashes if there is no readers when  "add Token files" is clicked

* Winscard library not initialized in object constructor anymore to delay it after EMVOption check

* Remove winscard lib from windows dependencies

* Properly displaying errors

* Adding a dot in Language.xml

* Catching TLVException

* Removing unused code

* Remove unusefull comments

* Trying to fix 0x1f error

* Update IccDataExtractor.cpp

* Delete History.xml

* Fix get data without get pan

* Cleanup code

* changes for linux compilation but linking not working

* error handling for linux

* erasing emv data

* Burn PAN

* Burn PAN from memory

* Uncomment selfcheck before merging master

* burn corrected

* EMV errors handling for Linux

* EMV working for Linux CLI

* Doc : Winscard Linux package and VeraCrypt versions

---------

Co-authored-by: doriandu45 <d45.poubelle@gmail.com>
Co-authored-by: red4game <redemgaiming@gmail.com>
Co-authored-by: Brice.Namy <brice.namy@insa-rennes.fr>
Co-authored-by: vocthor <pieceo108@gmail.com>
Co-authored-by: vocthor <67202139+vocthor@users.noreply.github.com>
Co-authored-by: Andrei COCAN <andrei.cocan@insa-rennes.fr>
Co-authored-by: AndreiCocan <95496161+AndreiCocan@users.noreply.github.com>
Co-authored-by: francoisLEROUX <francois3443@gmail.com>
2023-06-28 22:51:43 +02:00
Mounir IDRASSI
5e4e2e0483 Windows: Add dropdown menu to Mount button to allow mounting without cache 2023-06-02 09:39:14 +02:00
Mounir IDRASSI
762065917f Windows: Add various checks to address Coverity reported issues. 2022-03-26 21:15:11 +01: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
302dc37fb9 Windows: Make Travel Disk contains 32-bit and arm64 binaries when VeraCrypt installed using MSI 2022-02-10 01:20:25 +01:00
Mounir IDRASSI
ebb67499f1 Windows: Fix failure to create Traveler Disk when VeraCrypt is installed using MSI 2022-02-02 01:23:34 +01:00
Mounir IDRASSI
9b88625d97 Windows: Make MSI installer compatible with System Encryption by leveraging VeraCrypt service capabilities 2022-02-01 23:32:55 +01:00
Mounir IDRASSI
622aaf4ef2 Windows: Try to workaround Windows Updates issues by fixing of bootloader and SetupConfig.ini when session logged in/unlocked or system resumes 2021-11-29 22:24:04 +01:00
Mounir IDRASSI
66acbbf6a3 Windows: Copy ARM64 binaries when creating Traveler Disk and when VeraCrypt is installed 2021-07-14 14:07:15 +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
bd78c9d0af Windows: Fix issue in UI for configuration autofix mechanism of bootloader 2020-08-03 18:14:22 +02:00
Mounir IDRASSI
75e11add78 Windows: Fix UI for blocking TRIM in system encryption not working in MBR boot mode 2020-08-02 18:48:48 +02:00
Mounir IDRASSI
f9782fb3f6 Windows: Implement detection of Hibernate and Fast Startup and disable them if RAM encryption is activated. 2020-07-21 12:47:20 +02:00
Mounir IDRASSI
afc11eca51 Windows: Add UI options to control the behavior of automatic bootloader fixing when System Encryption used. 2020-07-08 02:16:06 +02:00
Mounir IDRASSI
ff391d9a6a Windows: Support direct password drag-n-drop from external applications (e.g. KeePass) which is more secure than using clipboard. 2020-07-06 18:18:47 +02:00
Mounir IDRASSI
ac3cccdd21 Windows: Replace GetSystemInfo calls by more reliable function to get number of CPUs active on the PC. 2020-07-02 02:20:50 +02:00
Mounir IDRASSI
b9099d01c2 Windows: Fix failure to detect suspension of machine that caused mounted volume not be dismount even if "Entering power saving mode" is checked in Preferences. This fix implements compatibility with Windows 10 Modern Standby and Windows 8.1 Connected Standby power model. 2020-06-28 01:06:22 +02:00
Mounir IDRASSI
b270a453aa Windows: remove unused code targeting Windows 2000. 2020-06-28 01:06:14 +02:00
Mounir IDRASSI
0e3f4c40e3 Windows: remove duplicated function to detect AES-NI support in CPU 2020-06-19 01:28:07 +02:00
Mounir IDRASSI
6550030540 Windows: Fix keyfiles path passed as CLI argument and set as default not always cleared from RAM when VeraCrypt exits 2020-03-10 10:32:38 +01:00
Mounir IDRASSI
c1d670fd75 Windows: Fix warnings reported by Coverity static code analyzer 2020-02-10 02:23:18 +01:00
Mounir IDRASSI
55831cad22 Windows: Support notifying WAITFOR.EXE Windows command when VeraCrypt.exe exits if /q was specified in CLI. This done using the new switch "/signalExit" who must have a string parameter that must be the same as the one that will be specified for WAITFOR.EXE command. 2020-01-21 01:46:18 +01:00
Mounir IDRASSI
b6c290e4fd Windows: Fix failure of Screen Readers (Accessibility support) to reader UI by disabling newly introduced memory protection by default and adding a CLI switch (/protectMemory) to enable it when needed. This fixes issue https://github.com/veracrypt/VeraCrypt/issues/536 2020-01-21 01:46:11 +01:00
Mounir IDRASSI
1fd097c666 Windows: check "TrueCrypt Mode" in password dialog when mounting a file container with .tc extension 2019-12-13 00:08:17 +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
b233e6776b Windows: Don't write extra 0x00 byte at the end of DcsProp file when modifying it through UI 2019-11-28 01:39:48 +01:00
Mounir IDRASSI
9741c9209d Windows: Add new registry flags for SystemFavoritesService to control updating of EFI BIOS boot menu on shutdown. This will help better manage multi-boot scenarios where we should not mess up with boot order (e.g. grub2 case) 2019-11-22 00:11:55 +01:00
csware
34a9e118b6 Windows: Allow system encrypted devices to be mounted from WindowsPE - even if changing the keyboard layout failed (#539)
When my system broke and I had to use WindowsPE to rescue some files the password dialog always closed immediately. There was no chance to mount the system device using the GUI. It took me a while to realize that I could try using the CLI by passing the password as a parameter (which might not be so obvious for not advanced users).

Signed-off-by: Sven Strickroth <email@cs-ware.de>
2019-11-12 22:02:57 +01:00
Mounir IDRASSI
ac684352e6 Windows: use strcmp to compare effective content of std::string since == operator may return false if one of the strins has an extra \0 at the end. 2019-10-27 13:10:18 +01:00
Mounir IDRASSI
b1b692d4a3 Windows: Only update boot configuration on disk if the user actually changed something in the UI 2019-10-27 02:05:00 +02:00