Next: Где взять ключи?
Up: 6.3. Как зашифровать файл?
Previous: Какой должен быть пароль?
Contents: Содержание
Как видите, применять пароль в качестве ключа шифрования не так удобно,
как кажется на первый взгляд. Либо защита будет нестойкой, либо пароль
трудно запомнить и ввести без ошибок. Если вы хотите построить
по-настоящему надежную защиту, вместо пароля нужно использовать что-то
другое.
Можно, например, хранить ключ на дискете1). Вы создаете каким-то образом (каким - обсудим позже)
случайный, равновероятный и достаточно длинный ключ и записываете его
на дискету. Когда программа шифрования запрашивает ключ, вы вводите
ключ не с клавиатуры, а с дискеты. Вы просто вставляете дискету в
дисковод, а программа считывает оттуда ключ и зашифровывает файл на
этом ключе. При расшифровании файла программа просит ``Вставьте
ключевую дискету в дисковод''. Вы вставляете дискету в дисковод,
программа считывает оттуда ключ, проверяет его правильность и, если
ключ правильный, расшифровывает файл.
Конечно, программа шифрования должна уметь работать с ключевыми
дискетами.
Ключевую дискету нужно хранить в месте, недоступном для
злоумышленников. Если кто-то воспользуется вашей ключевой
дискетой, то он сможет прочесть все, что вы зашифровали с ее помощью.
Не теряйте ключевые дискеты! Если вы потеряете такую дискету, то тем
самым вы потеряете все данные, которые вы зашифровали с ее
помощью.
Удобно ли пользоваться ключевыми дискетами? Нет. Но за надежность
защиты приходится платить. Вообще, это общая
закономерность - чем надежнее система защиты, тем труднее с ней
работать. И наоборот, чем система защиты удобнее в обращении, тем она
слабее. Конечно, разрабатывая систему защиты, можно наделать ошибок, и
система получится и ненадежной, и неудобной. Но если система
разрабатывалась на совесть, приведенное выше утверждение почти всегда
верно.
Можно ли как-нибудь защитить ключ, хранящийся на дискете? Конечно! Его
тоже можно зашифровать. И не нужно для этого придумывать сложный
шифр - вполне хватит самого примитивного шифра наподобие простой
замены. Почему? Да потому, что ключ шифрования - текст
случайный и
равновероятный. На чем основан метод дешифрования шифра простой замены?
На том, что открытый текст - это осмысленный текст. А в осмысленном
тексте обязательно присутствуют статистические закономерности. Но в
ключе никаких закономерностей нет - ключ случаен и равновероятен!
Что использовать в качестве ключа, на котором шифруется ключ? Можно
использовать пароль, но, как вы уже знаете, это не очень надежно. Можно
завести вторую ключевую дискету, на которой хранить ключ, необходимый
для доступа к первой. Но тогда придется заводить третью дискету, чтобы
защитить вторую, а потом заводить четвертую, чтобы защитить третью ...
Так как же быть? Подумайте сами. Один из возможных
ответов
вы найдете в конце главы.
Next: Где взять ключи?
Up: 6.3. Как зашифровать файл?
Previous: Какой должен быть пароль?
Contents: Содержание