{"id":133,"date":"2008-02-10T21:39:47","date_gmt":"2008-02-11T05:39:47","guid":{"rendered":"http:\/\/cubist.cs.washington.edu\/Security\/2008\/02\/10\/security-review-truecrypt\/"},"modified":"2008-02-10T21:39:47","modified_gmt":"2008-02-11T05:39:47","slug":"security-review-truecrypt","status":"publish","type":"post","link":"https:\/\/secblog.cs.washington.edu\/Security\/2008\/02\/10\/security-review-truecrypt\/","title":{"rendered":"Security Review: TrueCrypt"},"content":{"rendered":"<p><strong>Summary<\/strong><\/p>\n<p>TrueCrypt is a disk encryption system intended to solve the problem of people being forced to disclose encryption keys or face consequences.  It allows a disk partition to be completely encrypted. The most recent version even includes a special bootloader that can be used to have a complete Windows installation inside of an encrypted volume.<\/p>\n<p>One of TrueCrypt&#8217;s unique features is the ability to hide another volume inside of the same encrypted partition.  The hidden volume is stored at the end of the primary volume, in what looks like random data in the free space of the primary volume.<\/p>\n<p><!--more--><strong>Assets &amp; Security Goals<\/strong><\/p>\n<p>The main asset is the protection of the user&#8217;s data.  The encryption is meant to keep unauthorized users, agencies, and governments from gaining access to the protected data.<\/p>\n<p>Another asset that TrueCrypt attempts to protect is plausible deniability.  The user should be able to deny that the volume is indeed an encrypted volume in order to avoid being forced to divulge encryption keys.<\/p>\n<p><strong>Adversaries and Threats<\/strong><\/p>\n<p>One adversary is someone who simply wants access to the protected data to use it or alter it in some manner.<\/p>\n<p>Another adversary is someone who wants to gain access to the data since it might incriminate the user.<\/p>\n<p><strong>Weaknesses<\/strong><\/p>\n<p>Since one of the flagship features of the software is the ability to have a hidden volume, an adversary might be suspicious of claims that no hidden volume exists.<\/p>\n<p>If an adversary is able to make copies of the encrypted volume at several points in time and then later demands the password from the user, he might be able to deduce that a hidden volume exists since supposedly random data in the &#8220;free space&#8221; on the primary volume has changed.<\/p>\n<p><strong>Defenses<\/strong><\/p>\n<p>The protected data are encrypted with a cipher (or cascade of ciphers) selected by the user.<\/p>\n<p>The actual bits on the volume are theoretically indistinguishable from random data.  There are no signatures to identify a TrueCrypt volume.<\/p>\n<p>The hidden volume feature allows a user to place fake files in the primary encrypted volume, when the actual files to protect are placed in a hidden volume, which appears to be random data in the free space of the primary volume.  If the user is ever forced to disclose the password, he provides the password for the primary volume and only reveals the fake files.<\/p>\n<p><strong>Conclusions<\/strong><\/p>\n<p>TrueCrypt seems to do a decent job of protecting a user&#8217;s data and providing plausible deniability that the user is hiding something.  However, it&#8217;s not perfect and users still have to be careful and still might find themselves in situations where not revealing passwords and encryption keys could have serious consequences.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Summary TrueCrypt is a disk encryption system intended to solve the problem of people being forced to disclose encryption keys or face consequences. It allows a disk partition to be completely encrypted. The most recent version even includes a special &hellip; <a href=\"https:\/\/secblog.cs.washington.edu\/Security\/2008\/02\/10\/security-review-truecrypt\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":13,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9,5],"tags":[],"class_list":["post-133","post","type-post","status-publish","format-standard","hentry","category-privacy","category-security-reviews"],"_links":{"self":[{"href":"https:\/\/secblog.cs.washington.edu\/Security\/wp-json\/wp\/v2\/posts\/133","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/secblog.cs.washington.edu\/Security\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/secblog.cs.washington.edu\/Security\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/secblog.cs.washington.edu\/Security\/wp-json\/wp\/v2\/users\/13"}],"replies":[{"embeddable":true,"href":"https:\/\/secblog.cs.washington.edu\/Security\/wp-json\/wp\/v2\/comments?post=133"}],"version-history":[{"count":0,"href":"https:\/\/secblog.cs.washington.edu\/Security\/wp-json\/wp\/v2\/posts\/133\/revisions"}],"wp:attachment":[{"href":"https:\/\/secblog.cs.washington.edu\/Security\/wp-json\/wp\/v2\/media?parent=133"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/secblog.cs.washington.edu\/Security\/wp-json\/wp\/v2\/categories?post=133"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/secblog.cs.washington.edu\/Security\/wp-json\/wp\/v2\/tags?post=133"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}