Post
Topic
Board Development & Technical Discussion
Re: FDE while running a node on SSD
by
takuma sato
on 27/03/2025, 21:50:06 UTC
If you do a full disk encryption setup while running a full Bitcoin Core node on an SSD drive, does the very demanding i/o activity while downloading+verifying the blockchain do too much wear and tear on the drive?

Bitcoin Core I/O activity affected by amount of dbcache, where it's significantly lower if Bitcoin Core can load all UTXO into RAM. SSD also have high endurance, so i wouldn't worry about it unless you use cheap or shady SSD.

I would assume that SSD drives, since they don't have mechanical parts, are safer to run a full disk encryption node than an HDD

It's the opposite, see https://superuser.com/a/1403790. But personally i wouldn't worry about it when FDE is being used.

but nonetheless, what would you consider when shopping for drives?

In short,
1. 2TB or higher capacity, since Bitcoin Core alone currently use about 700GB of storage.
2. Avoid QLC SSD. Once it's cache it's fully used, the SSD become extremely slow.
3. Avoid unknown brand or brand with bad reputation.

Also what about built-in drive encryption vs software encryption like VeraCrypt or dm-crypt (which I think is what most Linux distros use by default)? I would assume there's no need to even bother with built-in encryption and you should buy one without it and just encrypt it yourself with open source software.

Yeah, don't use built-in encryption offered by the drive. I doubt anyone actually audit it, since it's not popular (compared with dm-crypt).

Okay so I will stick to SSD even if it's not as resilient as HDD for this task, but man HDD is so damn slow nowadays that I cannot tolerate syncing a node from scratch again without SSD so I will pass.

The question now is, what settings for dm-crypt? When im installing linux, with your average interface like Debian, it just asks you for some password, they don't give you any way to enter any details on what sort of encryption are you using. VeraCrypt was way better in this regard, but I think FDE with VC only works in Windows for some reason.