[code] ВЫЧИСЛЕНИЕ 8-ГО БАЙТА ОП.КЛЮЧА PC2.4(66) ИСПОЛЬЗУЯ ТОЛЬКО ФЕНИКС И СКРИПТЫ В качестве примера, буду искать 8-й байт от 8-ки НТВ+ 01A400. 1.) Прописываем провайдеру гео-код FFFFFFFF 2.) Считаем скриптом хеши по оп.ключу от 00000000FFFFFFFF и 80000000FFFFFFFF : Hash_8(00000000FFFFFFFF) = 64EDBCB9456760FF Hash_8(80000000FFFFFFFF) = 33B76D780D501C61 3.) Считаем скриптом хеш к команде CA88000x17 E00130 E8080000000000000000 F008 xxxxxxxxxxxxxxxx и подаем ее на карту : RX ATR : 3F 77 18 25 00 80 14 00 66 68 90 00 TX Data : CA A4 02 00 00 RX Data : 90 00 TX Data : CA 88 00 08 17 RX Data : 88 TX Data : E0 01 30 E8 08 00 00 00 00 00 00 00 00 F0 08 E0 12 77 52 13 64 1C 12 RX Data : 90 00 TX Data : CA C0 00 00 0A RX Data : C0 E8 08 B0 4B 48 0F 5C F6 16 62 90 00 4.) Банальным экспериментом определяем - четный ключ или нечетный. Если ключ нечетный, то скриптом вычисляем промежуточный хеш : Hash_8(E00130E808000000) = 3C5E9937D01E5A23 Банальным экспериментом определяем - восьмой байт ключа больше 0F или нет, то есть маска A5 или 5A. Накладываем маску на промежуточный хеш : 3C5E9937D0 A5A5A5A5A5 & ---------- 2404812580 Итого - имеем данные перед декриптом : 0000002404812580 5.) Пишем скрипт перебора. Перебираем хх в подставном ключе 64EDBCB9456760xx 33B76D780D501C61 до того момента, пока декрипт от 0000002404812580 не станет равным B0 4B 48 0F 5C F6 16 62. То-есть всего максимум 128 (в данном случае - максимум 120) вариантов. (четных xx - 128 штук) (нечетных xx<$10 - 8 штук) (нечетных xx>$10 - 120 штук) При xx=EF - совпадение !!! Decrypt(0000002404812580,64EDBCB9456760EF33B76D780D501C61)=B04B480F5CF61662 Значит 8-й байт 8-го ключа НТВ+ 01A400 равен EF !!! [/code]