Чтение онлайн

на главную - закладки

Жанры

PGP: Кодирование и шифрование информации с открытым ключом
Шрифт:

Кодирование сообщения.

Мы рассмотрели, как использовать ключи. Теперь давайте попробуем использовать это для чего-нибудь интересного. Давайте посмотрим, как декодировать файл:

pgp -е файл идентификатор

Приведем пример: учитель хочет послать своему коллеге экзаменационные задачи по e-mail и не хочет, чтобы студенты перехватили это сообщение :). Пусть имя второго учителя будет Маркос и идентификатор его открытого ключа содержит его имя. Первый учитель наберет:

pgp -е exam.doc marcos

Эта

команда создает файл с именем exam.pgp, содержащий файл exam.doc, закодированный так, что только Маркос может его декодировать с помощью своего закрытого ключа.

Помните, что созданный файл, exam.pgp, не является ASCII файлом, поэтому для отправки его по e-mail может потребоваться добавить еще одну опцию -а для того, чтобы выходной закодированный файл был в формате ASCII, например так:

pgp -еа exam.doc marcos

По причинам безопасности, нам иногда может потребоваться удалить оригинал. PGP может делать это автоматически при помощи опции -w:

pgp –eaw exam.doc marcos

Кодирование сообщения для нескольких получателей

Теперь представьте, что наш учитель хочет послать эти задачи своим коллегам по кафедре. Чтобы это сделать, ему необходимо просто набрать вместо одного несколько идентификаторов:

pgp –ea exam.doc marcos juan alicia

Заметьте, что опция -а тоже используется, поэтому выходной файл будет в формате ASCII и его можно будет послать по e-mail.

Как сообщение подписывается.

Как уже говорилось, цифровая подпись в сообщении является аналогом обычной подписи на бумаге. Подпись документа позволит получателю удостовериться в его аутентичности и в том, что сообщение не было изменено.

Чтобы подписать документ, необходимо использовать ваш закрытый ключ:

pgp -s файл [-u идентификатор]

Если у нас есть несколько закрытых ключей в нашем secring.pgp, мы можем выбрать один из них при помощи идентификатора.

Когда наш учитель из примера решает подписать экзаменационные задачи, чтобы сообщить, что их послали не студенты-шутники :) он набирает следующее:

pgp –s exam.doc

Эта команда создает файл с именем exam.doc.pgp, который не является ASCII-текстом, потому что PGP пытается сжать файл. Если, с другой стороны, вы хотите подписать файл, оставив текст читабельным и с подписью в конце, то процедура будет выглядеть:

pgp -sta exam.doc

Эта последняя команда очень полезна при подписи электронной почты, которую и дальше можно будет читать без использования PGP или тем, кому не хочется проверять подпись.

Кроме того, можно подписать документ и затем закодировать его при помощи следующей команды:

pgp -es файл идентификатор_получателя [-u мой_идентификатор]

Например:

pgp -es exam.doc marcos –u angel

Здесь файл exam.doc кодируется и подписывается и сохраняется в файле exam.pgp. Для кодирования файла используется открытый ключ, идентифицируемый подстрокой "marcos", поэтому только этим ключом можно декодировать этот файл. Затем я идентифицирую мой закрытый ключ строкой "angel", так как в моем кольце есть несколько ключей.

Даже

в этом случае можно создать файл в формате ASCII, используя опцию -a.

Кроме того, нас может заинтересовать возможность создания подписи файла отдельно от данных. Чтобы это сделать, воспользуемся опцией -b:

pgp -sb exam.doc

Эта команда создает новый файл exam.sig, содержащий только подписи.

Декодирование.

Для декодирования файла и/или проверки его подписи используется команда:

pgp входной_файл [-o выходной_файл]

По умолчанию предполагается, что входной файл имеет расширение .pgp. Выходной файл является необязательным параметром и будет содержать декодированный файл. Если выходной файл не указан, декодированный файл будет сохранен в файле входной_файл без расширения .pgp.

Однако, после декодирования файла нам необходимо указать стандартный выход для декодированного файла. Это достигается использованием опции -m:

pgp -m файл

