Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

TrueCrypt supports encrypting a system partition while operating system is running.

From the docs:

Note that TrueCrypt can encrypt an existing unencrypted system partition/drive in-place while the operating system is running (while the system is being encrypted, you can use your computer as usual without any restrictions). Likewise, a TrueCrypt-encrypted system partition/drive can be decrypted in-place while the operating system is running. You can interrupt the process of encryption or decryption anytime, leave the partition/drive partially unencrypted, restart or shut down the computer, and then resume the process, which will continue from the point it was stopped.

The question is :

How is it implemented? How does TrueCrypt keep one part of the partition encrypted and the other non-encrypted? And how does it provide access to both parts while constantly encrypting the unencrypted one? What happens if the systems tries to access the data (or even write it) which is being encrypted at the moment (transferred from non-encrypted section of the partition into encrypted)?

share|improve this question
1  
For an in-depth review of Truecrypt, especially how and why it's secure, look at grc.com/sn/sn-041.pdf (podcast links in the top of the document). That was too long ago for me to remember if your actual question was addressed in it... –  Jan Doggen May 2 '13 at 11:31
    
Awesome! Thanks. –  asmo May 2 '13 at 20:45
add comment

1 Answer

up vote 3 down vote accepted

TrueCrypt intercepts every read and write operation. If the operation is to the part of the disk that is not encrypted, the operation is done without encryption. If the operation is to the part of the disk that is encrypted, the operation is done with encryption. Meanwhile the unencrypted portion is shrinking while the encrypted portion is expanding until the entire disk is encrypted.

The only quirk is handling an operation to a block that's in the process of being encrypted. In the unlikely event that happens, TrueCrypt simply delays the operation to the block until it is encrypted and then the operation proceeds as normal to an encrypted block.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.