Начнем с самого начала, как работает шифрование.
AES нужен ключ определенной длины, для AES256 это 256 бит. Поскольку ваш пароль или файл не будет иметь длину точно 256 бит, Truecrypt использует алгоритм хеширования (например, RIPEMD-160) для генерации правильной длины.
Например, ключ заголовка для шифра AES-256 всегда имеет длину 256 бит, даже если используется HMAC-RIPEMD-160
Недостаток использования только пароля состоит в том, что пул символов несколько ограничен символами на клавиатуре. Использование ключевого файла, особенно файла с высоким уровнем случайности, будет более безопасным только потому, что в нем больше возможных комбинаций. Недостатком, конечно, является то, что кто-то может получить этот файл.
Если ключевой файл каким-либо образом уничтожен, его будет практически невозможно восстановить, если только он не является файлом, состоящим из известного содержимого (например, UN-Charta), однако вы должны убедиться, что содержимое точно такое же, особенно для файлов с метаданные (например, дата создания, имя владельца) это будет трудной задачей. Но обычный текстовый файл будет настолько же ограничен количеством символов, что и ваша клавиатура, и поэтому начинать с него очень плохо.
Забыть пароль так же плохо, как это, записать его так же плохо, как иметь файл ключа на чем-то вроде USB-флешки. Вы всегда должны делать резервную копию вашего ключевого файла в случае повреждения данных или если ваш диск умирает.
В основном все сводится к тому, что вы предпочитаете и какой уровень безопасности вы хотите достичь. Очень длинный пароль, который никто не может вытеснить из вашего мозга, или ключевой файл, к которому вы можете гарантировать, что никто не имеет доступа. Следующая возможность - объединить пароль и ключевой файл, таким образом, вы можете использовать более короткий пароль. Но для этого решения вы все равно должны убедиться, что третье лицо не может получить ключевой файл (например, храня его внутри контейнера или диска, зашифрованного длинным паролем).