Вопрос: Как Truecrypt знает, что у него правильный пароль?


Я не был уверен, спросить об этом в stackoverflow или суперпользователе.

В документации truecrypt говорится, что контейнер truecrypt неотличим от случайных данных. Мой вопрос в том, как знает truecrypt, когда ему был предоставлен правильный пароль и правильно декодирован зашифрованный контейнер?

Имеет ли расшифрованные данные какой-то заголовок, который идентифицирует, что он был дешифрован правильно, например заголовок «truecrypt volume»?


4
2018-04-04 22:32


Источник


Мне хотелось бы получить окончательный ответ на этот вопрос. - Lorenzo Von Matterhorn


Ответы:


Он знает правильный пароль, потому что внутри этого зашифрованного контейнера есть известный заголовок.

Когда Trucrypt расшифровывает капли данных, а заголовок соответствует тому, что он ожидал, сообщает, что дешифрование было успешным. Если вы используете неправильный пароль, он все равно «расшифрует» текст, но он расшифрует заголовок в тарабарщину и завершит проверку расшифровки.

Вот ссылка на спецификацию (зеркало), вы можете видеть, что существует много вещей, которые должны быть истинными, чтобы быть допустимым заголовком (байты 64-67 после дешифрования всегда должны быть значением ASCII TRUE, байты 132-251 должны быть все 0и т. д.). Если вы расшифруете капли данных и не соответствуют этому формату заголовка, вы знаете, что дешифрование не удалось.


11
2018-04-04 22:38



и кажется, я только что увидел окончательный ответ! +1 - большой ответ. - Lorenzo Von Matterhorn