Пример генератора ключей, зависящего от входных данных

Чтоб было понятней, рассмотрим простенький пример такого алгоритма.

Пусть xn - это очередной код в исходных данных, kn - текущий ключ, kn+1 - следующее значение ключа, yn - зашифрованый код xn. Q(a,b) - некая коммутативная функция, т.е. такая, что q(a,b)==q(b,a). (a,b,c) - некая целочисленная функция.гда итерацию по (де)кодированию можно описать так:

n := xn xor

kn;n+1 := F( kn, Q( xn, yn ), n );

Если для функции F() понятно, что её имплементация в общем-то ограничена лишь нашей фантазией и здравым смыслом, то про Q(), вероятно, вам хочется увидеть подробностей, а именно, каким таким условиям она должна соответствовать, чтобы быть коммутативной. Самый простой способ этого достичь - использовать аргументы только парами в коммутативных операциях, например xor, сложение, умножение. Примеры:

(a,b) = ((a xor

b) or

1) * (( a + b ) xor

1).

Как видите, придумать свою супер-пупер функцию Q() совсем не сложно. Другое дело, нужно ли её делать сложной? Думаю, что особого смысла в её переусложнении нет.

Прочтите также:

Многовибраторная антенная решетка с рефлектором 16х4 эт
Рассчитать чертёж, КНД, ДН, Rвх многовибраторной антенной решетки с рефлектором 16х4 эт. Построить по таблицам, в полярной и декартовой системе координат расчётную ДН в Е и Н плоскостях. ...

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

Модернизация сети телекоммуникаций района АТС-38 г. Алматы
В связи с нормализующимися рыночными отношениями, усилением конкурентной борьбы между операторами связи за рынки сбыта, резкое увеличение спроса на сервисные услуги, к сетям телекоммуник ...

Основные разделы

Copyright © 2008 - 2020 www.techmatch.ru