VeraCrypt: Free open-source disk encryption for Windows, Mac OS X, Linux
veracrypt.fr
veracrypt.fr
These days i tend to use Cryptomator[0] instead. It accomplishes what none of the others could do, which is transparent encryption across devices.
With Cryptomator, i simply create a vault somewhere in the cloud, stuff data in it, and i can access it from my laptop, phone or tablet, and not think much about it. It integrates into the normal file browsing APIs, and doesn't get in the way.
Because it does "per file" encryption, it also doesn't need to download a 20-100MB chunk from the cloud before decrypting, so it's rather fast (depending on file size of course).
Cryptomator is also open source[1], and free on the desktop, though the mobile apps costs a one time fee.
Do you have a solution for this?
[1] https://nuetzlich.net/gocryptfs/
As for how it encrypts files, there is a description here : https://docs.cryptomator.org/en/1.5/security/architecture/#f...
People complain about speed in the past : https://news.ycombinator.com/item?id=23469401
Is it usable?
I use it to store 'per file' encrypted data on Dropbox. (I also keep a restic repository on there)
I don't want to rely on having a server running at home, which i can then connect to via VPN, in order to download encrypted stuff from the cloud. With Cryptomator i can simply download from the cloud and decrypt locally.
Round-Sync for Android [0] is an app wrapper for rclone. I use that to upload my photos via plain SSH.
Back then there was no automated way to sync plugins so we installed syncthing and told all users to install it too.
We put like 50gigabytes worth of addons on syncthing and the users were so much happier because since 50+ people were using this syncthing connection, everyone could download with full speed from the others as in contrast to the 100mbit/sec bandwith of the HTTP server we formerly used.
And nobody had to care about checking versions anymore, the syncthing folder was directly synced into the Arma3 plugin directory
Mobeus exists, but doesn’t integrate into the files app, and uses a lot of battery.
I also used Resilio Sync for years, but it appears to have more or less died out.
So when it came to finding a replacement I settled on using cloud native for synchronization, and simply put encryption on top, and for that, Cryptomator is great.
One day I forced myself to actually configure it and, boy, what a wonderful product it is.
It takes some time before you have the eureka moment but then the flexibility of the tool us incredible.
It is hard to keep track of the links so I wrote https://github.com/wsw70/syncthing-map to ease the pain a little bit.
thanks for this, it was useful to me though i reflexively typed up a comment asking you be careful about truecrypt vs veracrypt as i tried to load your article[1] via tor browser.
(through no fault of your own, i am having flashbacks to documents referencing "ethereal" and "firebird" far too long -- when the wrong word is used past the change in name, many will use that as a heursistic to discount your words and data, sometimes it's cruel to those who learned english late in life but it's the only way to avoid some very dangerous errors, especially if you are moving from "the cyber" to the physical in terms of the sources you're... pulling)
(i can assure you that most stenography is best reserved for key exchange, not hiding any significant amount of data, but most users of this site are concerned with a very US-centric, legalistic threat model where no lies are told to totalitarians.)
[1] https://web.archive.org/web/20110916033048/https://keyj.emph...
Performance is great, nearly "metal" SSD speeds. I use it with a hidden partition of an external HDD, and works great too, once I got Windows to stop asking me to formally that partition.
The only feature I wish it could have is better Yubikey (and alike) integration. I can use those static passwords as an encryption key, but I'd need something better.
But how does that compare exactly, performance wise, against Bitlocker and LUKS? (assuming similar strength encryption algorithms are selected)
Veracrypt has a neat benchmark tool so you know the speed beforehand. I suppose most CPUs have native support for the popular algorithms, so the bottleneck really is the disk, not CPU itself or the software.
The principal difference is the native speed of raw IO - NVmEs are an order of magnitude faster than SSDs. TC/VC don't use hardware acceleration, so all the encryption work falls on the CPU. On a machine with a reasonably modern CPU, TC/VC run nearly at drive's native speed.
I assume by that you mean it doesn't use the AES instructions? That's odd to me.
On the other hand, trying to backdoor XOR would give you an astronomically higher amount of white noise. Finding important data mixed in with all the other things a computer XORs would be much harder.
If the attacker has access to your computer, you've already lost. If the attacker built your computer, it was never even a fight.
Given two USB drives, one encrypted with BitLocker and another with TC or VC, chances of master key recovery by Microsoft are definitely not the same.
I don't think those two sentences hold water when put together. In practice, if your risk is master key leakage and theft of the encrypted data by microsoft, you shouldn't be using windows. If you suspect that, MS can have a kernel mode driver masquerading as anything else, and it can just siphon your master key whenever you enter it.
I like VC for the portability of the encrypted .tc files. Keep all my backups as tc files, and recovered from more than one failure using them.
Once had an issue where dropbox corrupted the duplicates, so dont use dropbox anymore.
just gonna drop that like that aint a $10k+ implication, gonna need a src or ref thanks
unless you mean by 3letters, which dont exactly give their backdoors to randoms.
randoms aint coming across 3letter's backdoors, not active/modern ones anyway
it's probably more than a $10k implication..
The TPM acts as a second factor (assume PIN is required); if you pulled the disk out and placed it another PC you cannot brute force the plaintext password, even using the $5 wrench method.
I understand the XKCD reference but I don't understand why it does not apply to this case. Does that mean that you can't move your disk to a new machine of yours?
As for the second question, I suppose it depends on the implementation; I suspect there is a way to migrate and transfer the keys for the device for the person who already has access to all of the factors.
If I use a Yubikey and LUKS for example, I can re-use the Yubikey if I move the disk to another machine. I'm not sure how this would work for integrated TPMs and Bitlocker (I don't use Windows), but I believe they have recovery key-files you could use.
And if there is a procedure to let me move the disk to a new machine, somebody can wrench me until I perform that procedure for them.
If you want to you can just not save the recovery password. In that case I guess they'll just beat you to death with that $5 wrench.
I think the implication is that they (the attacker) don't have the machine, or you, or whatever "thing" you have/use to unlock it.
If someone stole your disk, or took a copy of it, they can't offline attack it.
An external hardware device seems preferable for this scenario; if someone steals/snatches your laptop, they won't have your Yubikey or whatever.
In any scenario where the wrenching is an option, I suspect all bets are off, but if wrenching is a real risk, and whatever you're protecting is worth taking a wrenching for (as opposed to just giving it up at the threat of a wrenching), there should probably be some tougher protections which make it clear that the wrenching will gain an attacker nothing, and hopefully save you from it to begin with.
I'm not sure what or how that would work.
I sincerely hope that the guy with the $5 wrench knows this and don't continue hitting until he has the key...
Is file corruption still an issue?
Never had problems. FWIW, I'm using AES/256 bit keys/HMAC SHA-512 on all of my volumes.
I use static password plus a keyfile. Since the keyfile can be anything you can use something innocent looking which you just have laying around on the machine, like a picture.
This works well on a file you decrypt often. What can happen with infrequently used files is that many years pass, you upgrade computers and/or operating systems, remember to copy your encrypted volumes. When you try to decrypt your volume, you remember the passcode, but forget which "innocuous" file you used as a keyfile, even after you boot up your old computer you had handed down to your cousin.
You can use any file, even something you can quickly download from the Internet. Like the Windows 3.11 file manager icon or your favorite Linux torrent. Only the first 1024 bytes are used so be careful with file types which have a big header.
There are better ways, often the the key can be stored on a hardware token(yubi key etc... ). which presumably offers additional security guarantees around copying the key. but a keydrive is a very easy way to start.
Off tangent(I doubt you will be using openbsd), but the openbsd encryption layer offers some nice features around using keydrives, http://www.openbsd.org/faq/faq14.html#softraidFDE
I’m not interested in anybody’s guess. What happened? WTF actually happened?
https://law.justia.com/cases/federal/appellate-courts/ca2/20...
The book Mastermind goes into this a bit.
So do some old web posts straight from Paul himself, if you know where and if they are still up.
Just a quick glimpse at the Wikipedia page actually talks about 5 drugs that seem to me like over the counter medicine. What's kinda interesting to me skimming this and looking at the references is that the assassins and a lot of the operations were Israelis and the whole thing was run from Tel Aviv, but there's zero reference to any of those people. They are just called the Israeli business partners.
Some cops tried it in my country as well. These cops recieved a middle finger from the court.
Edit: The courts called it 'provocation by police' and everyone was freed.
Time served was 25 years!?!
> Le Roux was arrested on 26 September 2012 for conspiracy to import narcotics into the United States, and agreed to cooperate with authorities in exchange for a lesser sentence and immunity to any crimes he might admit to later. He subsequently admitted to arranging or participating in seven murders, carried out as part of an extensive illegal business empire.
I’m sad because this is great and the answer to much but stands no chance when you move past the “single user who is IT literate” user group.
It's possible that whatever vulnerability the TrueCrypt developers were alluding to still lurks in the VeraCrypt codebase, but the chances seem pretty low. VeraCrypt uses much stronger encryption methods, it has addressed all the issues raised in the original TrueCrypt audit as well as a separate audit of its own code, and the latest version isn't even backward-compatible with TrueCrypt volumes.
The obvious recommendation back then was LUKS. And even if there were no alternatives they're not going to recommend you a proprietary solution with a high chance of being backdoored. They'll just say to use "other software".
Recommending BitLocker might have been a signal to hackers in the aftermath of the Snowden revelations, but IIRC the announcement also included a detailed tutorial for setting up BitLocker that was actually quite helpful to anyone whose threat model mostly concrerned thieves, corporate spies, and non-Five Eyes intelligence agencies.
Of course, it would be the binaries that are problem, if there is one. If you vet the source code and compile it yourself, there shouldn't be any issue. Note that the French government has long history of being anti-cryptography for end-consumers.
I personally wouldn't even touch Veracrypt with a long pole. But that's just my personal opinion.
Are you sure? I thought it could open them in read-only mode. Here's a 2023 post suggesting it's supposed to still be able to open TC 6.0+ files, though the user in question is having trouble: https://sourceforge.net/p/veracrypt/discussion/technical/thr...
Since then truecrypt was carefully reviewed, some bugs were found, but no backdoors. It was forked and veracrypt is one of those forks. It has enhanced security which makes it annoying to use. For example to disconnect the drive one needs to enter admin's password. That's done because veracrypt doesn't store it. On one hand it makes it more secure, on the other entering passwords many times in public makes it less.
What? For me, VeraCrypt can mount and unmount volumes (on Windows 11) without ever prompting for UAC. It could also do the same on my other, Windows 10 PC.
I believe they incorporated the recommendations from TrueCrypt's own audit, and then went through an additional external audit that came up clean.
That's was the time the other Truecrypt contributors learned that Paul le Roux was in federal custody[1]. Most likely they nukes encryption & gave dire warnings as a scorched earth play to avoid the possibility of an FBI-authored binary release of TrueCrypt, since Paul controlled the website and the infrastructure, IIRC.
1. Warning: linked story is a 3-part longform story that can cause 30-60m to vanish from your day. https://magazine.atavist.com/he-always-had-a-dark-side/
Comparing with Bitlocker is silly - its source is closed, and that's almost an automatic "untrustworthy" for many. It also is Windows only.
“Many” is probably overstating things relative to the full audience for Bitlocker
I never realized there was so much history - just thought the app had been orphaned for the usual mundane reasons. I've got to read that book!
Almost by definition, corporations will sell their souls to MS if that means "accountability", that means someone to blame when things go wrong. Not if, when.
Just the fact Veracrypt exists and can be used by that 0.01% is enough. It is already useful beyond expectations.
No way in hell would I recommend it to less technical people (except default settings, which works fine but offers near zero security against extremely common things like theft). Bitlocker is by far the least user-friendly OS-provided I've ever seen - it's so bad I have to assume it's being intentionally ruined.
It can create PLAIN dm-crypt, LUKS, TrueCrypt and VeraCrypt volumes.
It can unlock PLAIN dm-crypt, LUKS, TrueCrypt, VeraCrypt and Bitlocker volumes.
It also doesn't hurt if you hash it into or xor with existing randomness, it will still be as strong as the best source of entropy you have even if it's all 0's being mixed in.
Bitlocker and FireVault are very easy to use compared to VeraCrypt or LUKS, and they are much more common. So many Linux installations don't have disk encryption…
The big plus for VeraCrypt (and TrueCrypt before that), however, is that it works on Windows, macOS, and Linux. If you need an encrypted flash drive for sharing data between different systems, it's the only option that I know of. Which is unfortunate.
sudo touch /etc/udisks2/tcrypt.conf
sudo systemctl restart udisks2
and then any veracrypt volumes can be used in Nautilus or GNOME Disks similar to LUKS volumes.For those who don't know, -and this is more of the result of the EFI Boot partition scheme- before that, for MBR systems ,one can use Veracrypt to encrypt the entire System Drive - and this allowed a unique option that I have not seen anything else ever able to replicate- it enables an option that lets one hide an entire OS-
The Hidden OS option is restricted to legacy boot mode- and that's being more and more dissuaded in general- So i fear the airtightness of the Hidden-OS capability will no longer be reachable for consumers.
I had seen one effort on it - https://portswigger.net/daily-swig/russian-doll-steganograph...
and https://i.blackhat.com/eu-18/Thu-Dec-6/eu-18-Schaub-Perfectl...
However, I have since then not seen anything on this sort of capability- and no other encryption software has focused on steganography and encryption/plausible deniability capabilities to this level.
Actually, this may be a common mistake I make. On openbsd if the project says something works it will usually be simple to set up and have a nice documentation. So I then think "Well if the tiny openbsd project can do it, it must be this easy everywhere" which is not true at all. The two cases that come to mind were booting off a softraid volume(hopefully this one is fixed) and setting up a netflow source. both of which proved to be trivial on openbsd and a huge pain in the ass on linux. The other common mistake I make is to use the openbsd man pages(they are just better) on linux and wonder why nothing is working right.
I am refining an approach that allows for an OS to be hidden via a different method though. Using disk encryption with the key stored in the TPM, and by default booting into a virtualized OS with no hint that it is virtualized, unless a key combo is pressed at the boot screen to boot into the real OS - after a password is entered. Doesn't protect against everything but it can protect against a lot if deniability is the goal.
Dropbox syncs the deltas in LUKS and veracrypt disks. A change of a bit in plaintext changes the blocks that are involved, and only those blocks are updated. But most other sync tools don’t handle it properly.
That was around a decade ago. Today, one would use cryptomator, rclone, gocryptfs rtc.
There are a lot of ways to lose that though. No rsync able to run and calculate block checksums on the other machine -> no block syncing. Change a byte in a file in an encrypted volume -> it might copy-on-write and make a wholly new encrypted "file" with everything different in the final encrypted data. Etc, it depends on a bunch of stuff interacting in ways that they might have legitimate reasons to not support, particularly with security/privacy sensitive stuff.
Not sure what you're encountering, but if it's important to you there are a few ways to troubleshoot it. It might be possible to get it working.
Truecrypt was really great, and I enjoyed their take on plausible deniability, but haven’t used it since maybe 2006.
You do need to install macfuse which is effectively closed source, but SIP stays on.
The only one I'm aware of that can do it is Bitlocker, but the setup is stupidly clunky for no reason (you even have to reinstall windows to activate it - wtf).
A while back I used a tool to do it manually called sedutil but it seems to be abandoned now and no longer works with modern processors.
Because the situation is similar to Dr. House: All disks lie. An OS can't trust the quality of the encryption in modern SSDs, there is no way short of dedicated hardware and firmware reverse engineering to make sure it actually encrypts the data. And on top of that comes the issue with using the supposedly "secure" TPM for disk encryption, that in many cases can simply be sniffed on the communication bus [1].
The only way a disk encryption solution can reasonably guarantee security is if it either controls the whole stack (such as Apple's FileVault using the T2 coprocessor on Intel/built-in capabilities on M SoCs) or it does everything in ring 0 inside the OS.
Why is this the job of the OS? If we trust the SSD ourselves, it should simply accept that and proceed using the API as intended. For example, there's no reason to suspect anything wrong with the latest Samsung SSDs, is there?
I've so far not understood the purpose of the TPM here. Why can't the key be derived off a password entered during boot? It's not necessary to involve a TPM at all.
It seems wild to even consider software encryption for the whole disk at the bandwidth and iops modern SSDs are expected to deliver.
Because in the event of the crypto being only for show, people might blame the software for not warning them.
> I've so far not understood the purpose of the TPM here. Why can't the key be derived off a password entered during boot?
The general idea behind using the TPM as a crypto HSM was to provide at least a basic protection against simple disk cloning, i.e. evil-maid attacks.
> It seems wild to even consider software encryption for the whole disk at the bandwidth and iops modern SSDs are expected to deliver.
CPUs are pretty fast these days at anything crypto, as virtually all popular architectures have native AES instructions.
Has there been any equivalent audit of Veracrypt? Or should we basically assume it’s been compromised/backdoored.
How much trust do you put on VeraCrypt?
From what I understand, Veracrypt just continued development where Truecrypt left off
From my understanding there never was an official successor, that's why I consider VeraCrypt a fork.
I have mine setup with TPM + PIN, and have archived the recovery keys myself, not stored them with Microsoft.