рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Шифры с секретным ключом

Шифры с секретным ключом - раздел Компьютеры, Методы и средства защиты компьютерной информации   Итак, Наша Задача Заключается В Том, Чтобы Снабдить Участнико...

 

Итак, наша задача заключается в том, чтобы снабдить участников обмена надежными алгоритмами шифрования. Первый вопрос, который мы себе зададим – это решаема ли задача в принципе, и если да, то какую максимальную степень секретности мы можем обеспечить? Ответ на этот вопрос был найден Шенноном – теорема, носящая его имя, гласит, что существуют абсолютно стойкие шифры, то есть такие шифры, которые невозможно раскрыть, даже если криптоаналитик обладает неограниченным запасом времени и вычислительных ресурсов. Шенноном также было установлено, что условием абсолютной стойкости шифра является использование в алгоритме шифрования не меньшего количества секретной информации, чем содержится информации в шифруемом сообщении.

Как реализовать такой шифр? Прежде чем отвечать на этот вопрос вспомним, что все современные шифры базируются на принципе Кирхгофа, который гласит, что алгоритмы шифрования должны строиться таким образом, чтобы даже при их разглашении они все еще обеспечивали определенный уровень надежности. Вернемся к обсуждаемой теме – ясно, что криптоалгоритмы, построенные в соответствии с принципом Кирхгофа должны использовать при шифровании секретные данные, называемые ключом, которые и обеспечивают секретность сообщения в условиях открытости самого алгоритма. Другими словами, секретность шифра должна обеспечиваться секретностью ключа, а не секретностью алгоритма шифрования. Это означает, что алгоритмы E и D, введенные нами в рассмотрение в предыдущем разделе, используют секретный ключ K, и могут быть обозначены нами теперь как EKи DK. Тогда уравнения шифрования будут иметь следующий вид:

С = EK(T) – зашифрование;

T = DK(С) – расшифрование.

Вспомним, что в шифрах рассматриваемого класса для за- и расшифрования используется один и тот же ключ. Ясно, что процедура расшифрования должна в любом случае приводить к правильному результату. Это означает, что каковы бы ни были допустимые блок данных T и ключ K, должно выполняться следующее равенство: EK(DK(T)) = T.

Вернемся к абсолютно стойким шифрам, реализующим принцип Кирхгофа. Так как вся их секретность сосредоточена в ключе K, применительно к ним требование Шеннона означает, что размер ключа шифрования не должен быть меньше размера шифруемого сообщения: êKï ³ êTï. Будем полагать, что они имеют одинаковый размер, равный N бит: êKï = êTï = N. Это минимум, при котором все еще возможна абсолютная стойкость. Для зашифрования сообщение T необходимо скомбинировать с ключом K с помощью некоторой бинарной операции °таким образом, чтобы полученный шифротекст зависел и от исходного текста T, и от ключа K. При этом уравнение зашифрования будет иметь следующий вид: C = EK(T) = T ° K.

Размер шифротекста при этом также равен N бит: |C| = |T| = |K| = N. Для обеспечения абсолютной стойкости шифра количество секретной информации в ключе K должно быть максимально возможным для его размера. Это означает, что все биты ключа должны быть случайны с равновероятными значениями и статистически независимы. Такой ключ может быть получен только аппаратным способом, алгоритмически его выработать нельзя, так как в этом случае указанное требование будет нарушено и шифр перестанет быть абсолютно стойким.

Обсудим теперь требования, которым должна удовлетворять операция °. Во-первых, чтобы шифрование было обратимым, уравнение T ° K = C должно быть однозначно разрешимо относительно T при любых значениях C и K. Это означает, что у бинарной операции °должна существовать обратная, которую мы обозначим через •, и каковы бы ни были N-битовые блоки данных T и K, всегда должно выполняться равенство (T ° K) • K = T. Во-вторых, для обеспечения полной секретности шифра необходимо, чтобы разные ключи давали для одинаковых исходных текстов разные шифротексты. Это равносильно требованию однозначной разрешимости уравнения T ° K = C относительно K. Так как секретность шифрованного сообщения целиком опирается на секретность ключа, во всем остальном операции °и •могут выбираться из соображений удобства. В качестве таких операций может использоваться сложение и вычитание по модулю 2N:

T ° K = (T + K) mod 2N, TK = (TK) mod 2N.