Существует еще одна возможность — использовать каналы ввода и вывода с опцией -f:

pgp -fs идентификатор < входной_файл > выходной_файл

Еще одним интересным сценарием является декодирование подписанного сообщения, посланного нам кем-нибудь, с сохранением подписи, например для кодирования его еще раз для того, чтобы послать его кому-нибудь еще. Чтобы это сделать, нужно использовать опцию -d:

pgp -d exam

Здесь мы берем файл exam.pgp и декодируем его, но при этом оставляем оригинальную подпись в файле. Теперь можно переходить к кодированию его открытым ключом того человека, который после получения может проверить аутентичность исходного сообщения.

Обработка текстовых файлов.

Часто PGP используется для кодирования электронной почты, которая чаще всего представляет собой текст. Проблема текстовых файлов заключается в том, что на разных машинах текст представляется по-разному; например в MS-DOS все строки заканчиваются символами возврата каретки и перевода строки, в Линуксе только перевод строки, в Macintosh только возврат каретки... и т.д. Чтобы избежать несовместимости платформ, нам необходимо сказать PGP, что мы хотим закодировать текстовый файл, а не бинарный файл, с тем, чтобы после разархивирования его можно было адаптировать к особенностям платформы получателя. Для кодирования текстового файла для e-mail используется опция -t. Например:

pgp -sta текстовый_файл идентификатор

"Отпечатки (fingerprints)".

Отпечаток является последовательностью из 16 бит, которая идентифицирует ключ уникальным образом. Можно проверить, принадлежит ли имеющийся у вас ключ именно тому человеку, сравнив каждый из 16 бит вместо всех 1024 байт, которые составляют ключ.

Для просмотра отпечатка ключа используется команда:

pgp -kvc идентификатор [кольцо]

Использование PGP в командной строке.

Поделиться:
Популярные книги

Эпоха Опустошителя. Том I

Павлов Вел
1. Вечное Ристалище
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Эпоха Опустошителя. Том I

Проблема майора Багирова

Майер Кристина
1. Спецназ
Любовные романы:
современные любовные романы
6.60
рейтинг книги
Проблема майора Багирова

Законы Рода. Том 13

Андрей Мельник
13. Граф Берестьев
Фантастика:
аниме
фэнтези
5.00
рейтинг книги
Законы Рода. Том 13

Газлайтер. Том 15

Володин Григорий Григорьевич
15. История Телепата
Фантастика:
боевая фантастика
попаданцы
5.00
рейтинг книги
Газлайтер. Том 15

О, Путник!

Арбеков Александр Анатольевич
1. Квинтет. Миры
Фантастика:
социально-философская фантастика
5.00
рейтинг книги
О, Путник!

Прометей: каменный век

Рави Ивар
1. Прометей
Фантастика:
альтернативная история
6.82
рейтинг книги
Прометей: каменный век

Её (мой) ребенок

Рам Янка
Любовные романы:
современные любовные романы
6.91
рейтинг книги
Её (мой) ребенок

Идеальный мир для Лекаря 8

Сапфир Олег
8. Лекарь
Фантастика:
юмористическое фэнтези
аниме
7.00
рейтинг книги
Идеальный мир для Лекаря 8

Прометей: каменный век II

Рави Ивар
2. Прометей
Фантастика:
альтернативная история
7.40
рейтинг книги
Прометей: каменный век II

Цвет сверхдержавы - красный. Трилогия

Симонов Сергей
Цвет сверхдержавы - красный
Фантастика:
попаданцы
альтернативная история
8.06
рейтинг книги
Цвет сверхдержавы - красный. Трилогия

Болтливый мертвец

Фрай Макс
7. Лабиринты Ехо
Фантастика:
фэнтези
9.41
рейтинг книги
Болтливый мертвец

На границе империй. Том 9. Часть 2

INDIGO
15. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 2

Истребители. Трилогия

Поселягин Владимир Геннадьевич
Фантастика:
альтернативная история
7.30
рейтинг книги
Истребители. Трилогия

Лишняя дочь

Nata Zzika
Любовные романы:
любовно-фантастические романы
8.22
рейтинг книги
Лишняя дочь