
- •Лабораторная работа №5
- •Основные понятия
- •Ход работы:
- •Шифровать и расшифровывать папки и файлы можно с помощью командной строки, использую команду cipher.
- •Синтаксис команды
- •Параметры
- •Порядок выполнения работы:
- •Использование GnuPg шифрования и подписи файлов
- •Генерация ключа
- •Использование GnuPg для подписи/шифрования
- •Использование GnuPg для цифровой подписи файлов
- •Импорт и работа с ключами gpg
- •Экспорт закрытого ключа
- •Резервное копирование ключей
- •Выполнение работы
- •Ход работы:
- •Контрольные вопросы:
Порядок выполнения работы:
Для выполнения работы вам понадобятся две учетные записи:
student (вход без пароля) и mszistud (пароль: mszistud). Папка, в которой вы можете шифровать свои файлы - С:\security
Загрузитесь под учетной записью student
Создайте текстовый файл student.txt и зашифруйте его.
Загрузитесь под учетной записью mszistud
Проверьте, может ли пользователь mszistud прочитать файл student.txt
Создайте текстовый файл mszi.txt и зашифруйте его.
Загрузитесь под учетной записью student
Проверьте, может ли пользователь student прочитать файл mszi.txt
Добавьте к зашифрованному файлу student.txt пользователя mszistud
Загрузитесь под учетной записью mszistud
Проверьте, может ли теперь пользователь mszistud прочитать файл student.txt. Если вы все правильно сделали, то файл student.txt будет доступен как student так и mszistud.
Создайте и зашифруйте папку mszifolder. Перенесите в нее любой незашифрованный файл. Просмотрите результат.
Попробуйте обратиться к этой папке под учетной записью student.
Загрузитесь под учетной записью student
Перенесите любой зашифрованный файл на диск с файловой системой FAT. Просмотрите результат.
Хеш-функции. Технологии цифровых подписей. Защита конфиденциальной информации в ОС LINUX – часть2
Цель работы: Изучить свойства хеш-функции. Ознакомиться с некоторыми приемами работы с пакетом GnuPG для шифрования файлов и создания цифровой подписи.
Использование GnuPg шифрования и подписи файлов
GnuPG (GNU Privacy Guard, «Страж безопасности GNU», или просто GPG) – это открытый эквивалент PGP (Pretty Good Privacy), известной и широкоиспользуемой программы для Windows, DOS и других операционных систем. Он распространяется в открытых исходниках и имеет те же самые функции, что и PGP, основанные на стандарте OpenPGP. У GnuPG есть несколько применений – он может использоваться либо для шифрования писем и файлов, либо для их цифровой подписи. Первый вариант применения GnuPG – шифрование писем и файлов на вашем жестком диске – очевиден, и он обычно применяется для защиты секретных сообщений или документов. Цифровая подпись информации необходима для сохранения целостности сообщений и файлов, особенно при передаче их через незащищенный канал. Она гарантирует, что: 1) Письмо было отправлено именно этим человеком, и 2) Что информация по пути не была изменена.
Использовать GnuPG очень просто. Сама программа – консольная. GPG основан на принципе открытых ключей (Public Key Infrastructure) – то есть, существуют 2 ключа: закрытый ключ используется для подписи и шифрования, а открытый ключ – для расшифровки и проверки правильности подписи.
Генерация ключа
Чтобы начать работу с GPG, вам нужно создать пару ключей. Сделать это очень легко – просто наберите в командной строке:
[student@lhaos stud]$ gpg --gen-key
Если вы еще не работали с GPG, то эта команда сначала создаст директорию ~/.gnupg с файлом настроек ~/.gnupg/options а также создаст два набора ключей: ~/.gnupg/secring.gpg and ~/.gnupg/pubring.gpg. Затем вам будет задан вопрос: какой тип ключей вам нужен - «DSA and ElGamal», «DSA», или «ElGamal». Первый тип используется по умолчанию, и именно он позволяет использовать все возможности GPG. Ключ DSA используется только для цифровой подписи. ElGamal может быть использован для подписи и шифрования. Почти всегда следует выбирать «DSA and ElGamal».
После этого вам нужно выбрать размер ключа. Рекомендуемый размер ключа – 1024 бита. Этот размер довольно неплохо подходит для надежного шифрования, и он является самым распространенным. Вы можете выбрать и другой размер: 2048 – для улучшенной безопасности (практически невозможно сломать или подделать). При увеличении размера ключа все операции производятся медленнее, и ваш открытый ключ становится намного больше. Рекомендуемые варианты – 1024 или 2048; выбор полностью за вами.
Следующий шаг – выбрать срок действия ключа. Некоторые предпочитают сделать срок действия своего ключа бесконечным, и выбирают 0. Другие создают новый ключ каждый год, и для этого они выбирают значение «1y». Здесь все так же зависит от ваших персональных предпочтений.
После этого вам будет предложено ввести вашу личную информацию для нового ключа. Идентификатор пользователя составляется из трех полей: Имя, Комментарий и Email-адрес. После того, как вы введете информацию для каждого поля, идентификатор пользователя будет выглядеть так: «Имя (Комментарий) <Email-адрес>». (Пример: Ivanov Ivan (My First GPG Key!) <ivanov@mail.ru>). Желательно использовать свое реальное имя и свой главный Email-адрес. Комментарий может быть абсолютно любым.
После создания идентификатора пользователя вам нужно будет ввести пароль. Он будет использоваться каждый раз, когда вы захотите что-нибудь зашифровать или подписать. Так же вам нужно будет вводить пароль для расшифровки данных, зашифрованных с использованием вашего открытого ключа. Пароль – очень важная деталь для обеспечения вашей секретности, потому что его подбор часто бывает намного проще, чем подбор всего ключа. Поэтому он должна быть длинным, сложным и практически не подбираемым.( Для генерации сложного пароля проделайте следующее:
cat /dev/[u]random | uuencode -m - | head -n 2 | tail -c длина пароля.)
Когда вы введете пароль дважды, GPG начнет генерацию вашего ключа. Для этого требуется огромное количество случайных данных, поэтому вам нужно будет подвигать курсор, напечатать что-нибудь на клавиатуре, обратиться к жесткому диску, и т.д. Все эти действия позволяют обеспечить полную случайность и уникальность вашего ключа.
После того, как создание ключа закончится, вы можете использовать GPG для просмотра его характеристик. Это выглядит примерно так:
[student@lhaos stud]$ gpg --list-keys /home/stud/.gnupg/pubring.gpg ------------------------------- pub 1024D/9B1386E2 2007-01-29 Ivanov Ivan(My First GPG Key!) <Ivanov@mail.ru> sub 1024g/7F72A50F 2007-01-29
Эта команда дает вам как открытую, так и закрытую информацию о вашем ключе.