Осуществить вычисления над сообщением как единым целым может оказаться затруднительным по причине его значительного размера, поэтому целесообразно разбить сообщение и ключ на блоки меньшего размера и применить указанные операции к этим блокам:

T = (T1, T2, ..., Tn), K = (K1, K2, ..., Kn), ïKiï = ïTiï = Ni,

, .

Если довести этот процесс дробления до логического конца, мы придем к операции побитового сложения по модулю 2, называемой также побитовым «исключающим или»:

T ° K = TK = T Å K.

Последняя операция оказалась обратной к самой себе и по этой причине, а также в силу своей простоты и легкости реализации (отдельные биты сообщения в ней обрабатываются независимо друг от друга), получила наибольшее распространение.

Кратко остановимся на достигнутом: шифр, который мы сейчас получили, называется одноразовой гаммой Вернама. Этот шифр обладает абсолютной стойкостью, которая, однако, оплачивается достаточно дорогой ценой – для шифрования сообщения нужен ключ такого же размера, предварительно доставленный отправителю и получателю.

Для шифрования двух различных сообщений нельзя применять одну и ту же последовательность элементов гаммы. Если это требование нарушено, всегда можно найти такую пару бинарных операций Ä и *, которые, будучи примененными соответственно к блокам открытых и зашифрованных с использованием одного и того же элемента гаммы данных, дадут идентичные результаты:

.

Это сделает задачу криптоанализа тем более легкой, чем больше избыточности содержится в сообщении. Для текстов на естественных языках ввиду их колоссальной избыточности эта задача становится почти тривиальной – отделить друг от друга такие сообщения не представляет труда. Такое разделение может быть выполнено методом перебора, причем на каждом шаге в переборе участвуют лишь несколько символов.

Если для наложения гаммы используется операция побитового суммирования по модулю 2, то в качестве бинарных операций, устраняющих влияние секретной гаммы на результат, может быть использована та же самая операция. Действительно, пусть, например, два блока шифруются с помощью одного и того же элемента гаммы Giналагаемого на них операцией побитового сложения по модулю 2:

,

.

Выполним побитовое сложение блоков шифротекста по модулю 2:

.

Как видим, результат совпадает с побитовой суммой по модулю 2 блоков открытого текста, что делает криптоанализ тривиальным.

Требование уникальной гаммы для каждого шифруемого сообщения делает шифрование с помощью одноразовой гаммы Вернама настолько накладным, что его использование экономически оправдано лишь в каналах связи для передачи сообщений исключительной важности, задействованных к тому же не слишком часто.

Барьер, перед которым мы остановились, непреодолим: достичь эффективности практической реализации криптоалгоритма можно только отказавшись от абсолютной стойкости. Шифр, не являющийся абсолютно стойким, можно раскрыть за конечное время, точнее, за конечное число шагов, каждый из которых состоит в выполнении элементарной арифметической или логической операции. Однако ничто не мешает нам создать такой теоретически нестойкий шифр, для раскрытия которого требовалось бы выполнить настолько большое число операций, чтобы это было неосуществимо на современных и ожидаемых в не очень далекой перспективе вычислительных средствах за разумное время. Мерой практической стойкости шифров подобного типа может служить количество работы, необходимое для их раскрытия, выраженное в элементарных операциях или в длительности соответствующих вычислений на современных компьютерах. Отметим, что в реальных системах криптозащиты информации используются почти исключительно теоретически нестойкие шифры.

Хороший шифр должен быть устойчив к статистическому и алгоритмическому анализу, то есть не должно существовать легко обнаружимых статистических связей между открытым и шифрованным текстом и зависимости между ними должны быть достаточно сложными для того, что бы их можно было обнаружить путем анализа. Есть четкая граница между хорошо и не очень хорошо спроектированными блочными шифрами: первый невозможно раскрыть способом, более эффективным чем полный перебор по всем возможным значениям ключа, для раскрытия второго могут оказаться пригодными и более эффективные способы. Как же строить стойкие шифры? Наука об этом засекречена практически везде, где имеют дело с криптографией – публикуются лишь соображения, носящие самый общий характер и не содержащие никакой конкретики. Приобщиться к этим тайным знаниям можно, лишь работая в соответствующем подразделении соответствующей специальной службы. Ну, а мы с вами попытаемся рассмотреть проблему исключительно с позиции здравого смысла. По большому счету, можно предложить лишь два фундаментальных подхода к построению шифра с секретным ключом:

