Обратимая функция 0..255 => чтото => 0..255

Может у кого завалялась. Нужна обратимая функция для одного байта (набор xor, ror и прочего) чтобы на выходе был хороший разброс.
Попробовал от балды поксорить - уж больно предсказуемый выход получается. Даже если и не последовательные цифры, но слишком уж подозрительные. В идеале хочется совсем месиво.
Ну и ессно не слишом сложная для асма (больше 256 байт длиной нет смысла).

И гуглом ничего дельного не нашел.
Заранее спасибо.

[Сообщение изменено пользователем 13.01.2016 14:18]
0
Исправьте название темы.
3.7. Нецензуpные выpажения, как в открытом, так в сокращенном или завуалированном виде;

[Сообщение изменено пользователем 13.01.2016 15:18]
0
alexhote
обычный реплейс символов, потом обратный реплейс.

функция длиной меньше 256 байт нормально шифровать трудно

[Сообщение изменено модератором 13.01.2016 15:19]
0
timsa™
От пользователя alexhote
функция длиной меньше 256 байт нормально шифровать трудно


вот это делает функция длиной 50 байт
Исходник:

вход 0..255

выход:
data 0x00B8     99 98 9b 9a 9d 9c 9f
data 0x00C0  9e 91 90 93 92 95 94 97
data 0x00C8  96 89 88 8b 8a 8d 8c 8f
data 0x00D0  8e 81 80 83 82 85 84 87
data 0x00D8  86 b9 b8 bb ba bd bc bf
data 0x00E0  be b1 b0 b3 b2 b5 b4 b7
data 0x00E8  b6 a9 a8 ab aa ad ac af
data 0x00F0  ae a1 a0 a3 a2 a5 a4 a7
data 0x00F8  a6 d9 d8 db da dd dc df
data 0x0100  de d1 d0 d3 d2 d5 d4 d7
data 0x0108  d6 c9 c8 cb ca cd cc cf
data 0x0110  ce c1 c0 c3 c2 c5 c4 c7
data 0x0118  c6 f9 f8 fb fa fd fc ff
data 0x0120  fe f1 f0 f3 f2 f5 f4 f7
data 0x0128  f6 e9 e8 eb ea ed ec ef
data 0x0130  ee e1 e0 e3 e2 e5 e4 e7
data 0x0138  e6 19 18 1b 1a 1d 1c 1f
data 0x0140  1e 11 10 13 12 15 14 17
data 0x0148  16 09 08 0b 0a 0d 0c 0f
data 0x0150  0e 01 00 03 02 05 04 07
data 0x0158  06 39 38 3b 3a 3d 3c 3f
data 0x0160  3e 31 30 33 32 35 34 37
data 0x0168  36 29 28 2b 2a 2d 2c 2f
data 0x0170  2e 21 20 23 22 25 24 27
data 0x0178  26 59 58 5b 5a 5d 5c 5f
data 0x0180  5e 51 50 53 52 55 54 57
data 0x0188  56 49 48 4b 4a 4d 4c 4f
data 0x0190  4e 41 40 43 42 45 44 47
data 0x0198  46 79 78 7b 7a 7d 7c 7f
data 0x01A0  7e 71 70 73 72 75 74 77
data 0x01A8  76 69 68 6b 6a 6d 6c 6f
data 0x01B0  6e 61 60 63 62 65 64 67
data 0x01B8  66


[Сообщение изменено модератором 13.01.2016 15:19]
0
timsa™
ну вот как ни крути закономерности видны

Исходник:
data 0x00B8     49 59 69 79 09 19 29 39 c9 d9  
data 0x00C3  e9 f9 89 99 a9 b9 48 58 68 78 08  
data 0x00CE  18 28 38 c8 d8 e8 f8 88 98 a8 b8  
data 0x00D9  4b 5b 6b 7b 0b 1b 2b 3b cb db eb  
data 0x00E4  fb 8b 9b ab bb 4a 5a 6a 7a 0a 1a  
data 0x00EF  2a 3a ca da ea fa 8a 9a aa ba 4d  
data 0x00FA  5d 6d 7d 0d 1d 2d 3d cd dd ed fd  
data 0x0105  8d 9d ad bd 4c 5c 6c 7c 0c 1c 2c  
data 0x0110  3c cc dc ec fc 8c 9c ac bc 4f 5f  
data 0x011B  6f 7f 0f 1f 2f 3f cf df ef ff 8f  
data 0x0126  9f af bf 4e 5e 6e 7e 0e 1e 2e 3e  
data 0x0131  ce de ee fe 8e 9e ae be 41 51 61  
data 0x013C  71 01 11 21 31 c1 d1 e1 f1 81 91  
data 0x0147  a1 b1 40 50 60 70 00 10 20 30 c0  
data 0x0152  d0 e0 f0 80 90 a0 b0 43 53 63 73  
data 0x015D  03 13 23 33 c3 d3 e3 f3 83 93 a3  
data 0x0168  b3 42 52 62 72 02 12 22 32 c2 d2  
data 0x0173  e2 f2 82 92 a2 b2 45 55 65 75 05  
data 0x017E  15 25 35 c5 d5 e5 f5 85 95 a5 b5  
data 0x0189  44 54 64 74 04 14 24 34 c4 d4 e4  
data 0x0194  f4 84 94 a4 b4 47 57 67 77 07 17  
data 0x019F  27 37 c7 d7 e7 f7 87 97 a7 b7 46  
data 0x01AA  56 66 76 06 16 26 36 c6 d6 e6 f6  
data 0x01B5  86 96 a6 b6


[Сообщение изменено модератором 13.01.2016 15:20]
0
alexhote
Ну дак а как иначе конечно закономерности можно будет выявить без проблем

спросите у гугла про шифрование

по хорошему только ключ длиной от 128 до 1024 байта
0
timsa™
От пользователя alexhote
ключ длиной от 128 до 1024 байта

может все-таки бит?


От пользователя alexhote
спросите у гугла про шифрование

уже втыкаю в RC4
0
timsa™
на RC4 Не хватает памяти :-( нет места для таблиц
0
Авторизуйтесь, чтобы принять участие в дискуссии.