id: Гость   вход   регистрация
текущее время 13:14 14/12/2024
создать
просмотр
ссылки

Фишка для ГОСТа


Идея тут посетила, возможно, что прорабатывали ранее..


Сделать двойной фейстель для алгоритмов по типу ГОСТ89, т.е. обрабатывать данные и параллельно ключи.


Примерно так:

x ^=FF((y +K[i]), x);
y ^=FF((x +K[j]), y);
K[i] ^=FF((y +K[j]), x);
K[j] ^=FF((x +K[i]), y);

т.е. получаем потоковый шифр, варианты использования:
-как обычное шифрование в потоковом режиме, входное значение меняет поток ключей (аналог IV),выходное использовать для XOR с данными.
-как хеш, если использовать конечное состояние ключей. +добавить длину сообщения.
-как вариант условной "губки", ключи накопительные. по сути, не должно быть "слабых" ключей, ключи всегда меняются.
-это уже не ГОСТ, а просто идея.


Реализация идеи здесь: https://yadi.sk/d/V2Jd4evKrPcYQg



 
Комментарии
— Onix (17/08/2019 08:20, исправлен 30/08/2019 20:14)   профиль/связь   <#>
комментариев: 10   документов: 3   редакций: 0

Добавка:
по ссылке выше выложил пример реализации более полный.


Добавка, конструкция вида:
K[i] ^= x^= FF(y+K[i])
K[j] ^= y^= FF(x+K[j])
тоже не плохо работает и быстрей.

— Onix (12/09/2019 07:33, исправлен 15/09/2019 09:52)   профиль/связь   <#>
комментариев: 10   документов: 3   редакций: 0

Если довести данную схему до варианта аналогичному RC4, то получается так:


но наверное проблемы будут теже, то и у RC4, хотя может быть и по другому.


Зато получился последовательный алгоритм.


update: пример генерации
https://yadi.sk/d/7ZX4vKiYjy9hcA


Ваша оценка документа [показать результаты]
-3-2-1 0+1+2+3