· вырабатываемый элемент гаммы Giне зависит от шифруемого блока данных Ti;

· шифрование массива информации T осуществляется путем манипулирования с ним самим.

Первый подход очевидным образом вытекает из шифра Вернама. Все отличие заключаются в том, что в нем гамма сама по себе не является ключевым элементом, а только вырабатывается из ключа K фиксированного размера с помощью некоторого набора функций fi: Gi = fi(K), или, точнее, одной универсальной функции Gi = f(i, K) – хотя с точки зрения математики это одно и то же, с алгоритмической точки зрения это разные вещи. Требование практической реализуемости шифра в виде аппарата или программы для ЭВМ приводит к необходимости возможности его описания в форме алгоритма с конечным числом возможных состояний, наиболее общей моделью которого может служить конечный автомат. Таким образом, генератор гаммы может быть определен с помощью следующих соотношений как конечный автомат без входа:

Si = WK(Si–1), Gi = QK(Si) – простое гаммирование,

или как конечный автомат со входом, если вырабатываемый блок гаммы зависит от предшествующего блока шифротекста и/или открытого текста:

, Gi = QK(Si) – гаммирование с обратной связью.

Первое из двух соотношений определяет правило изменения состояний, второе – правило выработки выходного элемента, то есть элемента гаммы. Ясно, что для обеспечения секретности шифра оба эти правила должны или сами быть секретными, или зависеть от значения секретного ключа K. Шифры, построенные по данной схеме, называются потоковыми, так как в них используется поток гаммы, вырабатываемый генератором. Зашифрование (расшифрование) осуществляется путем простого наложения элементов гаммы на блоки открытого (шифрованного) текста с помощью соответствующих бинарных операций: , . В зависимости от используемых операций наложение гаммы может осуществляться как побитово, так и блоками иного размера. Основная сложность при реализации данного подхода заключается в разработке действительно качественного источника криптостойкой гаммы.

Прежде чем перейти к дальнейшему изложению напомним определение конечного автомата. Конечным автоматом называют устройство (реально существующее или гипотетическое) у которого имеются входные и выходные каналы, само устройство в каждый дискретный момент времени может находиться в одном из нескольких возможных внутренних состояний. Множество входных (выходных) сигналов и множество внутренних состояний конечны. Считается известным правило по которому устройство переходит из некоторого состояния в момент t в другое или тоже состояние в момент t+1. Известно правило по которому определяется выходной сигнал в момент t в зависимости от того каким в этот момент был входной сигнал и каково было внутреннее состояние устройства.

Конечным автоматом будем называть пятерку объектов V = {A, B, Q, j, y}, где

A = {a1, ..., am} – входной алфавит;

B = {b1, ..., bs} – выходной алфавит;

Q = {q1, ..., qn} – алфавит состояний;

j: Q´A ® Q – функция переходов;

y: Q´A ® B – функция выходов;

q(t+1) = j(q(t), a(t)), b(t) = y(q(t), a(t)).

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

 

 

– Конец работы –

Эта тема принадлежит разделу:

Методы и средства защиты компьютерной информации

Факультет электронной техники.. Кафедра Автоматизированные системы обработки информации и управления..

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Шифры с секретным ключом

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Актуальность защиты систем обработки информации
  В современном компьютерном сообществе атаки на информацию стали обыденной практикой. Злоумышленники используют как ошибки в написании и администрировании программ, так и методы соци

Угрозы безопасности компьютерных систем
  Под угрозой безопасности вычислительной системы понимаются воздействия на систему, которые прямо или косвенно могут нанести ущерб ее безопасности. Разработчики треб

Наиболее распространенные методы взлома компьютерных систем
  1.3.1. Комплексный поиск возможных методов взлома   Часто злоумышленники проникают в систему не напрямую, «сражаясь» с системами шифрован

Терминалы защищенной информационной системы
Терминалы – это точки входа пользователя в информационную сеть. В том случае, когда к ним имеют доступ несколько человек или вообще любой желающий, при их проектировании и эксплуат

Получение пароля на основе ошибок администратора и пользователей
  Перебор паролей по словарю являлся некоторое время одной из самых распространенных техник подбора паролей. В настоящее время, как хоть самый малый результат пропаганды информационно

