veracrypt / VeraCrypt

Disk encryption with strong security based on TrueCrypt
https://www.veracrypt.fr
Other
6.92k stars 947 forks source link

Partition not plug-and-play under Windows limits Veracrypt software raid potential #577

Open chscherrer opened 4 years ago

chscherrer commented 4 years ago

Veracrypt shows perfectly useful with encrypted devices or partitions formated winbtrfs, however, to unleash btrfs software raid1 potential its necessary to show mounted devices or partition as PNP device which Veracrypt unfortunately doesn't.

I thought this to be an issue within winbtrfs rather than Veracrypt - however, I find maharmstone's explanation quite convincing. Do you share his view?

guillaumedsde commented 4 years ago

This is just an idea (untested) but perhaps a temporary "workaround" might be create a BTRS RAID1 volume and then encrypt it with veracrypt, although it won't be possible to add more volumes to the RAID1 due to this issue, at least, it might be possible to get RAID1 up and running

edit: understood why this is silly, although point stand, having an encrypted container on the btrfs filesystem will probably give the desired result of redundancy and encryption

maharmstone commented 4 years ago

To elaborate, as I understand it Veracrypt calls IoCreateDevice to create a block device, then manually announces it to mountmgr in order for it to be given a drive letter.

The "proper" way to do it, i.e. the way WinBtrfs does it, is as follows:

This is a good deal more complicated than what you're doing at present, but in my experience will fix a number of minor bugs and inconsistencies that will have manifested themselves. It's essentially what disk.sys et al. are doing, except you create your own bus rather than relying on the IDE bus, or what have you.

andreas-becker commented 4 years ago

@maharmstone may it be possible for you to implement your suggestion and create a pull request? At the moment only Mounir is contributing at his free time and he would really appreciate your help.

MakiseKurisu commented 4 years ago

I'm trying to see if I can help with this issue. However, I'm having difficulties to build the project. This is specifically related to Boot project for now, with the following build log:

1>------ Build started: Project: Boot, Configuration: Release Win32 ------ 1>Build started 3/21/2020 6:32:44 PM. 1>Build: 1> Microsoft (R) C/C++ Optimizing Compiler Version 8.00c
1> Copyright (c) Microsoft Corp 1984-1993. All rights reserved. 1>
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.MakeFile.Targets(38,5): warning MSB5021: "cmd" and its child processes are being terminated in order to cancel the build. 1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.MakeFile.Targets(38,5): error MSB6003: The specified task executable "cmd.exe" could not be run. Access is denied 1> 1>Build FAILED. 1> 1>Time Elapsed 00:00:24.91 Build has been canceled.

The build was stucked after printing cl.exe's version info, so I have to cancel the build. I'd like to see if someone can give me some help here. I'm running on Windows Server 2019, with the rest of the environment set up according to README.md.

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

Zero3K commented 3 years ago

bump

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

guillaumedsde commented 3 years ago

bump