Главная страница

Криптография 2е издание Протоколы, алгоритмы и исходные тексты на языке С


Скачать 3.25 Mb.
НазваниеКриптография 2е издание Протоколы, алгоритмы и исходные тексты на языке С
Дата29.04.2022
Размер3.25 Mb.
Формат файлаpdf
Имя файлаShnayer_Prikladnaya-kriptografiya.352928.pdf
ТипПротокол
#504484
страница57 из 78
1   ...   53   54   55   56   57   58   59   60   ...   78
двухпроходный или трехпроходный протокол проверки подлинности .
Однопроходный протокол представляет собой простую передачу данных Бобу Алисой. Протокол устанавли- вает личности и Алисы, и Боба, а также целостность информации, передаваемой Бобу Алисой . Кроме того, он обеспечивает защиту от вскрытия линии связи с помощью повтора .
В двухпроходном протоколе добавлен ответ Боба . Протокол устанавливает, что именно Боб, а не какой-то самозванец, посылает ответ. Он также обеспечивает безопасность обеих передач и защищает от вскрытия по- втором.
И в однопроходных, и в двухпроходных алгоритмах используются метки времени . В трехпроходном прото- коле добавляется еще одно сообщение Алисы Бобу и позволяет избежать меток времени (и, следовательно, пр а- вильного единого времени).
Однопроходный протокол:
(1) Алиса генерирует случайное число R
A
(2) Алиса создает сообщение, M = (T
A
, R
A
, I
B
, d), где T
A
- метка времени Алисы, I
B
- идентификатор Боба, d - произвольные данные. Для безопасности данные могут быть зашифрованы открытым ключом Боба E
B
(3) Алиса посылает Бобу (C
A
, D
A
(M)). (C
A
- это сертификат Алисы, D
A
- это общий узел дерева сертификации.)
(4) Боб проверяет C
A
и получает E
A
. Он проверяет, что срок действия этих ключей еще не истек . (E
A
- это от- крытый ключ Алисы.)
(5) Боб использует E
A
для дешифрирования D
A
(M). Этим действием он проверяет и подпись Алисы, и целос т- ность подписанной информации.
(6) Боб для точности проверяет I
B
в M.
(7) Боб проверяет T
A
в M и убеждается, что сообщение является текущим .
(8) Дополнительно Боб может проверить R
A
в M по базе данных старых номеров, чтобы убедиться, что соо б- щение не является повторяемым старым сообщением .
Двухпроходный протокол состоит из однопроходного протокола и последующего аналогичного однопрохо д- ного протокола от Боба к Алисе. После выполнения этапов (1)-(8) однопроходного протокола двухпроходный протокол продолжается следующим образом :
(9) Боб генерирует случайное число R
B
(10) Боб создает сообщение M' = (T
B
, R
B
, I
A
, R
A
, d), где T
B
- метка времени Боба, I
A
- идентификатор Алисы, а d - произвольные данные. Для безопасности данные могут быть зашифрованы открытым ключом Алисы
E
А
. R
A
- случайное число Алисы, созданное на этапе (1).
(11) Боб посылает Алисе sends D
В
(M').
(12) Алиса использует E
B
, чтобы расшифровать D
В
(M'). Таким образом одновременно проверяются подпись
Боба и целостность подписанной информации .
(13) Алиса для точности проверяет I
A
в M'.
(14) Алиса проверяет T
В
в M' и убеждается, что сообщение является текущим .
(15) Дополнительно Алиса может проверить R
В
в M', чтобы убедиться, что сообщение не является повторя е- мым старым сообщением.
Трехпроходный протокол решает ту же самую задачу, но без меток времени . Этапы (1) - (15) такие же, как в двухпроходном алгоритме, но T
A
= T
В
= 0.
(16) Алиса сверяет полученную версию R
A
с R
A
, которое было отправлено Бобу на этапе (3).
(17) Алиса посылает Бобу D
A
(R
В
).
(18) Боб использует E
А
, чтобы расшифровать D
А
(R
В
). Таким образом одновременно проверяются подпись
Алисы и целостность подписанной информации .
(19) Алиса сверяет полученную версию R
В
с R
В
, которое было отправлено Алисе на этапе (10 ).

24.10 Почта с повышенной секретностью PRIVACY-ENHANCED MAIL (PEM)
Почта с повышенной секретностью (Privacy-Enhanced Mail, PEM) представляет собой стандарт Internet для почты с повышенной секретностью, одобренный Советом по архитектуре Internet (Internet Architecture Board,
IAB) для обеспечения безопасности электронной почты в Internet. Первоначальный вариант был разработан
Группой секретности и безопасности (Privacy and Security Research Group, PSRG) Internet Resources Task Force
(IRTF), а затем их разработка была передана в Рабочую группу PEM Internet Engineering Task Force (IETF)
PEM Working Group. Протоколы PEM предназначены для шифрования, проверки подлинности, проверки цел о- стности сообщения и управления ключами .
Полностью протоколы PEM сначала были детально описаны в ряде RFC (Requests for Comment, Запросы комментариев) в [977] и затем пересмотрены в [978]. Третья итерация протоколов [979, 827, 980] сведена в
[177, 178]. Протоколы были изменены и улучшены, и окончательные протоколы детально описываются в др у- гом наборе RFC [981, 825, 76, 802]. В другой статье Мэтью Бишопа (Matthew Bishop) [179] подробно описаны все изменения. Попытки реализации PEM рассматриваются в [602, 1505, 1522, 74, 351, 1366, 1367]. См. также
[1394].
PEM является расширяемым стандартом. Процедуры и протоколы PEM разработаны так, чтобы быть со- вместимыми со множеством подходов к управлению ключами , включая симметричную схему и использование открытых ключей для шифрования ключей шифрования данных . Симметричная криптография применяется для шифрования текста сообщений. Для контроля целостности сообщения используются криптографические спос о- бы хэширования. Другие документы поддерживают механизмы управления ключами с помощью сертификатов открытых ключей, алгоритмов, режимов и связанных идентификаторов, а также и электронные подробности,
инфраструктуру и процедуры управления ключами.
PEM поддерживает только определенные алгоритмы, но позволяет добавлять и более поздние алгоритмы .
Сообщения шифруются алгоритмом DES в режиме CBC. Проверка подлинности, обеспечиваемая средством
Проверки целостности сообщения (Message Integrity Check, MIC), использует MD2 или MD5. Симметричное управление ключами может применять либо DES в режиме , либо тройной DES с двумя ключами (так называе- мый режим EDE). Для управления ключами PEM также поддерживает сертификаты открытых ключей, исполь- зуя RSA (длина ключа до 1024 битов) и стандарт X.509 для структуры сертификатов.
PEM обеспечивает три сервиса повышения секретности: конфиденциальность, проверка подлинности и ко н- троль целостности сообщений. К электронной постовой системе не предъявляется никаких специальных треб о- ваний. PEM может быть встроены выборочно, в определенные узлы или у определенных пользователей, не вл и- яя на работу остальной сети.
Документы PEM
PEM определяется в следующих четырех документах :
— RFC 1421: Часть I, Процедуры шифрования и проверки подлинности сообщений . В этом документе опре- деляются процедуры шифрования и проверки подлинности сообщений, которые должны обеспечить функции почты с повышенной секретностью для передачи электронной почты в Internet.
— RFC 1422: Часть II, Управление ключами с помощью сертификатов . В этом документе определяется ар- хитектура и инфраструктура управления ключами, которые основаны на методе сертификатов открытых ключей, предоставляющих информацию о ключах отправителям и получателям сообщений .
— RFC 1423: Часть III, Алгоритмы, режимы и идентификаторы. Этот документ содержит определения,
форматы, ссылки и цитаты для криптографических алгоритмов, режимов использования и связанных идентификаторов и параметров.
— RFC 1424: Часть IV, Сертификация ключей и родственные функции . В этом документе описываются три типа функций, поддерживаемых PEM: сертификация ключей, хранение и извлечение списка отозванных сертификатов (certificate revocation list, CRL).
Сертификаты
PEM совместим со схемой проверки подлинности, описанной в [304], см. также [826]. PEM представляет со- бой надмножество X.509, определяя процедуры и соглашения для инфраструктуры управления ключами, и с- пользуемой с PEM и в будущем другими протоколами (включая стеки TCP/IP и OSI).
Инфраструктура управления ключами использует общий корень для всей сертификации Internet. Центр реги- страционной политики (Internet Policy Registration Authority, IPRA) определяет глобальную стратегию, приме- нимую ко всей иерархии. Ниже корня - IPRA - находятся Центры сертификационной политики (Policy Certifica- tion Authorities, PCA), каждый из которых определяет и опубликовывает свою стратегию регистрации пользов а- телей и организаций. Каждый PCA сертифицирован IPRA. Следом за PCA идут CA, сертифицирующие пользо-
вателей и и управляющие организационными подразделениями (департаментами, офисами, дочерними комп а- ниями). Первоначально предполагалось, что большинство пользователей будет регистрироваться в качестве членов организаций.
Как ожидается, ряд PCA будет обеспечивать сертификацию пользователей, не входящих ни в одну организ а- цию. Предполагается выделить один или несколько PCA для регистрации пользователей, желающих воспольз о- ваться преимуществами секретности PEM и сохранить анонимность. Стратегия этих PCA будет позволять реги- стрировать пользователей, не желающих раскрывать свои личности .
Сообщения PEM
Сердцем PEM является формат сообщений. На 20-й показано зашифрованное сообщение при симметричном управлении ключами. На 19-й показано подписанное и зашифрованное сообщение при управлении ключами на базе открытых ключей, и на Figure 24.6 показано подписанное (но незашифрованное) сообщение при управл е- нии ключами на базе открытых ключей.
-----BEGIN PRIVACY-ENHANCED MESSAGE-----
Proc-Type: 4,ENCRYPTED
Content-Domain: RFC822
DEK-Info: DES-CBC,F8143EDE5960C597
Originator-ID-Symmetric: schneler@counterpane.com,,
Recipient-ID-Symmetric: schneler@chinet.com,ptf-kmc,3
Key-Info
:
DES-ECB,RSA-MD2,9FD3AAD2F2691B9A,B70665BB9BF7CBCDA60195DB94F727D3
Recipient-lD-Symmetric: penl-dev@tis.com,ptf-kmc,4
Key-Info :
DES-ECB,RSA-MD2,161A3F75DC82EF26,E2EF532C65CBCFF79F83A2658132DB47
LLrHBOeJzyhP+/fSStdH8okeEnv47jxe7SJ/iN72ohNcUk2jHEUSoHlnvNSIHE9M
8tEjmF/zxB+bATMtPjCUHbz8Er9wloxIkjHUlBEpvXROUrUzYbkNpkOagV2IzUpk
J6UiRRGcDSvzrsoK+oNvqu6z7Xs5Xfz5rDqUcMlKlZ6720dcBHGGsDLpTpSCnpot dXd/H5LMDHnonNvPCmQUHt==
-----END PRIVACY ENHANCED MESSAGE-----
Рис. 24-4. Пример встроенного сообщения (симметричный случай)
-----BEGIN PRIVACY-ENHANCED MESSAGE-----
Proc-Type: 4,ENCRYPTED
ContentDomain: RFC822
DEK-Info: DESCBC,BFF968AA74691AC1 0riginator - Certificate :
MIIBlTCCAScCAWuwDQYJKoZIhvcNAQECBQAwUTELMAkGAlUEBhMCVVMxIDAeBgNV
BAoTFIJTQSBEYXRhIFNIY3VyaXR5LCBJbmMuMQ8wDQYDVQQLEmZCZXRhIDExDzAN
BgNVBAsTBk5PVEESWTAeFw05MTA5MDQxODM4MTdaFmO5MzA5MDMxODM4MTZaMEUx
CzAJBgNVBAYTAlVTMSAmHgYDVQQKExdSUOEgRGFOYSBTZWNlcmlOeSwgSW5jLjEU
MBIGAIUEAxMLVGVzdCBVc2VyIDEmHTAKBgRVCAEBAglCAANLADBIAkEAwHZHI7i+
yJcqDtjJComzTdBJrdAiLAnSC+CnnjOJEEyuQiBgkGrgIh3j8/xOfM+YrsyFlu3F
LZPVtzlrldhYFJQI DAQABMAOGCSqGSIb3DQEBAgUAAIkACKrOPqphJYwlj+YPtc iWlFPuN5jJ79Khfg7ASFxskYkEMjRNZV/HZDZQEhtVaU7Jxfzs2mfX5byMp2X3U/
5XIJXGx7qlJsDgHQGs7Jk9H8CHlfuSHUgN4w==
Key-Info: RSA,
I3rRIGXUGWAF8js5wCzRTkdh034PTHdRZY9Tuvm03M+NM7fx6qc5uIxps2LrlgO+
wGrtiUm/ovtKdlnzeZQ/aQ==
Issuer-Certificate:
MIIB3DCCAUgCAQowDQYJKoZIhvcNAQECBQAwTzELMAkGAIUEBhMCVVMxIDAeBgNV
BAoTFIJTQSBEYXRhIFNIY3VyaXR5LCBJbmMuMQ8mDQYDVQQEEwZCZXRhIDExDTAE
BgNVBAsTBFRMQOEwHhcNOTEmOTAxMDgwMDAwWhcNOTlwOTAxMDclOTU5HjBRMQsw
CQYDVQQGEwJVUzEgMB4GAIUEChMXUINBIERhdGEgU2VjdXJpdHksIEIuYy4xDzAN
BgNVBAsTBkJIdGEgMTEPMAOGAIUECxMGTk9UQVJZMHAmCgYEVQgBAQICArmDYgAm
XwJYCsnp61QCxYykNIODwutF7jMJ3kE+3PjYyHOwk+79rLg6X65B/ED4bJHt05XH
cqAz/7R7XhjYCmOPcqbdzoACZtIIETrKrcJiDYoP+DkZ8klgCk7hQHpbImIDAQAB
MAOGCSqGSIb3DQEBAgUAA38AAICPv4f9Gx/tY4+p+4DB7MV+tKZnvBoy8zgoMGOx dD2jMZ/3HsyWKHgSFOeH7AJB3qr9zosG47pyMnTf3aSy2nBO7CMxpUHRBcXUpE+x
EREZd9++32ofGBIXaIaInOgVUnOOzSYgugiQO77nJLDUjOhQehCizEs5wUJ35a5h
MIC-Info: RSA-MD5,RSA,
UdFJR8u/TIGhfH651eeme210H4tooa3vZCvVNGBZirf/7nrgzHDABz8m9NsXSexv
AjRFbHoNPzBuxwnlOAFeAOHJszE4yBvhG
Recipient-ID-Asymmetric :
MFExCzAJBgNVBAYTAIVTMSAmHgYDVQQKExdSUOEgRGFOYSBTZHNlcmIOeSwgSH5j
LjEPMAOGAIUECxMGQftiVOYSAxMQ81tfDQYDVQQLEwZOTIRBUIk=,
66
Key-Info: RSA,
06BSIww9CTyHPtS3bMLD+EOhejdvX6QvlHK2ds2sQPEaXhX8EhvVphHYTjmekdHv
7xOZ3Jx2vTAhOYHMcqqCjA==
qeWlj/YJ2Uf5ng9yznPbtDOmYloSwIuV9FRYx+gzY+81Xd/NQrXHfi6/MhPfPF3d jIqCJAxvld2xgqQimUzoSla4r7kQQ5c/Iua4LqKeq3clFzEv7MbZhA==
-----END PRIVACY ENHANCED MESSAGE-----
Рис. 24-5. Пример встроенного шифрованного (ENCRYPTED) сообщения (асимметричный случай).
Первым полем является "Proc-Type", идентификатор типа обработки, которой подверглось сообщение . Су- ществует три возможных типа сообщений . Спецификатор "ENCRYPTED" обозначает, что сообщение зашифро-
вано и подписано. Спецификатор "MIC-ONLY" и "MIC-CLEAR" указывают, что сообщение подписано, но не зашифровано. Сообщения MIC-CLEAR не кодируются и могут быть прочитаны с помощью другого, не вход я- щего в PEM программного обеспечения. Для преобразования сообщений MIC-ONLY в удобочитаемую форму необходимо программное обеспечение PEM. Сообщение PEM подписывается всегда, а шифрование не является обязательным.
Следующее поле, "Content-Domain", задает тип почтового сообщения. Оно не влияет на безопасность. Поле "DEK-Info" содержит информацию о ключе обмена данными (Data Exchange Key, DEK), алгоритме, исполь- зуемом для шифрования текста, и параметрах, связанных с алгоритмом шифрования . В настоящее время опре- делен единственный алгоритм - DES в режиме CBC, "DES-CBC" Второе подполе содержит IV. В будущем для
PEM могут быть определены и другие алгоритмы, их использование будет запротоколировано в поле DEK-Info и других полях, определяющих алгоритм .
В сообщениях с симметричным управлением ключами (см. 20th) следующим полем будет "Originator-ID-
Symmetric" с тремя подполями. Первое подполе с помощью уникального адреса электронной почты определяет отправителя. Второе поле не является обязательным и определяет орган, выдавший заменяемый ключ . Третьим является необязательное подполе Версия/Окончание срока .
Далее, при использовании симметричного управления ключами, у каждого получателя есть два поля :
"Recipient-ID-Symmetric" и "Key-Info." Поле "Recipient-ID-Symmetric" содержит три подполя, которые опреде- ляют получателя также, как подполя поля "Originator- ID-Symmetric" определяют отправителя.
Поле "Key-Info" задает параметры управления ключами. У этого поля четыре подполя. Первое определяет алгоритм, использованный для шифрования DEK. Так как в рассматриваемом сообщении применяется симме т- ричное управление ключами, то отправитель и получатель используют общий ключ . Он называется заменяе- мым ключом (Interchange Key, IK) и используется для шифрования DEK. DEK может быть зашифрован либо с помощью DES в режиме ECB (этот способ обозначается "DES-ECB"), либо тройным DES ("DES-EDE"). Второе подполе определяет алгоритм MIC. Может использоваться MD2 (обозначается "RSA-MD2") или MD5 ("RSA-
MD5"). Третье подполе, DEK, и четвертое подполе, MIC, шифруются с помощью IK.
На 19-й и 18-й показаны сообщения, в которых используется управление ключами с помощью открытых ключей (в перечне PEM такой способ называется асимметричным ). Заголовки изменяются. В сообщениях EN-
CRYPTED после поля "DEK-Info" идет поле "Originator-Certificate". Форма сертификата соответствует станда р- ту X.509 (см. раздел 24.9). Следующим полем является "Key-Info" с двумя подполями. Первое подполе опреде- ляет алгоритм с открытым ключом, использованный для шифрования DEK, в настоящее время поддерживается только RSA. Следующее подполе - DEK, зашифрованный открытым ключом отправителя . Это необязательное поле, которое позволяет отправителю расшифровать свое собственное сообщение, возвращенное почтовой си с- темой. Следующим полем является "Issuer-Certificate", сертификат организации, подписавшей сертификат о т- правителя ("Originator-Certificate").
Далее при асимметричном управлении ключами следует поле "MIC-Info". Первое подполе задает алгоритм вычисления MIC, а второе - алгоритм, использованный для подписи MIC. Третье подполе содержит MIC, под- писанный закрытым ключом отправителя .

-----BEGIN PRIVACY-ENHANCED MESSAGE-----
Proc-Type: 4,MIC-ONLY
Content-Domain: RFC822 0riginator - Certificate :
MIIBITCCAScCAHUwDQYJKoZIhvcNAQECBQAwTzELMAkGAIUEBhMCVVMxlDAeBgNV
BAoTFIJTQSBEYXRhIFNIY3VyaXR5LCBJbmMuMQ8wDQYDVQQLEwZCZXRhIDExDzAN
BgNVBAsTBk5PVEFSHTAeEw05MTA5MDQxODM4MTdaFw05MzA5MDMxODM4MTZaMEUx
CzAJBgNVBAYTAIVTMSAwHgYDVQQKExdSUOEgRGFOYSBTZMNlcmlOeSwgSW5jLjEU
MEIGAIUEAxMLVGVzdCBVc2VylDEwHTAKBgRVCAEBAgICAANLADBIAkEAmHZHI71+
yJcqDtjJCowzTdBJrdAiLAnSC+CnnjOJELyuQiBgkGrgIh3j8/xOfM+YrsyFlu3F
LZPVtzlndhYFJQIDAQABMAOGCSqGSIb3DQEBAgUAAIkACKrOPqphJYwlj+YPtcIq
ItJIFPuN5jJ79Khfg7ASFxskYkEMjRNZV/HZDZQEhtVaU7Jxfzs2mfX5bMp2X3U/
5XUXGx7qusDgHQGs7Jk9W8CW1fuSI4UgN4w==
Issuer-Certificate:
MIIB3DCCAUgCAQowDQYJKoZIhvcNAQECBQAkTzELMAkGAIUEBhMCVVMxlDAeBgNV
BAoTFIJTQSBEYXRhIFNIY3VyaXR5LCBJbmMuMQ8wDQYDVQQLEIZCZXRhIDExDTAE
BgNVBAsTBFRMQOEwHhcNOTEwOTAxMDgwMDAmkmcNOTImOTAxMDclOTU5HjBRMQsw
CQYDVQQGEwJVUzEgMB4GAIUEChMXUINBIERhdGEgU2VjdXJpdHksIEIuYywxDzAN
BgNVBAsTBkJIdGEgMTEPMAOGAIUECxMGTk9UQVJZMHAwCgYEVQgBAQICArwDYgAw
XwJYCsnpelQCxYkNIODwlltF/jMJ3kE+3PjYjHOwk+/9rEg6X65B7LD4bJHt05XH
cqAz77R7XhjYCmOPcqbdzoACZIlETrKrcJIDYoP+DkZ8klgCk7hQHpbltflDAQAB
MAOGCSqGSIb3DQEBAgUAA38AAICPv4f9Gx7tY4+p+4DB7MV+tKZrlvBo8zgoMGOx dD2jMZ73Hs*kl4gSFOeH7AJB3qr9zosG47pyMnTf3aS2nBO7CMxpUkfRBcXUpE+x
EREZd9++32otGBIXaIalnOgVUnOOzSYgljglQO77nJEDUOhQehCizEs5mUJ35a5h
MIC-Info: RSA-MD5,RSA,
jV20fH+nnXHU8bnE8kPAad7mSQITDZIbVuxvZAOVRZ5q5+EjI5bQvqNeqOUNQjr6
EtE7K2QDeVMCj/XsdJIA8fA==
LSBBIGIIc3NhZ2UgZrti9lHVzZSBpbBOZXNOaH5nLgOKESBGb2xsb3dpbmcgaXMg
YSBibGFuaj/Bsakf51OgOKDQpUaGIzIGIzIHRoZSBIbrnQuDQo=
-----END PRIVACY-ENHANCED MESSAGE-----
Рис. 24-6. Пример встроенного MIC-ONLY сообщения (асимметричный случай).
Следующие поля связаны с получателями. Каждому получателю соответствуют два поля : "Recipient-ID-
Asymmetric" и "Key-Info". У поля"Recipient-ID-Asymmetric" два подполя. Первое определяет орган, выдавший открытый ключ получателя, а вторым является необязательное подполе Версия/Окончание срока . Поле "Key-
Info'' задает параметры управления ключами: первое подполе определяет алгоритм, использованный для ши ф- рования сообщения, а вторым подполем служит DEK, зашифрованный открытым ключом получателя.
Безопасность PEM
Длина ключей RSA, используемых в PEM, может меняться в диапазоне от 508 до 1024 битов. Этого доста- точно практически для любого уровня безопасности . Более вероятно, что вскрытие будет направлено против протоколов управления ключами. Мэллори может украсть ваш закрытый ключ - не записывайте его нигде - или попытаться подсунуть вам фальшивый открытый ключ . Процедуры сертификации ключей в PEM делают это невозможным, если все пользователи строго следуют соответствующим процедурам , но, как известно, люди часто неаккуратны.
1   ...   53   54   55   56   57   58   59   60   ...   78


написать администратору сайта