Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Комбинированные методы шифрования




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

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

Как показали исследования, стойкость комбинированного шифрования 5^ не ниже произведения стойкостей используемых способов S„ т. е.

Вообще говоря, комбинировать можно любые методы шифрования и в любом количестве, однако на практике наибольшее распространение получили следующие комбинации: 1) подстановка + гам-мирование; 2) перестановка + гаммирование; 3) гаммирование + + гаммирование; 4) подстановка + перестановка. Типичным примером комбинированного шифра является национальный стандарт США криптографического закрытия данных (DES).,. '

Кодирование „ •'!•:

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

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

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

Примером такого кода для английского языка может служить код Хаффмена, показанный в табл. 3.2.

Такое кодирование имеет криптографическую стойкость на уровне шифрования простой заменой.

При смысловом кодировании основной кодируемой единицей является смысловой элемент текста. Для кодирования составляется специальная таблица кодов, содержащая перечень кодируемых элементов и соответствующих им кодов. Введем, например, следующую кодовую таблицу:

Автоматизированные системы управления 001 Автоматизация управления 002 Осуществляет,415 Позволяет 632

Тогда предложение «Автоматизированные системы управления позволяют осуществлять автоматизацию управления» после кодирования будет иметь вид: 001 632 415 002.

Другие виды криптографического закрытия информации К ним относятся рассечение-разнесение и сжатие данных. Рассечение-разнесение данных состоит в том, что массив защищаемых данных рассекается на такие элементы, каждый из которых не позволяет раскрыть содержание защищаемой информации, и выделенные таким образом элементы размещаются в различных зонах ЗУ. Обратная процедура называется сборкой данных. Совершенно очевидно, что алгоритм разнесения и сборки данных должен тщательно охраняться.

Таблица 3.2. Коды Хаффмека

А     г                       -^•^      
    .,1..   . 1                     Ji/'.:.      
N   1.   t                         1^-.'-      
D     '1"       " Г'               •c'1.'^'; '• ••  
Р   1.   .l1^.1                        
V       : 0     0 •                  
К                 '"•I '   '•''т'1    
Q     ' 1'           .0     Р    
Z     т             .1      
х             .0'            
J                 , 0        
R                                  
I                                  
.Е                                    
S                                  
W                              
В                              
Н                           •.i:.r;-.      
F       Й                   .: >• и;,      
С                         ^г;'      
м                                
U                         ':      
G           t               • • \и.. ',      
Y         0;   •Q               ' 1'."', '? '.1      

Системы с открытым ключом

Как бы ни были сложны и надежны криптографические системы, их слабое место при практической реализации — проблема рас-пределения ключей. Для того чтобы был возможен обмен конфиденциальной информацией между двумя субъектами ИС, ключ должен быть сгенерирован одним из них, а затем каким-то образом опять же в конфиденциальном порядке передан другому. То есть, в общем

случае для передачи ключа опять же требуется использование какой-то криптосистемы.

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

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

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

Криптографические системы с открытым ключом используют так называемые необратимые, или односторонние, функции, которые обладают следующим свойством: при заданном значении х относительно просто вычислить значение f(x), однако если уМ =j(x), то нет простого пути для вычисления значения х.

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

В самом определении необратимости присутствует неопределенность. Под необратимостью понимается не теоретическая необратимость, а практическая невозможность вычислить обратное значение, используя современные вычислительные средства за обозримый интервал времени.

Поэтому, чтобы гарантировать надежную защиту информации, к системам с открытым ключом (СОК) предъявляются два важных и очевидных требования:

1. Преобразование исходного текста должно быть необратимым и исключать его восстановление на основе открытого ключа.

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

Алгоритмы шифрования с открытым ключом получили широкое распространение в современных информационных системах. Так, алгоритм RSA стал мировым стандартом дефакто для открытых систем и рекомендован МККТТ.

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

• разложение больших чисел на простые множители;

• вычисление логарифма в конечном поле;

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

1. Как самостоятельные средства защиты передаваемых и хранимых данных.

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

3. Средства аутентификации пользователей.(электронная подпись).

Несмотря на довольно большое число различных СОК, наиболее популярна криптосистема RSA, разработанная в 1977 году и получившая название в честь ее создателей: Рона Ривеста, Ади Шами-ра и Леонарда Эйдельмана.

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

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

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

В настоящее время алгоритм RSA используется во многих стандартах, среди которых SSL, S-HHTP, S-MIME, S/WAN, STT и РСТ.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...