VeraCrypt
VeraCrypt copied to clipboard
Allow to pause and resume volume creation
Desired behavior
When inside the wizard for creating new volumes, especially when creating large volumes or medium sized volumes on slow disks, I want to be able to pause the formatting step, then unplug the drive, attach the drive to any other computer running the latest veracrypt that also implements this feature and resume the formatting there.
Windows Bitlocker already can do this: Attach ext. HDD -> Turn on Bitlocker Enter required information like password, save the recovery key Encryption starts and a small progress window opens This window has a pause button. When pressed, the encryption progress soon stops Unplug the USB drive when write operations stopped Attach drive to different PC with Bitlocker support Enter encryption password Encryption automatically resumes
Screenshots/Mockup/Designs
Will add this when the feature is "approved" that it would be merged if someone implemented it
Additional information
A way this could be implemented: 1 ) create the volume file 2) fsync 3) Create the encryption header and fsync 4) Format a few blocks in the encrypted file container and place a status tracking file inside where the following information is persisted: desired container size in bytes, formatted bytes count. 5) The formatting should the proceed with the blocks that are after the reserved blocks where the progress is tracked. 6) Every n seconds (maybe once per minute is sufficient?) the progress should be written to the file at the beginning of the container 7) When pause button in dialog is pressed, stop writing, write the progress into the tracking file once more, fsync 8) When fsync is done, show a message "Encryption paused" 9) User unplugs drive 10) User attaches drive to same or other computer again and mounts the file container 11) Volume creation continues at the point where the user previously paused the formatting
VeraCrypt version: Latest
Operating system and version: All OSses supported by veracrypt
System type: 64 Bit