Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции (3).doc
Скачиваний:
203
Добавлен:
28.06.2014
Размер:
508.93 Кб
Скачать

5.3.4.2. Эцп «вслепую» и ее применение

  • протокол Д. Чоума

  • протокол «разделяй и властвуй»

Протокол Д. Чоума

Пусть A имеет некоторый текст P и хочет, чтобы B его подписал «вслепую» (не зная содержимого этого текста).

  1. A: генерация случайного числа b

  2. A: R = EPKB(b)P{mod n}

EPKB(b) – «слепой множитель», не позволит узнать B содержимое P

Здесь предполагается использование алгоритма RSA: EPKB(b) = bx, (x, n) – открытый ключ.

  1. AB: R

  2. B: R= ESKB(R) = bESKB(P){mod n}

ESKB(R) = ESKB(EPKB(b)P{mod n}) = (EPKB(b)P{mod n})y{mod n} =

EPKB(b)y{mod n}Py{mod n} = ESKB(EPKB(b))Py{mod n} = bESKB(P){mod n}

(y, n) – секретный ключ

  1. BA: R

  2. A: ESKB(P) = R\b{mod n}

Протокол «разделяй и властвуй»

Проблема предыдущего протокола: B не хочет подписывать тексты, совершенно ничего не зная о его содержимом. Решение – A передает B n текстов, причем A не против того, что B узнает содержимое (n-1) из них. B, узнав содержимое (n-1) текста, доверяет A и подписывает оставшийся, нераскрытый, текст.

A имеет{Pi| i = 1, …, n}

  1. Ri= EPKB(bi)Pi{mod n}, i = 1, …, n (наложение«слепыхмножителей»)

  2. AB: {Ri| i = 1, …, n}

  3. B: выбирает {Ri1, Ri2, …, Rin-1}

пусть I = {i1, i2, …, in-1}, k = in – нераскрываемый текст, который B будет подписывать

  1. BA: запрос {bj | jI}

  2. AB:{bj | jI}

  3. B: Pj = Rj \ EPKB(bj){mod n}, jI; убеждается в корректности Pj

  4. B: R = ESKB(Rk) (подпись нераскрытого текста)

  5. BA: R

5.3.4.3. Протокол защищенного обмена данными

A необходимо передать B зашифрованный текст P. A шифрует текст P сеансовым ключом K и должен послать B зашифрованный P и K. Как сделать это безопасно?

CA – сертификационный центр

  1. A: P= P || sign(P) (sign(P) = ESKA(H(P))

  2. A: генерация сеансового ключа K, C = EK(P)

  3. ACA: запросPKB

  4. CAA: ESKCA(PKB)

  5. A: PKB = DPKCA(ESKCA(PKB))

  6. A: K= EPKB(K), C= C || K

  7. AB: C

  8. B: K = DSKB(K), P= DK(C)

  9. BCA: запросPKA

  10. CAB: ESKCA(PKA)

  11. B: PKA = DPKCA(ESKCA(PKA))

  12. B: H(P) = DPKA(sign(P)),вычислениеH(P)

  13. B: H(P) == H(P)

5.3.4.4.Программа pgp

  • общая информация

  • ключи

  • распространение открытых ключей

  • дополнительные возможности

Автор – Фил Циммерман. PGP (Pretty Good Privacy) – это криптосистема, обеспечивающая безопасность и целостность электронной почты, файлов, папок и разделов дисков. PGP включает средства шифрования, цифрового подписания и управления криптографическими ключами. PGP – это гибридная криптосистема, объединяющая средства симметричной и асимметричной криптографии.

  • симметричная криптография (DES, 3-DES, CAST, IDEA) для сеансовых ключей;

  • асимметричная криптография (MD5, RSA, SHA, DSA).

Сеансовые ключи создаются на основе датчика случайных чисел. Инициализация датчика с помощью движений мышки и информации о пользователе.

Сеансовый ключ защищается с помощью открытого ключа пользователя. Секретный ключ защищается ключевой фразой.й

Распространение открытых ключей:

  • удостоверяющий центр – некоторая организация, выдающая сертификат. Сертификат содержит: сам ключ, алгоритм шифрования, срок действия и информацию о владельце (стандарт X.509);

  • модель доверия: открытый ключ имеет уровень доверия (абсолютное, частичное, отсутствие), истинность открытого ключа определяется наличием одной подписи абсолютного доверия или двух подписей частичного доверия.

Дополнительные возможности:

  • Secure viewer,

  • интеграция с почтовыми клиентами,

  • Free space wiper,

  • PGPdisk,

  • PGPadmin.