1

I'm thinking of installing Veracrypt and I read that it takes Veracrypt about 5 minutes to decrypt a 500 gig SSD. How is this possible? It takes me much longer to duplicate the same 500 gigs on my SSD!

Can someone explain how this is possible?

This is how I analyze the situation. The following are the fundamental tasks of each procedure:

1. Vercrypt has the computer read the data, decrypt the data, and then finally write the data on the SSD. It does this over and over again.

2. When the same computer copies 500 gigs on the same SSD, the computer reads the data and then writes the data on the SSD. It does this over and over again.

∴ Relative to the 2nd procedure of simply copying, the Veracrypt procedure is exactly the same except Veracrypt has the additional, complicated task of decrypting the data. Veracrypt has to take longer time, no?

How could the Veracrypt decryption be faster?

2 Answers 2

1

Your initial claim seems incorrect. On modern processors with hardware AES instruction set and using SSDs with write speed equal or higher than read speed, VeraCrypt decryption is theoretically as fast as unencrypted SSD duplication.

From the VeraCrypt website:

Parallelization and pipelining allow data to be read and written as fast as if the drive was not encrypted.

Assuming it takes hardware AES 3.5 cycles to decrypt 1 byte of AES data (as suggested by Wikipedia) modern entry-level processor with 4 cores should decrypt a few hundreds gigabytes of AES data per second.

4 cores * 4 GHz/core / 3.5 hertz/byte > 250 GB/min

The fastest consumer NVME SSDs on the market today can serve data just short of 3 GB/s, so unless the CPU is busy computing other data then the bottleneck is the SSD.

1

Your premise of how you think Veracrypt, or any disk encryption, works is flawed.

1. Vercrypt has the computer read the data, decrypt the data, and then finally write the data on the SSD. It does this over and over again.

This is not what happens!

First and foremost, decrypted data is never written back to the drive in the clear! Doing so would defeat the purpose of encryption, require twice the drive space, and take too long.

If mounting an encrypted 500 GB drive, a custom drive interface handler is created to decrypt and encrypt on-the-fly as individual files are accessed. The whole drive is not read and decrypted, and certainly not copied and written. The encryption/decryption handler net impact to performance is generally small, in the 3% region. This makes sense when you consider processor speeds compared to disk I/O speeds.

If opening an encrypted file, the decrypted data is kept in RAM only. A large file can indeed take a while.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .