Отправка сообщения в будущее
Министерство образования Российской Федерации
Пермский государственный университет
Механико-математический факультет
Кафедра математического обеспечения вычислительных систем
УДК 519.6+681.83
ОТПРАВКА СООБЩЕНИЯ В БУДУЩЕЕ
Курсовая работа.
выполнила студентка
3-го курса 1 группы
Научный руководитель
профессор
Миков Александр Иванович.
Пермь 2000 г.
Аннотация
Вознамерившись погрузиться в летаргический сон или стать клиентом
криогенного дипозитария, Вы наверняка пожелаете послать секретное сообщение в будущее в надежде на то, что его расшифруют
только в нужный срок. Именно рассмотрению решений данной проблемы и посвящена эта работа. Сейчас существует два основных метода
решающие проблему раскрытия сообщения в указанный срок:
. «шарады» с временным замком на базе вычислительных проблем с существенно последовательными алгоритмами решения;
. использования доверенных агентов, принимающих на себя обязательство не раскрывать информацию в течение заданного интервала времени.
Специфика первого метода заключается в том, что в отличие
от традиционных криптографических методов, предполагающих наличие у получателя сообщения секретного ключа отправителя (в
симметричных криптосистемах) или у отправителя сообщения
аутентичного ( подлинного ) открытого ключа получателя ( в
асимметричных криптосистемах ), секретный ключ уничтожается сразу
после шифрования и неизвестен как отправителю, так и
получателю сообщения. А при использовании второго метода с
доверенными доверенных агентов возникает проблемма надёжности,
которая частично может быть решена за счёт применения
криптографической техники разделения секрета. В данной работе
будут рассмотрены оба метода.
Оглавление
1. Ведение ……………………………………………………………4
2. Анализ литературы………………………………………………..5
3. Используемые обозначения……………………………………...6
4. Глава 1. Решаемые проблемы…………………………………....7
5. Глава 2. Методы построения криптосистем с временным раскрытием…………………………………………………………8
1. «Шарады» с временным замком (time – lock puzzles) ……9
3. Схема с использованием доверенных агентов…………14
6. Заключение…………………………………………………………19
7. Список литературы………………………………………………..20
Ведение
Испокон веков не было ценности большей, чем информация. ХХ век -
век информатики и информатизации. Технология дает возможность передавать и
хранить все большие объемы информации. Это благо имеет и оборотную сторону.
Информация становится все более уязвимой по разным причинам:
. возрастающие объемы хранимых и передаваемых данных;
расширение круга пользователей, имеющих доступ к ресурсам ЭВМ, программам и
данным;
. усложнение режимов эксплуатации вычислительных систем.
Поэтому все большую важность приобретает проблема защиты информации от
несанкционированного доступа при передаче и хранении.
Сейчас услуги криптографии необходимы почти во всех
областях деятельности человека. С развитием прогресса,
появляется необходимость решать задачи, которые, совсем недавно, писатели научно-фантастического жанра описывали в своих
произведениях.
Ещё совсем недавно проблема отправки секретных сообщений в будущее волновала только любителей фантастической
литературы. Однако сегодня она становится всё более
актуальной, в связи с научно-техническим прогрессом.
Например, известно, что современные технологии позволяют
«замораживать» тело человека до уровня поддержания
минимальных функций жизнедеятельности организма и надёжно
хранить определённое время. Услуги подобного рода, в ряде
случаев, являются единственной надеждой людей, страдающих
тяжелыми заболеваниями. Следует учесть, что с ростом
продолжительности жизни человека, ухудшения экологической
обстановки, количество таких болезней сильно увеличилось в наши дни. Например, если человек мучается болезнью, которая сегодня неизлечима, но имеет достаточно средств, то он может
«отправить себя в будущее», воспользовавшись услугами криогенных
депозитариев. Именно здесь и появляется проблема надёжности
шифрования сообщений. Очевидно, что «замороженный» человек не
является дееспособным и не может отвечать за какую-либо
секретную информацию. Вместе с тем, он должен иметь возможность оставить некоторые распоряжения ( установить номер счёта, точное
содержание завещания, если произойдёт несчастный случай, историю
болезни и т. п.), которые гарантированно были бы выполнены только по истечении заданного срока – не раньше и не позже.
Эту проблему позволяют решить криптографические методы
обеспечения конфиденциальности и целостности при заданном
времени дешифрования сообщения на неизвестном ключе.
Анализ литературы.
Публикаций на тему данной работы очень мало. Это обусловлено, в первую очередь тем, что ранее не существовало сильной
необходимости в шифровке сообщений на такой длинный период
времени. Первым, кто обратился к сообществу Intеrnet с
предложением рассмотреть подобную задачу в связи с потребностями
людей, пользующихся услугами криогенных депозитариев, был Тимоти
Мэй. Именно он и предложил использовать в криптографической схеме довереннях агентов. Как ответ на этот запрос и возникли
рассматриваемые схемы, которые были разработаны известными
криптографами Рональдом Л. Ривестом , Ади Шамиром и Девидом А.
Вагнером. Насколько мне известно, других криптографических схем,
направленых именно на решение этой проблеммы нет. Никакой
литературы, кроме ответной статьи Ривеста, Шамира, Вагнера и
дополнения этой же статьи в журнале “Конфидент”5’96 мне найти не удалось. Следует учесть, что предложенные схемы основываются на базовых понятиях криптографии, с которыми можно
ознакомиться в любой специализированной литературе.
Используемые обозначения.
. М-секретное сообщение.
. К-секретный ключ, на котором шифруется М.
. t - время, на которое шифруется М.
. t?- текущее время.
. S - производительность компьютера.
. Е- выбранный алгоритм шифрования.
. p ,q – простые числа.
. f(n) –формируется , как произведение чисел (p-1) и (q-1).
. d– количество, доверенных агнтов.
. i–номер агента.
. ?– порог схемы разделения секрета.
. Si,t- секретный ключ агента.
. Di,t – открытый ключ агента.
. yj –“тень” ключа К , j-ого агента
. rj – криптограмма “тени” ключа К , j-ого агента
. F – односторонняя хеш-функция.
Глава 1. Решаемые проблемы.
Кроме сохранения информации о «замороженном», на заданный срок
также, необходимо упомянуть и некоторые другие практические
приложения криптографии с временным раскрытием:
. участник торгов может пожелать «запечатать» предложение цены с тем, чтобы оно было «распечатано» по завершении торговой сессии;
. домовладелец хочет предоставить держателю закладной возможность осуществлять платежи с использованием зашифрованного цифрового кэша (digital cash) с различными датами дешифрования так, чтобы оплата выполнялась в начале каждого следующего месяца;
. частное лицо может пожелать зашифровать свой дневник так, чтобы он мог быть дешифрован по истечении определённого срока;
. схема шифрования с депонированием ключей (key- escrow scheme) может быть реализована на базе “шарад” с временным замком с тем, чтобы правительственные организации могли получить ключи для расшифровки сообщения только только по истечении определённого периода времени.
В некоторых из вышеперечисленных ситуациях время на которое сообщение остаётся секретным колеблется в рамках
1 года, когда в случае с «замороженным» человеком или шифровкой дневника этот срок ограничивается снизу, как
минимум, 2-3 годами , верхняя оценка является вообще
неопределённой. Учитывая данное обстоятельство, естественно было бы предложить два метода шифрования сообщения, на не очень
длительный период времени 2-3 года и на достаточно длительное
время , порядка нескольких десятилетий, что и было сделано. Каждый из методов должен использоваться в соответствующей ситуации.
В основном, криптографическая задача шифрования сообщения
рассматривается таким образом, чтобы полученная криптограмма
могла быть дешифрована ( в том числе и самим отправителем
сообщения) по истечении заданного интервала времени. Атака
на подобную криптосистему считается успешной , если удаётся
дешифровать сообщение существенно ранее установленного срока.
Такой способ защиты, с возможностью раскрытия секретной
информации по истечении определённого времени, и называется
криптографией с временным раскрытием ( timed - release
crypto ).
Глава 2. Методы построения криптосистем с временным раскрытием.
Криптосистема с временным раскрытием, предложенная
Р.Л.Райвестом, А.Шамиром и Д.А.Вагнером получила название «шарады» с временным замком (time – lock puzzles ). Данный подход к
защите информации связан именно с проблемами, возникающими при отправке секретного сообщения в будущее. Его специфика
заключается в том , что в отличие от традиционных
криптографических методов, предполагающих наличие у получателя
сообщения секретного ключа отправителя ( в симметричных
криптосистемах) или у отправителя сообщения аутентичного (
подлинного ) открытого ключа получателя ( в асимметричных
криптосистемах ) , секретный ключ уничтожается сразу после
шифрования и неизвестен как отправителю, так и получателю
сообщения.
В настоящее время существует два основных метода построения криптосистем с временным раскрытием :
. использования доверенных агентов , принимающих на себя обязательство не раскрывать информацию в течение заданного интервала времени.
Очевидно, что при использовании доверенных агентов возникает
проблемма надёжности, которая частично может быть решена за счёт применения криптографической техники разделения секрета.
Процессорное время необходимое для решения «шарады» зависит от
количества и вида применяемого аппаратного обеспечения, а также достижений в области распаралеливания вычислений. Далее будут
рассмотрены оба метода.
«Шарады» с временным замком (time – lock puzzles)
Идея заключается в том, что решение «шарады»
позволяет получить секретный ключ для дешифрования ранее
зашифрованного сообщения. Это значит, что применяя «силовую атаку»
(исчерпывающий перебор в ключевом пространстве), злоумышленник
сможет раскрыть сообщение, только тогда, когда содержание,
раскрытого им сообщения уже не будет актуальным. Как было
отмечено выше, сложность ( время ) решения «шарады» существенно
зависит от количества вычислительных ресурсов . Таким образом ,
основная задача при построении любой «шарады» сводится к
выбору алгоритма доказуемо – последовательной природы, то есть
алгоритма, который не может быть распараллелен в принципе и
эффективность ( сложность ) которого существенно не зависит от
вложенных в аппаратуру и програмное обеспечение средств. При
этом использование нескольких работающих параллельно компьютеров не позволяет ускорить решение «шарады».
Однако такой подход к построению «шарад» не позволяет
точно определить время решения, так как использование различных
технологических элементов приводит к разбросу производительности
конечных аппаратных реализациий. Метод, основаный на использовании доверенных агентов, является более продподчтительным в случае,
когда решение должно быть предьявлено точно в указанный срок.
Необходимо подчеркнуть, что предлагаемый метод построения
«шарад» не позволяет автоматически получать решение через
определённое время, а требует непрерывной работы компьютера в течение заданного времени. Например, решение, рассчитанное на
10 лет, требует непрерывных вычислений в течение всего этого времени. Очевидно, что решение не будет получено через 10 лет, если вычислительный процесс был запущен через 5 лет (
на машине, производительность которой соответствует пятилетней
давности ) после того , как сообщение было зашифровано. Таким
образом по сравнению с использованием доверенных агентов, метод
последовательных ввычислений требует большего количества
ресурсов ( для выполнения непрерывных вычислений ) и может
эффективно применяться для решения простых «шарад» ( например с
временем раскрытия в один месяц ).
Для пояснения задачи рассмотрим следующий пример. Обозначим через М сообщение, которое должно быть зашифровано, а через S производительность ( дешифрований в секунду ) компьютера.
Для шифрования сообщения М так, чтобы оно могло быть
дешифровано по истечении Т секунд, выберем симметричную
криптосистему ( например RC5 ).И выполним шифрование сообщения на
ключе длинной
K = lg
( 2ST )
бит. Сохраним криптограмму и уничтожим ключ. После этого применение
«силовой атаки» ( исчерпывающего перебора в ключевом
пространстве ) позволит найти ключ в среднем за Т секунд.
В связи с таким построением возникают две проблемы :
. «силовая атака» допускает тривиальное распараллеливание, в результате чего применение N компьютеров позволяет получить результат в N раз быстрее
. время T является ожидаемым временем дешифрования; на практике это время может быть существенно больше или меньше, в зависимости от того , в каком порядке проверяются ключи.
То есть, необходимо чтобы, схема была построена таким
образом, чтобы распараллелить вычисления не представлялось
возможным. Справиться со второй проблеммой при построении схемы
не удастся, так как порядок перебора ключей, во всём их
множестве, может регулировать только сам злоумышленник, желающий
узнать конфиденциальную информацию. Первую проблему можно решить
выбрав алгоритм шифрования доказуемо – последовательной природы,
что и было сделано.
Рассмотрим метод построения “шарад”, предложенный
Р.Л.Райвестом, А.Шамиром, Д.А.Вагнером и основанный на
последовательном применении операции возведения в квадрат.
Предположим, Алиса желает зашифровать сообщение М,
так, чтобы его можно было расшифровать через Т секунд.
Для этого Алиса :
. генерирует сооставной модуль n = pq
как произведение двух простых случайно выбранных чисел p и q и вычисляет
f(n) = (p-1) (q-1);
. далее вычисляет t = T
S , где
S – производительность (число возведений в квадрат по модулю n в секунду ) компьютера, предназначенного для решения шарады;
. генерирует случайный ключ К для симметричной криптосистемы, например RC5 . Ключ должен быть достаточно длинным;
. шифрует М на К с помощью RC5 .
. случайным образом выбирает а по модулю n (1