В первой работе мы собрали устройство

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

Входные данные системы: 4 бита – вводимый в систему символ; 2 бита – тактовые импульсы.

Выходные данные:  4 бита – переставленный символ.

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

Как известно, для перестановки 4х символов местами у нас есть 4! = 24 варианта исхода. Понятно, что при рассмотрении 8-символьной перестановки вариантов исхода будет уже 40320. Такое большое число вариантов в данный момент нам ни к чему, поэтому остановимся на перестановке 4х символов.

Основным свойством, отличающим нашу новую систему от прежней, будет способность менять порядок перестановки в выходной последовательности через определенный нами промежуток времени. Логично, что данные промежутки должны иметь длину 4*N тактов, где N – количество разрешаемых перестановок подряд по одной схеме. Чтобы продемонстрировать способности данного устройства, примем N=1.

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

Чтобы определить метод перестановки, нам нужно выбрать последовательность расстановки чисел, поступивших по порядку, например: 1,2,3,4 представляем как 3,2,1,4. Каждый номер числа по порядку можно представить как двубитное число; как мы уже рассмотрели выше, на мультиплексоры также нужно подавать двубитные числа в качестве управляющей последовательности. Тогда выходы 4х мультиплексоров будут зависеть от порядка поданных нами чисел.

Возьмем каждое из наших двубитных чисел как два разряда одного восьмибитного числа; таких восьмибитных чисел может получиться всего 24, и это будут: 27, 30, 39, 45, 54, 57, 75, 78, 99, 108, 114, 120, 135, 141, 147, 156, 177, 180, 198, 201, 210, 216, 225, 228. Так как сборка генератора псевдослучайных последовательностей на 24 числа требует больших временных затрат, воспользуемся альтернативным методом: подадим  все 24 значения на мультиплексор MUX24  в произвольном порядке, а управляющей последовательностью на мультиплексор подадим выход счетчика на 24. Так мы обеспечим псевдослучайный выбор одного из 24х значений, что и требовалось сделать для функционирования всей системы. Далее это значение будет подаваться на мультиплексоры MUX4, откуда уже будут выходить значения после перестановки; данные значения будут выдаваться потактово в сеть, что и будет являться выходом нашей системы.

Ссылка на основную публикацию
Adblock detector