Распределение ответственности
Предположим, что вы собираетесь в отпуск. Ваш шеф попросил, чтобы вы сообщили пароль со своего компьютера кому-либо из коллег. Однако вы не можете полностью переложить ответственность за сохранность своих ценных данных ни на одного из товарищей по работе. В этой ситуации вам следует подумать о распределении ответственности.
Существует возможность разделить секретное сообщение на части, каждая из которых не имеет никакого смысла, но если их определенным образом соединить вместе, снова получится исходное сообщение. Таким образом вы сможете поделить свой пароль на части и; уходя в отпуск, оставить каждому из коллег по одной его части, чтобы, только собравшись все вместе, они оказались в состоянии запустить ваш компьютер. Сделать это в одиночку из них не сможет никто.
Простейший криптографический протокол позволяет Дмитрию поровну распределить между Антоном и Борисом ответственность за сохранение сообщения в тайне:
1. Дмитрий генерирует случайную битовую строку R, которая имеет ту
же длину, что и исходное сообщение М.
2. Дмитрий складывает М с R по модулю 2 и получает S.
3. Дмитрий вручает R Антону, a S — Борису.
Чтобы восстановить сообщение М в исходном виде, Антон и Борис должны совместно выполнить последний шаг протокола:
1. Антон и Борис складывают R и S по модулю 2 и получают М.
В умелых руках данный протокол является весьма надежным. Знание S или R не позволяет реконструировать М. Дмитрий шифрует сообщение при помощи одноразового блокнота и отдает полученный в результате шифртекст одному человеку, а сам блокнот — другому.
Этот протокол можно легко применять для любого числа участников. Если участников 4, он будет выглядеть следующим образом:
1. Дмитрий генерирует три случайных битовых строки R, S и Т, которые
имеют ту же длину, что и исходное сообщение М.
2. Дмитрий складывает М, R, S и Т по модулю 2 и получает U.
3. Дмитрий вручает R Антону, S — Борису, Т — Владимиру, U —
Георгию.
Чтобы восстановить сообщение М в исходном виде, Антон, Борис, Владимир и Георгий должны совместно выполнить последний шаг протокола:
1. Антон, Борис, Владимир и Георгий складывают R, S, Т и U по
модулю 2 и получают М.
Одним из участников протокола является Дмитрий, который наделен неограниченными правами. Например, Дмитрий может зашифровать какую-нибудь абракадабру вместо М, а потом утверждать, что Антон и другие участники протокола являются хранителями настоящей тайны, а не какой-то чепухи. Чтобы разоблачить Дмитрия, им необходимо собраться вместе и восстановить исходное сообщение. А еще Дмитрий может сначала раздать части своего сообщения Антону, Борису, Владимиру и Георгию, а затем сложить М и U по модулю 2 и заявить, что только Антон, Борис и Владимир нужны для восстановления сообщения в исходном виде, а от Георгия можно избавиться. Поскольку сообщение М всецело принадлежит только Дмитрию, он может распоряжаться им, как того пожелает.
Основной недостаток криптографического протокола, распределяющего ответственность за сохранение сообщения в тайне, состоит в том, что если хотя бы один из его участников потеряет доверенную ему часть, будет также безвозвратно утрачено и само сообщение. Если, конечно, Дмитрий не помнит его наизусть. В результате в распоряжении участников протокола останется только длина исходного сообщения. Но вряд ли они захотят довольствоваться только этим.
Существуют ситуации, в которых необходимо уметь восстанавливать секретное сообщение даже в отсутствие некоторых участников протокола. Например, вы пишете программу для управления запуском межконтинентальных ракет. Естественно, вы хотите сделать так, чтобы если офицер, имеющий доступ к “ядерной кнопке”, сойдет с ума и захочет уничтожить какой-либо континент, у него это ни в коем случае не получится. У “ядерной кнопки” должны собраться вместе по меньшей мере пятеро сумасшедших офицеров, чтобы с помощью вашей программы стереть в порошок Америку.
Ситуацию можно еще усложнить. Допустим, что для нажатия “ядерной кнопки” в нашей стране нужны 1 генерал и 3 полковника. А если генерал, по причине своего старческого склероза, забыл приехать к “ядерной кнопке” в назначенное время, достаточно и пятерых полковников. При этом, если собрались всего 4 полковника, Америке ничего не грозит до тех пор, пока 5 полковников не окажутся в полном сборе. Или пока генерал не приедет.
Криптологи придумали так называемый пороговый протокол, который позволяет распределять ответственность даже еще более сложным образом. В общем случае берется любое секретное сообщение (пароль, код запуска баллистических ракет, рецепт приготовления “Кока-колы”) и делится на n частей (называемых долями) так, что для реконструкции исходного сообщения обязательно нужны m из них. Такой протокол более точно именуется (т, п)-пороговым протоколом.
Например, при использовании (3,4)-порогового протокола Дмитрий может поделить между Антоном, Борисом, Владимиром и Георгием секретный пароль для включения своего персонального компьютера таким образом, что трое из них, собравшись вместе, будут в состоянии восстановить этот пароль и включить компьютер Дмитрия. Если Владимир неожиданно попадет в больницу в бессознательном состоянии, то же самое смогут сделать Антон, Борис и Георгий. Однако, если Борис в это время будет в командировке, без него Антон и Георгий так и не смогут запустить компьютер Дмитрия.
- Группа подготовки издания:
- 199034, Санкт-Петербург, 9-я линия, 12. Предисловие
- Компьютерная безопасность Глава 1
- Угрозы компьютерной безопасности Компьютерная преступность в России
- Тенденции
- Internetкак среда и как орудие совершения компьютерных преступлений
- Синдром Робина Гуда
- История одного компьютерного взлома
- Компьютер глазами хакера
- Кто такие хакеры
- Методы взлома компьютерных систем
- Атаки на уровне систем управления базами данных
- Атаки на уровне операционной системы
- Атаки на уровне сетевого программного обеспечения
- Защита системы от взлома
- Глава 2
- Программы-шпионы Программные закладки
- Модели воздействия программных закладок на компьютеры Перехват
- Искажение
- Уборка мусора
- Наблюдение и компрометация
- Защита от программных закладок
- Защита от внедрения программных закладок
- Выявление внедренной программной закладки
- Удаление внедренной программной закладки
- Троянские программы
- Откуда берутся троянские программы
- Где обитают и как часто встречаются троянские программы
- Как распознать троянскую программу
- Клавиатурные шпионы
- Имитаторы
- Фильтры
- Заместители
- Как защитить систему от клавиатурных шпионов
- Глава 3
- Парольная защита операционных систем Парольные взломщики
- Что такое парольный взломщик
- Как работает парольный взломщик
- Взлом парольной защиты операционной системыUnix
- Взлом парольной защиты операционной системыWindows nt База данных учетных записей пользователей
- Хранение паролей пользователей
- Использование пароля
- Возможные атаки на базу данныхSam
- Защита системы от парольных взломщиков
- Как сделать парольную защитуWindows 95/98 более надежной
- Как установить парольную защитуWindows 95/98
- Почему парольная защита Windows 95/98 ненадежна
- Как предотвратить несанкционированную загрузку системы
- Как запретить кэширование паролей вWindows 95/98
- Соблюдайте осторожность: парольная защита ненадежна
- Глава 4
- Безопасность компьютерной сети Сканеры
- Сканер в вопросах и ответах Что такое сканер?
- Каковы системные требования для работы со сканерами?
- Трудно ли создать сканер?
- Что не по силам даже самому совершенному сканеру?
- Насколько легальны сканеры?
- В чем различие между сканерами и сетевыми утилитами?
- Сканер в действии
- Satan, Jackal и другие сканеры
- Анализаторы протоколов
- Локальное широковещание
- Анализатор протоколов как он есть
- Защита от анализаторов протоколов
- Криптографические методы защиты информации Глава 5
- Основы криптографии Зачем нужна криптография
- Терминология Шифрование и расшифрование
- Аутентификация, целостность и неоспоримость
- Шифры и ключи
- Симметричные алгоритмы шифрования
- Алгоритмы шифрования с открытым ключом
- Криптоаналитические атаки
- Надежность алгоритма шифрования
- Сложность криптоаналитической атаки
- Шифры замены и перестановки
- Шифры замены
- Шифры перестановки
- Роторные машины
- Операция сложения по модулю 2
- Одноразовые блокноты
- Компьютерные алгоритмы шифрования
- Глава 6
- Криптографические ключи Длина секретного ключа
- Сложность и стоимость атаки методом тотального перебора
- Программная атака
- "Китайская лотерея"
- Биотехнология
- Термодинамические ограничения
- Однонаправленные функции
- Длина открытого ключа
- Какой длины должен быть ключ
- Работа с ключами
- Генерация случайных и псевдослучайных последовательностей
- Псевдослучайные последовательности
- Криптографически надежные псевдослучайные последовательности
- Генерация ключей
- Сокращенные ключевые пространства
- Плохие ключи
- Случайные ключи
- СтандартAnsi x9.17
- Нелинейные ключевые пространства
- Передача ключей
- Проверка подлинности ключей
- Контроль за использованием ключей
- Обновление ключей
- Хранение ключей
- Запасные ключи
- Скомпрометированные ключи
- Продолжительность использования ключа
- Уничтожение ключей
- Глава 7
- Криптографические протоколы Что такое криптографический протокол
- Зачем нужны криптографические протоколы
- Распределение ролей
- Протокол с арбитражем
- Протокол с судейством
- Самоутверждающийся протокол
- Протокол обмена сообщениями с использованием симметричного шифрования
- Протокол обмена сообщениями с использованием шифрования с открытым ключом
- Гибридные криптосистемы
- "Шарады" Меркля
- Цифровая подпись
- Подписание документов при помощи симметричных криптосистем и арбитра
- Подписание документов при помощи криптосистем с открытым ключом
- Отметка о времени подписания документа
- Использование однонаправленных хэш-функций для подписания документов
- Дополнительная терминология
- Несколько подписей под одним документом
- Неоспоримость
- Цифровая подпись и шифрование
- Основные криптографические протоколы Обмен ключами
- Обмен ключами для симметричных криптосистем
- Обмен ключами для криптосистем с открытым ключом
- Атака методом сведения к середине
- Блокировочный протокол
- Протокол обмена ключами с цифровой подписью
- Одновременная передача ключа и сообщения
- Множественная рассылка ключей и сообщений
- Аутентификация
- Аутентификация при помощи однонаправленных функций
- Отражение словарной атаки при помощи "изюминок"
- Периодическая сменяемость паролей
- Аутентификация при помощи криптосистем с открытым ключом
- Формальный анализ криптографических протоколов
- Многоключевая криптография с открытым ключом
- Множественная рассылка шифрованных сообщений
- Распределение ответственности
- Распределение ответственности и мошенничество
- Вспомогательные криптографические протоколы Отметка о времени создания файла
- Отметка о времени создания файла и арбитраж
- Связующий протокол
- Распределенный протокол
- Подсознательный канал
- Практическое применение подсознательного канала
- Неоспоримая цифровая подпись
- Цифровая подпись с назначенным конфирмантом
- Цифровая подпись по доверенности
- Групповые подписи
- Цифровая подпись с дополнительной защитой
- Предсказание бита
- Предсказание бита с помощью симметричной криптосистемы
- Предсказание бита с помощью однонаправленной функции
- Предсказание с помощью генератора псевдослучайных битовых последовательностей
- Бросание монеты
- Бросание монеты с помощью предсказания бита
- Бросание монеты с помощью однонаправленной функции
- Бросание монеты с помощью криптосистемы с открытым ключом
- Игра в покер
- Специальные криптографические протоколы Доказательство с нулевым разглашением конфиденциальной информации
- Протокол доказательства с нулевым разглашением конфиденциальной информации
- Параллельные доказательства с нулевым разглашением конфиденциальной информации
- Неинтерактивные протоколы доказательства с нулевым разглашением конфиденциальной информации
- Удостоверение личности с нулевым разглашением конфиденциальной информации
- Неосознанная передача информации
- Анонимные совместные вычисления
- Вычисление средней зарплаты
- Как найти себе подобного
- Депонирование ключей
- Депонирование ключей и политика
- Глава 8
- Надежность криптосистем
- Как выбрать хороший криптографический алгоритм
- Криптографические алгоритмы, предназначенные для экспорта из сша
- Симметричный или асимметричный криптографический алгоритм?
- Шифрование в каналах связи компьютерной сети
- Канальное шифрование
- Сквозное шифрование
- Комбинированное шифрование
- Шифрование файлов
- Аппаратное и программное шифрование Аппаратное шифрование
- Программное шифрование
- Сжатие и шифрование
- Как спрятать один шифртекст в другом
- Почему криптосистемы ненадежны
- Реализация
- Учет реальных потребностей пользователей
- Законодательные ограничения
- Слишком малая длина ключа
- Потайные ходы
- Шифрование вокруг нас
- Приложение Англо-русский криптологический словарь с толкованиями
- Лексикографические источники
- Сокращения Английские
- Русские
- Условные обозначения
- Криптологический словарь
- Глава 1 6
- Глава 2 24
- Глава 3 52
- Глава 4 75
- Глава 5 92
- Глава 6 110
- Глава 7 138
- Глава 8 204