Цитата:
|
Сообщение от Adroit
У kpnemo на сайте была замечательная статья по этому поводу, по PGP.
|
"Статья" замечательная по теме, но с кучей глупостей в содержании. Там хорошо излагалась мотивация, но затем шли весьма поверхностные и субъективные рассуждения. Например, по поводу достаточной длины ключа и т.п. Также создавалось впечатление что существует одна реализация PGP - внутренняя в составе Bat'а. Между тем, таких реализаций достаточно много, и эта конкретная не может считаться достаточно подходящей для практического применения. В основном её можно использовать только для учебных целей.
Цитата:
|
Сообщение от Adroit
Да и касательно шифрования и подписи. Шифрование письма открытым ключом позволяет его читать только обладателю, а вот подписаться за другого у вас к сожалению на получится Так как для этого отправителю нужно иметь доступ к подписи того за кого он хочет подписаться. В открытом ключе, который даже можно выкладывать в специализированные хранилища, информации о подписи не содержится.Так что либо надо отсылать письмо с почтовика того человека которого собираешься подставить либо физически отобрать ключ + доступ к аккаунту почтовому, так как ключи создаются для каждого почтового адреса разные.Так что подписаться за другого человека не получится.
|
Рассуждения неверные – вывод верный.

Следует понимать, что не существует никакого отдельного "секретного ключа к подписи", к которому надо иметь доступ, чтобы подписаться. Это просто другой способ использования всё того же секретного ключа несимметричного криптоалгоритма. Разумеется, пара ключей никак не зависит ни от парольной фразы ни от имени почтового аккаунта. К тому же названия почтовых аккаунтов в уже сгенерированном ключе можно произвольно менять - удалять и добавлять сколько угодно новых. В менеджере ключей. (И парольную фразу также можно изменять – если знаешь предыдущую.)
Bat немного обманывает пользователя относительно применения ключей. Там программным образом связаны "имя" ключа и имя почтового аккаунта. В действительности ключ никак не зависит от текстовых строчек, вводимых пользователем при его генерации.
Что же касается посылки письма от имени другого человека – т.е. подделки поля From – то это тоже, вообще говоря, достаточно тривиально. Для этого совершенно не обязательно захватывать контроль над чужим почтовым ящиком.
Цитата:
|
Сообщение от FantomIL
При получении подписанного сообщения, мы просим программу проверить, что сообщение НЕ МОДИФИЦИРОВАЛОСЬ. Программа делает это путём расшифровки подписи и сравнения результата с телом сообщения. Если результат, такой же, что и обычное сообщение, то программа говорит – все OK.
То есть, цифровая подпись ГАРАНТИРУЕТ то, что письмо НЕ БЫЛО ИЗМЕНЕНО в процессе доставки, но никак НЕ ГАРАНТИРУЕТ, что письмо отправлено именно адресатом.
|
В достаточной мере гарантирует. Гарантирует, что сообщение подписал обладатель секретного ключа, который может им воспользоваться для подписания. Просто своровать секретный ключ – всё же не достаточно.
Цитата:
|
Сообщение от FantomIL
...своровать privat key у продвинутого юзера конечно нелегко. Но, как показывает опыт, очень много вещй, которые делать нелегко, тем не менее - делаются. Поэтому я настаиваю на следующей формулировке, что цифровая подпись гарантирует то, что письмо не было изменено в процессе доставки. А вот насчет истинности отправителя - гарантии нет.
|
Следует помнить, что для активации секретного ключа (например при подписании сообщения) надо вводить клавиатурный пароль (парольную фразу). Для того чтобы воспользоваться чужим секретным ключом надо знать ещё и этот пароль. В
современных версиях PGP парольная защита секретного ключа от подбора достаточно адекватна. Хотя теоретически она и может быть преодолена, например, путём атаки по словарю, особенно в случае выбора пользователем слабого пароля.
Цитата:
|
Сообщение от Gengal
Я с удовольствием пользовался бы PGP, но не знаю как это делать, если у кого есть материал об ентом в электронном виде
|
Вот хороший сайт на котором можно узнать на эту тему побольше:
PGP в России А вот форум этого сайта:
http://www.pgpru.com/forum
Позволю себе цитату оттуда:
Цитата:
|
Сообщение от http://www.pgpru.com/faq/pgpkeys.htm#pgpkeys_1
...ключевая фраза служит для защиты Вашего закрытого ключа. Технически, закрытый ключ хранится на Вашем диске, зашифрованный хэш-значением ключевой фразы. Грамотно составленная ключевая фраза является гарантией того, что даже если некто и получит в своё распоряжение копию Вашего закрытого ключа, у него уйдёт очень много времени (вплоть до вечности), чтобы заставить его работать. Имейте в виду, криптографическая стойкость PGP чрезвычайно высока, но вся она упирается в надёжность выбираемых пользователем ключевых фраз.
Программа требует вводить ключевую фразу всякий раз, когда Вы пытаетесь воспользоваться своим закрытым ключом (подписать или расшифровать сообщение, изменить текущую ключевую фразу) или внести изменения в содержание сертификата открытого ключа (добавить / удалить имя, аннулировать и т.д.).
|
Другой путь преодоления парольной защиты похищенного секретного ключа - это перехват парольной фразы, вводимой с клавиатуры.
Это приводит нас к обсуждению программ-кейлоггеров и методов защиты от них. Не особо углубляясь в эту тему, скажу, что внутренняя реализация OpenPGP в составе The Bat! (и SecureBat!) – такой программной защиты не имеет. В отличие от собственно PGP, производимого "PGP Corporation". Хотя и эта защита, разумеется, не идеальна. Поэтому придумываются всяческие ухищрения для хранения секретных ключей. (Простейший вариант – на дискете.) Однако следует помнить, что простого физического обладания файлом с ключом для злоумышленников всё-таки недостаточно.
Ну и конечно же внутренняя реализация OpenPGP (RFC-1991) в составе The Bat! не использует считающихся предпочтительными в настоящее время несимметричных (RSA vs ElGamal) и симметричных криптоалгоримов (IDEA (128 бит) vs AES (256 бит) ) и хэш-функции (MD5 vs SHA-1) и не может считаться перспективной с учётом современного прогресса в криптоанализе. Ещё раз повторюсь, что эта реализация, по моему скромному мнению (IMHO

), в настоящее время может использоваться в основном для учебных и иллюстративных целей – для овладения пониманием основных принципов гибридных криптосистем.
Поставьте себе PGP 8.1:
http://www.pgp.com/downloads/freeware/index.html
Это бесплатно.