Получение пароля на основе ошибок в реализации
  Следующей по частоте использования является методика получения паролей из самой системы. Однако, здесь уже нет возможности дать какие-либо общие рекомендации, поскольку все методы а

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

Задачи, решаемые криптографическими методами
  О важности информации в современном мире наиболее показательно свидетельствуют следующие факты. Во-первых, обладание определенным цифровым кодом может открыть доступ его владельцу к

Краткие сведения о криптоанализе
  Криптоанализ как наука выходит за рамки данного курса, однако знание некоторых его положений необходимо для глубокого понимания криптографии. Главным действующим лицом в кр

Мера стойкости шифра
  Шифром называется пара алгоритмов (E и D), реализующих каждое из указанных выше преобразований. Секретность второго из них делает данные недоступными

Необходимое условие абсолютной стойкости шифра
  Естественно, основной вопрос, который интересовал криптографов, это существуют ли на практике абсолютно стойкие шифры. Специалистам было интуитивно понятно, что они существуют, и пр

Принцип Кирхгофа построения шифров
  Исходя из сказанного выше, можно перечислить несколько качеств, которым должен удовлетворять шифр, претендующий на то, чтобы считаться хорошим. 1. Анализ зашифрованных данн

Базовая идея блочного шифра
  Отправной точкой в реализации рассматриваемого подхода является идея вырабатывать гамму для зашифрования сообщения … из самого сообщения! Однако сделать это непосредственно невозмож

Шифр простой замены
  Для того, чтобы блочная схема шифрования была устойчива к криптоанализу, она должна обладать свойствами перемешивания и рассеивания. Это означает, что каждый бит исходного текста до

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

Гаммирование
  Предложенная в предыдущем разделе процедура шифрования по методу простой замены с использования датчика псевдослучайных чисел может быть слегка изменена, что освободит ее от ряда не

Гаммирование с обратной связью
  При синтезе алгоритма блочного шифрования мы уже сталкивались с идеей вырабатывать гамму для шифрования очередного блока данных с использованием одного или нескольких предыдущих бло

Имитозащита
  Как мы уже неоднократно демонстрировали в примерах, шифрование само по себе не может защитить передаваемые данные от внесения изменений. Это является отражением того факта, что секр

Сравнения и их свойства
  Мы будем рассматривать целые числа в связи с остатками от деления их на целое положительное m, которое назовем модулем (слово “модуль” происходит от латинско

Вычисление степеней, возведение сравнений в степень
  Многие результаты теории сравнений связаны с остатками высоких степеней чисел, поэтому обсудим интересную задачу эффективного вычисления xn по заданным x и

Сравнения с одним неизвестным
  Числа, равноостаточные, или, что то же самое, сравнимые по модулю m, образуют класс чисел по модулю m. Из такого определения следует, что всем числам класса о

Наибольший общий делитель
  Если u и v – целые числа, не оба рвные нулю, то их наибольшим общим делителем D(u, v) называется наибольшее целое число, на которое делятся без ос

Простые числа
  Едва освовив четыре арифметических действия, люди стали интересоваться различными свойствами натуральных чисел. Почему некоторые числа делятся на меньшие без остатка, в то время как

Теоремы Эйлера и Ферма
  Теорема (Эйлера). При m > 1 и D(a,m) = 1 имеем aj(m) º 1 (mod m).

Однонаправленные функции
  Развитие криптографии в XX веке было стремительным, но неравномерным. Анализ истории ее развития как специфической области человеческой деятельности выделяет три основных периода.

Алгоритм RSA
  Первой и наиболее известной криптографической системой с открытым ключом была предложенная в 1978 году так называемая система RSA. Ее название происходит от первых букв фамилий авто

Практическое использование алгоритма RSA
  Для алгоритмов, основанных на открытых ключах, существует ряд математических проблем, которые не всегда учитываются при построении криптосистемы. К ним можно отнести выбор начальных

Открытое распределение ключей
  Пока преимущества методов шифрования с открытым ключом не были очевидны. Однако на их основе легко решать задачу выработки общего секретного ключа для сеанса связи любой пары пользо

Электронная подпись
  В чем состоит проблема аутентификации данных? В конце обычного письма или документа исполнитель или ответственное лицо обычно ставит свою подпись. Подобное действие обычно преследуе

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги