Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I guess ideally a duress code would make it seem as though regular access was given, while silently either wiping sensitive data or keeping it hidden.


The most disseminated example is TrueCrypt's hidden volumes.


Can you (or others) elaborate here?


Truecrypt is a (now discontinued) encryption program that allowed you to nest encrypted containers within one another in a way that if you provided Password1, it would open Container1, and if you provided Password2, it would open Container2.

Since the Container's full size was allocated at creation, and the size of the contents cannot be determined without the key, this gave plausible deniability. You could keep your real sensitive information in an encrypted volume, and put something that could plausibly be sensitive but that you didn't really care about someone getting in a nested volume, and when forced by the law/rubber hose to decrypt, provide the password to the volume you don't care about, and there's no way for anyone to prove that you didn't fully decrypt the contents.


Side note: TrueCrypt lives on as VeraCrypt.


But isn't it a non-trivial problem to generate plausible fake data?


You would use a 'fake' container for safe work that you don't mind revealing, while only entering your 'secret' container only when, and alway when, doing work you want to keep secret. This way. there isn't really any 'fake' data, just different data.


Truecrypt didn't generate fake date, you (the user) did. E.g. put porn on "show to thugs" partition and "Death star plans" on "true" encrypted partition.


Yeah, I know. My point is that it's hard to generate a plausible alternate dataset for something like that.

"So, the decrypted hard drive says that you used the computer exactly once to put pornography on the computer and then never use it again ..."


Poop porn? Also, besides keeping that, and starting VLC muted in the background from time to time to keep plausibility, you would use the porn tainted partition for your everyday stuff. Hacker news, etc.


    echo "Truecrypt test" > /mnt/plausible_deniability_volume/README && history -d $(history | tail -n1 | cut -d' ' -f1)


I've never used it so all I could say you can find in the documentation.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: