VeraCrypt
aboutsummaryrefslogtreecommitdiff
path: root/src/Common
AgeCommit message (Collapse)AuthorFilesLines
2023-09-03Windows: Replace legacy file/dir selection APIs with modern IFileDialog ↵Mounir IDRASSI3-190/+264
interface We remove usage of GetOpenFileNameW/GetSaveFileNameW/SHBrowseForFolderW which are deprecated by Microsoft
2023-09-03Windows: remove legacy code (XP, Vista). Simplify code since Windows 7 is ↵Mounir IDRASSI3-152/+77
now minimal OS version.
2023-09-03Windows: simpler and more robust safe dll loading combined with delay ↵Mounir IDRASSI2-627/+102
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-08-20Windows: Set minimum build target to Windows 7Mounir IDRASSI1-1/+1
2023-08-20Update zlib to latest (#1181)DLL12523-1485/+918
* Update zlib to latest * Update copyright Updated copyright of zlib.
2023-08-15Update Release Notes and set date of 1.26.5 to August 15thMounir IDRASSI1-1/+1
2023-08-14Increment version to 1.26.5. Update signed Windows drivers.Mounir IDRASSI1-2/+2
2023-08-13Windows: Implement support for mounting partially encrypted system partitionsMounir IDRASSI3-0/+13
For now, we force ReadOnly mounting for such partitions.
2023-08-13Windows: Better way to enable required privileges for FastCreate OptionsMounir IDRASSI5-8/+144
If we can set required privilege, we ask the user using UAC to enable them.
2023-08-10Windows: Fix failure creating Traveler Disk caused by outdated hardcoded ↵Mounir IDRASSI1-10/+10
value of MS certificate We also rename the variables gpbSha256CodeSignCertFingerprint and gpbSha256MSCodeSignCertFingerprint to gpbSha512CodeSignCertFingerprint and gpbSha512MSCodeSignCertFingerprint respectively to reflect the fact that they are actually SHA512 hash values and not SHA256 ones.
2023-08-06Linux: capture both stdout and stderr in popen call to avoid printing anythingMounir IDRASSI1-2/+2
If an error happens, error message will be read from popen pipe and so libpcsclite.so will not be found. This is the same outcome as when stdout is empty.
2023-08-05Security: ensure that XTS primary key is different from secondary key when ↵Mounir IDRASSI1-0/+9
creating volumes This is unlikely to happen thanks to random generator properties but we much add this check to prevent an attack described in page 3 of https://csrc.nist.gov/csrc/media/Projects/crypto-publication-review-project/documents/initial-comments/sp800-38e-initial-public-comments-2021.pdf
2023-08-05Windows: Fix false positive detection of new device insertion when clear ↵Mounir IDRASSI6-1/+73
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-07-24Update Release Notes and set date of 1.26.4 to July 24thMounir IDRASSI1-1/+1
2023-07-24Linux/macOS: Remove TrueCrypt supportMounir IDRASSI2-8/+2
2023-07-23XML Language files: remove \r from new entries as it is automatically added ↵Mounir IDRASSI1-7/+7
by code
2023-07-23Windows: Make Expander progress messages translatableMounir IDRASSI1-0/+7
2023-07-22Windows: Remove TrueCrypt support. Increment version to 1.26.4.Mounir IDRASSI15-127/+51
2023-07-18Windows: Fix compiler warningsMounir IDRASSI1-2/+1
2023-07-17Windows: Fix buffer overrun caused by bug in UpperCaseCopy functionMounir IDRASSI1-3/+3
2023-07-17Windows: Fix link error with latest libzip by adding new file ↵Mounir IDRASSI3-0/+5
zip_source_pass_to_lower_layer.c tp VS projects
2023-07-17Libzip (#1152)DLL12577-541/+1376
* Update LZMA to latest * Update Libzip Libzip updated to latest.
2023-07-16Windows: fix issue with fastCreate by requesting SE_MANAGE_VOLUME_NAME ↵Mounir IDRASSI1-26/+28
privilege before calling CreateFile This ensures that the returned handle inherits the privilege
2023-07-15Windows: enhance secure desktop handling to try to workaround Windows 11 issueMounir IDRASSI1-30/+49
Several enhancements implemented: - replace CreateThread by _beginthreadex to avoid potential issues when using C runtime - use an event to notify monitoring thread to stop instead of a volatile boolean - perform switch to the regular desktop in the main thread and not in the secure desktop thread
2023-07-02Windows: Fix regression when creating multiple keyfiles with a fixed sizeMounir IDRASSI1-3/+2
2023-07-02Renormalize 7zWindows.h from CRLF to LF line separator as intended (#1144)Jertzukka1-101/+101
2023-07-02Fix compiler type-cast warningsMounir IDRASSI2-2/+2
2023-07-02Update Release Notes with latest changes.Mounir IDRASSI1-2/+2
2023-07-01Windows: Add missing header changes needed for previous commitMounir IDRASSI1-2/+2
2023-07-01Windows: Make API formatting fallback to format.com in case of elevation. ↵Mounir IDRASSI2-53/+20
remove dead code from ExternalFormatFs We also modify UacFormatNtfs/UacFormatFs to return actual error code in case of failure
2023-07-01Windows: fix compilation warningsMounir IDRASSI1-3/+3
2023-07-01Windows: Fix formatting issue during volume creation by using /Y for ↵Mounir IDRASSI3-31/+83
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-06-30Correctly detect ARM builds when listing CPU features in headersMounir IDRASSI1-2/+2
2023-06-29EMV keyfile support: Overall code improvements and bug fixesMounir IDRASSI30-1320/+3905
2023-06-28Add EMV functionality (#1080)mmauv14-355/+1952
* 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-28Increment version to 1.26.3. Update Release NotesMounir IDRASSI1-2/+2
2023-06-28Windows: Add comboxbox to Format wizard to choose ↵Mounir IDRASSI2-0/+8
QuickFormat/FastCreate/FullFormat This required changes to internal logic and addition of new UI strings
2023-06-28Windows: Better handling of quick format for file containerMounir IDRASSI4-22/+104
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-25Windows: 100% localization of Expander UI stringsMounir IDRASSI1-0/+31
2023-06-25Windows: Better language localization support for Expander.Mounir IDRASSI1-0/+2
More work is needed to localize remaining string resources
2023-06-24Windows: Add 7zWindows.h file to Lzma project filesMounir IDRASSI4-0/+8
2023-06-23Dll125 lzma (#1120)DLL12524-1149/+2124
* Update LZMA to latest * Add missing file
2023-06-23Windows: if /fastCreateFile set, request SE_MANAGE_VOLUME_NAME privileges ↵Mounir IDRASSI2-6/+24
(credits: @xnoreq) Display a warning if request failed and allow to continue without fast creation
2023-06-23Windows: Make SetPrivilege return error if AdjustTokenPrivileges cannot ↵Mounir IDRASSI1-2/+5
adjust privileges
2023-06-20Windows: Allow selecting size unit (KB/MB/GB) for generated keyfilesMounir IDRASSI4-27/+68
This change also makes it possible to generate keyfiles larger than 1 MiB although only the first 1 MiB will be taken into account by VeraCrypt. Update strings in XML files
2023-06-06Update copyright on various filesMounir IDRASSI1-3/+3
2023-06-04Increment version to 1.26.2. Update Release NotesMounir IDRASSI1-4/+4
2023-06-02Windows: Add dropdown menu to Mount button to allow mounting without cacheMounir IDRASSI3-1/+3
2023-06-01Fix issues launching fsck via terminal on Linux (#1086)Jertzukka1-0/+1
Currently on a system without xterm or konsole (like fresh Ubuntu install) the fsck check will not launch. Added gnome-terminal as an alternative and fixed an issue where konsole will always error out as --title and --caption are no longer valid arguments. Previously the error message was simply "xterm not found", so new LangString LINUX_EX2MSG_TERMINALNOTFOUND was added to let the user knows which programs they need to get the feature working.
2023-05-28Pkcs5.c: Fix typos where SHA256 is mentionned instead of Blake2sMounir IDRASSI1-5/+5
This didn't cause any issue because SHA256_DIGESTSIZE is equal to BLAKE2S_DIGESTSIZE