Регистрационные ключи к нему от ROR – наличествуют в Инете.
Calculating hash of 8312851 bytes file `...\PGP810-PF-W.zip`...
SHA-160 : 52098A6A94328004BCF8ACE712DF31BB9E0D52C2
MD5 : 8C19644B0BC8AF8DCE21B4DDF81304E1
CRC-32 : A13491ED
Кстати, PGP – прекрасно интегрируется с Bat'ом.
_________________________________________
Техническое дополнение.
Некоторые детали реализации гибридной криптосистемы и цифровой подписи.
Прежде всего, следует заметить, что гибридная криптосистема (PGP) стоит как на "трёх китах" на следующих криптоалгоритмах:
- несимметричный криптоалгоритм (RSA, "DH/DSS" (он же ElGamal) и т.п.)
- симметричный криптоалгоритм (IDEA, AES(RIJNDAEL), CAST, BLOWFISH, DES, GOST 28147-89 и т.п.)
- хэш-функция (MD5, SHA-1, и т.д)
(генерацию случайных чисел и стойких ключей оставим за скобками

)
Начнём с цифровой подписи, раз уж о ней у нас пошла речь.
Рассмотрим два ключа несимметричного криптоалгоритма – так называемые "открытый"(публичный) и "секретный"(приватный). Они
функционально эквивалентны!
Любой из них может быть использован как для за- так и для расшифровывания. Что зашифровано одним ключом – расшифровывается другим. И наоборот! Просто секретный ключ – известен только нам, а открытый, публичный – широко распубликован (например, помещён на домашней страничке и на серверах ключей.)
В случае цифровой подписи сообщения, мы вычисляем его хэш
(контрольную сумму, дайджест) - и зашифровываем его своим
секретным
ключом. Теперь расшифровать этот хэш может любой обладатель нашего
открытого ключа. Но согласовано изменить сообщение и его хэш - так,
чтобы они соответствовали один другому, - может только обладатель
закрытого ключа! На этом и основывается цифровая подпись сообщений.
При зашифровывании сообщений мы поступаем по-другому. Сообщение зашифровывается
открытым ключом нашего корреспондента. Теперь расшифровать его может только обладатель секретного ключа. Но зашифровать письмо этим открытым ключом – может кто угодно. Поэтому чтобы удостоверить себя, как его отправителя, мы также предварительно вычисляем хэш и шифруем его своим секретным ключом. Расшифровать этот хэш, как уже говорилось, может любой обладатель нашего открытого ключа.
Адресат сообщения расшифровывает это сообщение, применяя свой секретный, известный только ему ключ. А также удостоверяется в подлинности отправителя, расшифровывая хэш сообщения, используя при этом широкоизвестный публичный ключ отправителя.
Это в принципе всё.
Дальше идут меры по улучшению стойкости к анализу. Следует упомянуть, что в целях криптографической стойкости, в действительности несимметричным криптоалгоритмом шифруется не всё тело сообщения, а только случайно сгенерированный ключ
симметричного криптоалгоритма. Само тело сообщения шифруется этим симметричным криптоалгоритмом. Делается это для того, чтобы тот, кто может перехватывать сообщения – не мог набрать статистику, основываясь на большом объёме (и содержании) сообщений, зашифрованных одним и тем же ключом несимметричного криптоалгоритма. В каждом таком сообщении несимметричным ключом шифруется только короткий фрагмент – случайное число, являющееся ключом симметричного алгоритма.