The working auth USB was prepared with:
DcsCfg.dcs -rnd 2 -ds <usbno> -srw 1
DcsCfg.dcs -ds <usbno> -srm 1
DcsCfg.dcs -pf gpt_enc -sra 0 -ds <usbno></usbno></usbno></usbno>
Trying to use gpt_hid with -sra returned:
GPT has to be encrypted
After using gpt_enc with -sra, DcsBoot.efi accepted the H_OS password and booted H_OS.
Question:
My original goal is classic plausible deniability: one VeraCrypt/DCS boot prompt where:
decoy password boots normal/decoy Windows
hidden password boots H_OS
Is that possible with this EFI/GPT manual DCS setup?
If yes, is the correct next step to VeraCrypt system-encrypt the normal/decoy Windows first, then add its encrypted GPT/header/auth data to the same DCS security-region USB as another slot?
Which DcsCfg commands should be used for the decoy OS side, and which files should be used for the decoy slot?
I already have:
full Rescuezilla image of the internal disk
full-device image of both working authorization USBs
I do not want to continue writing to disk blindly.
Thank you!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Yes, the EFI DCS mechanism can technically support this: one DCS prompt can accept either the hidden OS password or the decoy OS password, provided both OS entries have their own encrypted DCS/GPT package in separate security region slots.
Your current result is expected. A plain decoy Windows installation can't be accepted by the DCS prompt because there is no system encryption header for DCS to test. Also, gpt_hid being rejected with GPT has to be encrypted means it isn't the encrypted package to add with -sra. Use the encrypted package that already boots H_OS.
The decoy side must be created only after decoy Windows has been encrypted and the sector-62 system encryption header exists. At a high level:
Keep full sector level backups of the internal disk and authorization USB.
Boot the decoy Windows installation.
Encrypt the decoy Windows installation.
From EFI shell, capture the decoy GPT/package from the encrypted decoy disk:
DcsCfg.dcs -dl d
DcsCfg.dcs -ds <osdisk> -pf gpt_decoy_enc -ps
DcsCfg.dcs -aa -pf gpt_decoy_enc -pe</osdisk>
Rebuild the authorization USB with two security-region slots:
DcsCfg.dcs -rnd 2 -ds <usb> -srw 2
DcsCfg.dcs -ds <usb> -srm 2
DcsCfg.dcs -ds <usb> -pf <existing_encrypted_h_os_package> -sra 0
DcsCfg.dcs -ds <usb> -pf gpt_decoy_enc -sra 1</usb></existing_encrypted_h_os_package></usb></usb></usb>
Use the decoy password/PIM/hash when running -pe for gpt_decoy_enc. If hidden and decoy use different PIM or hash settings, configure DcsProp so DCS asks for them or use matching settings.
Don't blindly apply -phide to the decoy package. The correct GPT view depends on the exact disk layout. If the hidden OS is on a separate visible partition or the layout differs from the standard DCS hidden-OS flow, the GPT view must be reviewed carefully before writing anything.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello,
I have a Windows 11 Home x64 machine using UEFI/GPT and VeraCrypt 1.26 manual DCS hidden OS flow.
Current state:
Important commands/results:
DcsProp contains:
SecRegionSearch=1
SecRegionInfoDelay=3
DcsBootForce=0
The working auth USB was prepared with:
DcsCfg.dcs -rnd 2 -ds <usbno> -srw 1
DcsCfg.dcs -ds <usbno> -srm 1
DcsCfg.dcs -pf gpt_enc -sra 0 -ds <usbno></usbno></usbno></usbno>
Trying to use gpt_hid with -sra returned:
GPT has to be encrypted
After using gpt_enc with -sra, DcsBoot.efi accepted the H_OS password and booted H_OS.
Question:
My original goal is classic plausible deniability: one VeraCrypt/DCS boot prompt where:
Is that possible with this EFI/GPT manual DCS setup?
If yes, is the correct next step to VeraCrypt system-encrypt the normal/decoy Windows first, then add its encrypted GPT/header/auth data to the same DCS security-region USB as another slot?
Which DcsCfg commands should be used for the decoy OS side, and which files should be used for the decoy slot?
I already have:
I do not want to continue writing to disk blindly.
Thank you!
Yes, the EFI DCS mechanism can technically support this: one DCS prompt can accept either the hidden OS password or the decoy OS password, provided both OS entries have their own encrypted DCS/GPT package in separate security region slots.
Your current result is expected. A plain decoy Windows installation can't be accepted by the DCS prompt because there is no system encryption header for DCS to test. Also,
gpt_hidbeing rejected withGPT has to be encryptedmeans it isn't the encrypted package to add with-sra. Use the encrypted package that already boots H_OS.The decoy side must be created only after decoy Windows has been encrypted and the sector-62 system encryption header exists. At a high level:
DcsCfg.dcs -dl d
DcsCfg.dcs -ds <osdisk> -pf gpt_decoy_enc -ps
DcsCfg.dcs -aa -pf gpt_decoy_enc -pe</osdisk>
DcsCfg.dcs -rnd 2 -ds <usb> -srw 2
DcsCfg.dcs -ds <usb> -srm 2
DcsCfg.dcs -ds <usb> -pf <existing_encrypted_h_os_package> -sra 0
DcsCfg.dcs -ds <usb> -pf gpt_decoy_enc -sra 1</usb></existing_encrypted_h_os_package></usb></usb></usb>
Use the decoy password/PIM/hash when running
-peforgpt_decoy_enc. If hidden and decoy use different PIM or hash settings, configure DcsProp so DCS asks for them or use matching settings.Don't blindly apply
-phideto the decoy package. The correct GPT view depends on the exact disk layout. If the hidden OS is on a separate visible partition or the layout differs from the standard DCS hidden-OS flow, the GPT view must be reviewed carefully before writing anything.