Методы шифрования на основе датчика псевдослучайных чисел
Принцип шифрования заключается в генерировании псевдослучайной последовательности, называемой гаммой, и наложении гаммы на открытое сообщение некоторым обратимым образом.
Например, если открытые данные и гамма представлены в двоичном коде, то подходящей является операция сложения по модулю 2; если исходным является русский текст, то в качестве гаммы можно использовать последовательность независимых псевдослучайных целых чисел от 1 до 33 с равными вероятностями, а операция наложения будет заключаться в сложении номеров букв с числами гаммы по модулю 33 и т.д. Расшифрование требует повторного генерирования гаммы и применения обратной операции (в рассмотренных случаях вычитания по соответствующему модулю). Ключом в данном случае может служить некоторый параметр датчика псевдослучайных чисел.
Линейный датчик псевдослучайных чисел реализуется на цифровой вычислительной машине и описывается рекуррентной формулой
gi+1 = [Agi + C]mod M,
где gi, i = 1, 2, 3, … – последовательность псевдослучайных чисел,
g0 – стартовое значение,
A и C – некоторые константы. Обычно принимается M = 2b, где b – разрядность машины.
Если гамма имеет период больший, чем длина зашифрованного сообщения, и если не известна никакая часть исходного текста, то этот шифр можно раскрыть только прямым перебором возможных ключей, поэтому криптостойкость определяется размером ключа [18].
Шифрование на основе датчиков псевдослучайных чисел наиболее часто применяется в программной реализации криптозащиты данных, так как, с одной стороны, он достаточно прост для про граммирования, а с другой стороны, обладает высокой криптостойкостью.
Одной из форм реализации описанного метода является метод «одноразового блокнота». Суть этого метода состоит в том, что у шифровальщиков на передающей и приемной сторонах имеются два идентичных блокнота с одинаковой гаммой, содержащей случайные независимые равновероятные числа. Эта гамма, являющаяся ключом, используется только один раз, после чего соответствующий лист блокнота вырывается и уничтожается. Если эти условия соблюдены, шифр является абсолютно криптостойким, т.е. не может быть взломан в принципе [20]. Однако этот метод очень сложно реализовать, так как трудно снабдить всех возможных получателей шифртекстов идентичными шифровальными блокнотами и обеспечить их однократное использование. Абсолютно стойкие шифры применяются только в системах секретной связи с небольшим объемом передаваемой информации, обычно для передачи особо важной государственной информации [21].
Дата добавления: 2017-10-04; просмотров: 1680;