Кpиптогpафия от папиpуса до компьютеpа



Свежая информация новости Казахстана на нашем сайте.

Шифры замены


Теперь посмотрим, как обычно практически выполняется шифрование заменой с помощью ЭВМ. Самый простой и эффективный способ сделать текст нечитаемым - спрятать его, смешав с последовательностью случайных чисел, заданной ключом, с помощью операции XOR( Операция XOR выполняет следующие действия: (О XOR 0)-0, (О XOR 1)=1, (1 XOR 0)=1, (1 XOR 1)=0. ). При этом информация сообщения прячется в шуме - самом информативном, по определению Шеннона, сигнале. Все правильно, песчинку лучше прятать на пляже, рыбу в море, а информацию в шуме.

Есть и другие обоснования выбора случайных чисел для шифрования заменой. Можно исходить из того, что криптоаналитик попытается снизить неопределенность чтения шифровки, зная статистические свойства нашей последовательности. А как только человеку становится известным чье-то намерение, то его поведение соответственно меняется. Поэтому если криптоаналитик знает наше намерение использовать последовательность, где 1 встречается с вероятностью р, а 0 с вероятностью 1-р, то, зная теорию игр, он тоже с вероятностью р будет предполагать наличие 1. Вероятность его успехов будет равна:

Р(Р)=Р-Р+(1-Р)-(1-Р)

Эта функция достигает минимума при р=0.5, что выпадает при случайном выборе из 0 и 1 с равновероятными исходами. Далее, если биты в случайной последовательности с одинаковой вероятностью принимают значения 0 и 1, то биты в шифровке будут обладать тем же свойством. Докажем это. Пусть вероятность нулевого бита в тексте равна р, а единичного соответственно 1-р. Нулевой бит в шифровке появляется, когда соответствующие биты последовательности и текста оба равны либо О, либо 1. Значит, вероятность появления нулевого бита в шифре равна:
    

Р=0.5-р+0.5-(1-р)=0.5

Более того, если биты в используемой для шифрования случайной последовательности статистически независимы друг от друга, то и в шифровке они становятся такими же. Текст превращается во что угодно, то есть в шум. Из-за специфики операции XOR процедура шифрования совпадает с процедурой расшифрования. Например, обозначив через t вектор бит сообщения, у вектор случайной последовательности и s шифровки, получаем t=s XOR у и s=t XOR у. Приведем пример программной реализации этого шифра на языке QuickBasic, называемого далее просто шифром замены. Такие шифры образуют подмножество многоалфавитных шифров замены, которые мы рассматривали выше.




Содержание  Назад  Вперед