Электронная коммерция

       

Процесс шифрования


Шифрование или кодирование информации с целью ее защи­ты от несанкционированного прочтения — главная задача криптографии с самых давних времен. Еще Юлий Цезарь ис­пользовал буквенный код, отправляя послания своим полевым командирам.

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

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

Это называется “шифром Цезаря” Вот пример: если я применю 13-буквенный шифр Цезаря к своему имени то вместо David Kosiui получится "Univq Xbfvhe" (подсказка: когда отсчитывая буквы Вы дойдете до “Z”, возвращайтесь к началу алфавита).

          В основе  шифрования — два понятия: алгоритм и ключ. Криптографический алгоритм — это математическая функ­ция, которая комбинирует открытый текст или другую понят­ную информацию с цепочкой чисел, называемых ключом, для того чтобы в результате получился бессвязный шифрованный текст Алгоритм и ключ — основа процесса шифрования. Новый алгоритм трудно придумать, но один алгоритм можно использоватъ с многими ключами. Хотя и существуют некоторые специальные криптографические алгоритмы, не исполь­зующие ключ (см. описание хеш-функций в следующем раз­деле) , алгоритмы с ключом имеют особое значение. У шифро­вания с ключом два важных преимущества.

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


Во-вторых, если кто-то “взломает” Ваше зашифрованное послание, чтобы продолжить шифрование информации, Вам будет достаточно лишь поменять ключ. Переходить на новый алгоритм не придется (если, конечно, “взломан” ключ, а не сам алгоритм — такое хотя и маловероятно, но возможно). Количество бит в ключе определяет число возможных комбинаций, чем их больше, тем труднее подобрать ключ и вскрыть зашифрованное сообщение. Количество возможных ключей в данном алгоритме зависит от числа бит в ключе. Например, 8-битный ключ допускает лишь 256 (28) возможных числовых комбинаций, каждая из которых также называется ключом. Чем больше возможных ключей, тем труднее “вскрыть” зашифрованное послание. Таким образом, степень надежности алгоритма зависит от длины ключа. Компьютеру не потребуется много времени, чтобы последовательно пере­брать каждый из 256 возможных ключей (на это уйдет меньше доли секунды) и, расшифровав послание, проверить, име­ет ли оно смысл. Но если использовать 100-битный ключ (что эквивалентно перебору 2100 ключей), то компьютеру, опробующему миллион ключей в секунду, все равно может потребоваться несколько веков, чтобы отыскать правильный.

Надежность алгоритма шифрования зависит от длины ключа. Почему? Если знать, сколько бит в ключе, то можно оценить, сколько времени при­дется потратить, чтобы “взломать” шифр. Надеяться только на секретность алгоритма или зашифрованного текста неразум­но — ведь посторонние могут получить эту информацию из конфиденциальных источников, а также путем сравнительно­го анализа посланий или каким-либо еще способом (например, отслеживая трафик) Тогда злоумышленник сможет расшиф­ровать корреспонденцию.

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

Симметричное шифрование имеет некоторые недостатки например, обе стороны должны предварительно договорить­ся о секретном ключе Если у Вас 100 корреспондентов, то Вам придется хранить 100 секретных ключей, по одному для каж­дого. Но использовать один ключ для нескольких корреспон­дентов нельзя — тогда они смогут читать почту друг друга.

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

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

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


Содержание раздела