Фрикер Клуб
 

Вернуться   Фрикер Клуб > Основной раздел > Кодграбберы

Важная информация

Ответ
 
Опции темы Опции просмотра
Старый 28.03.2011, 18:31   #1
shpongle
Вступил в клуб
 
Аватар для shpongle
 
Регистрация: 22.03.2011
Сообщений: 36
По умолчанию немного о KeeLoq

привет грабостроители, както на одном из форумов столкнулся с описанием алгоритма
KeeLoq, вот что пишут:



Алгоритм шифрования KeeLoq представляет собой симметричный (т.е одинаковый ключ для шифровки и расшифровки) блочный шифр с 32 битным блоком и 64 битным ключом.

Ключ шифрования может генерироваться тремя разными способами:

Simple Learning
Normal Learning
Secure Learning


Simple Learning
Для шифрования используется напрямую мануфактурный код.


Normal Learning
Наиболее часто используемый способ.
Ключ генерируется из серийного номера и мануфактурного кода следующим образом (data - серийник (28 бит), key - мануфактурник (64 бита)):

data&=0x0FFFFFFF;
data|=0x20000000;
k1=KeeLoq_Decrypt(data, key);

data&=0x0FFFFFFF;
data|=0x60000000;
k2=KeeLoq_Decrypt(data, key);

return ((unsigned long long)k2<<32)|k1;



Т.е. сначала старший полубайт серийника заменяется на 0x2, и вызывается функция KeeLoq_Decrypt(). Так получается первая половина ключа (32 бита).
Затем старший полубайт серийника заменяется на 0x6, операция повторяется, получается вторая половина ключа (еще 32 бита). Части складываются в одно 64 битное значение и получается ключ.
Кстати изначально старший полубайт серийника равен нулю, т.к серийник 28 бит засовываем в 32 битную переменную, но все же на всякий случай он тут обнуляется.


Secure Learning
Для генерации ключа используется некое случайное число (seed), генерируемое передатчиком (напр. пультом сигнализации. для кодера HCS это делается нажатием всех сразу кнопок). Мануфактурный код в этом случае отсутствует, и так как получить повторно это случайное число нельзя, система взлому фактически не поддается.


Файло:
Исходники для алгоритма KeeLoq:

keeloq_crypt.rar - оригинал от Ruptor, сделаны небольшие изменения чтобы работало под AVR и добавлена функция генерации ключа Normal Learning
http://cryptolib.com/ciphers/keeloq/ - Оригинальные исходники от Ruptor
http://www.pittnerovi.com/jiri/hobby...loq/index.html - Исходники от Jiri Pittner

Апноуты, исходники и софт от Microchip:

Microchip KeeLoq Encryption Software.exe
Microchip KeeLoq Decryption Software.exe
__________________
приму в дар мануфактурники различных брендов,
спасибо гарантирую )

Последний раз редактировалось shpongle; 28.03.2011 в 18:35.
shpongle вне форума   Ответить с цитированием
Старый 28.03.2011, 18:44   #2
shpongle
Вступил в клуб
 
Аватар для shpongle
 
Регистрация: 22.03.2011
Сообщений: 36
По умолчанию

и ещё одна статья по теме:

Система кодирования Keeloq. С нее и начнем. В случае применения в охранной системе «стандартного Keeloq'а», передаваемая в эфир кодовая комбинация (при нажатии на любую кнопку) выглядит следующим образом:

<номер нажатой кнопки><номер брелка><...шифрованная часть...>
В шифрованной части присутствует информация, обеспечивающая распознавание брелка, и, как следствие, отключение охраны автомобиля. Посмотрим на устройство шифрованной части поподробнее. Она содержит:

<<номер нажатой кнопки><дополнительная информация><счетчик нажатия>>
Мы видим, что в структуре Keeloq заранее известно, где что расположено. Кроме того, номер нажатой кнопки передается в эфир дважды: один раз в открытой, другой раз - в шифрованной части. Это обстоятельство нам еще пригодится.
Два слова о счетчике нажатия. Для системы Keeloq нажатие на любую кнопку увеличивает его на единицу. Если он был «x», то следующее нажатие будет пронумеровано как «x+1», затем «x+2» и т.д.
Получая команду из эфира, главный модуль сигнализации проверяет номер брелка. Если номер не совпадает с заранее записанным в память модуля, дальнейшая обработка сигнала прекращается. Если совпадает, производится попытка дешифровки. В этом случае дополнительная информация позволяет проверить, что нажат именно брелок хозяина, а не какой-то другой со случайно совпавшим номером.
Наконец, производится проверка счетчика нажатия. Если счетчик больше, чем зафиксировано в памяти системы, команда считается правильной и выполняется (в соответствии с номером нажатой кнопки). Если меньше или не изменился - возможно, что воспроизводится ранее записанная простейшим граббером команда. Такая команда отвергается.
Основной секрет состоит в том, как же зашифрована «шифрованная часть». Сразу скажем, что это - весьма сложная функция «F», включающая в себя собственно счетчик нажатия «x», номер брелка «C», номер кнопки «B» и основной секрет (пароль) производителя «A» (в случае применения стандартного Keeloq'а). Но что нам эти сложности? Давайте считать, что эта функция очень простая, например - обычный квадратный трехчлен! Итак:

F=Ax2+Bx+C

Сразу становится понятно, как производится дешифровка в главном модуле. Узнав из эфира номер брелка «С», номер кнопки «B» и заранее зная Пароль «А» легко вычислить счетчик «x». Давайте не обращать внимания, что ответов получилось два - мы всегда можем считать верным тот, который больше. Естественно, не зная Пароля «А», мы не сможем вычислить «x».
Этап первый: вычисление пароля. Если посмотреть на нашу функцию чуть внимательнее, то данный алгоритм легко поддается дешифровке. Достаточно лишь записать 2 последовательные команды:

F1=Ax2+Bx+C
F2=A(x+1)2+B(x+1)+C

Весьма ясно, как взломать пароль. В нашем случае достаточно записать две последовательные команды брелка, решить систему уравнений и получить пароль производителя «А». Для системы другого производителя - другое решение, другой пароль. И так далее. Все что осталось - это занести список паролей в чудо-устройство под названием «адаптирующийся брелок» - вуаля! Задача решена.
Комментарий пока отложим.
__________________
приму в дар мануфактурники различных брендов,
спасибо гарантирую )
shpongle вне форума   Ответить с цитированием
Старый 01.04.2011, 08:54   #3
shpongle
Вступил в клуб
 
Аватар для shpongle
 
Регистрация: 22.03.2011
Сообщений: 36
По умолчанию

продолжение :


К сожалению, применение в брелоках микросхем с плавающим кодом еще не гарантирует потребителя от неприятностей. В целях экономии производители иногда пользуются даже не «стандартным Keeloq'ом», а «усеченным». Иначе говоря, несмотря на то, что микросхема выдает в эфир весь код, базовый блок обрабатывает только постоянную часть информации (номер брелока). Экономия программного кода позволяет удешевить как программу, так и использовать более простой и дешевый микропроцессор. Но система превращается в систему с фиксированным кодом и легко снимается любым код-граббером, воспроизводящим длинные кодовые посылки.

Также, при использовании «стандартного Keeloq'а» можно внести в программу обработки изменения, превращающие его в фиктивный. Как правило, это касается недорогих систем, склонных «забывать» свои брелоки. В этом случае изменения касаются процедуры синхронизации брелоков. При возникновении проблем у пользователя ему рекомендуют несколько раз нажать на брелок рядом с автомобилем для восстановления синхронизации (иногда при этом рекомендуется еще и «передернуть» питание). Этой дырой в защите можно воспользоваться. Достаточно воспроизвести с помощью код-граббера 2-3 прошедших последовательных кода и автомобиль снимется с охраны.

Решать данную проблему не имеет смысла. По возможности, необходимо просто избегать устанавливать (или эксплуатировать) сигнализации подобного типа.
__________________
приму в дар мануфактурники различных брендов,
спасибо гарантирую )
shpongle вне форума   Ответить с цитированием
Старый 07.04.2011, 20:17   #4
iOST
Гость клуба
 
Аватар для iOST
 
Регистрация: 16.02.2011
Сообщений: 4
По умолчанию

Замечу, что процитированные Вами заметки я дописал (в достаточно стебанутом виде) еще в 2005 году. Собственно, тогда же они и были выложены в сеть, где с тех пор и лежат по адресу: http://www.excellent.ru/index.php?an=new_challenge

Дело прошлое, но и сейчас я не против ни ругани, ни критического разбора. Даже "творческое переосмысление" могу понять. Тем более, что на просторах сети мне оно встречалось уже раз несколько.

Но чтоб вот так? Вы б хоть сцылку бы к цитате приаттачили...
А от прям неудобно за Вас стало.
Короче, мануфактурника не подам...
iOST вне форума   Ответить с цитированием
Старый 08.04.2011, 10:28   #5
exchange
Администратор
 
Аватар для exchange
 
Регистрация: 01.01.2011
Сообщений: 227
По умолчанию

Да, народ не забываем про авторские права
__________________
НЕ ОТСТУПАЙ! НЕ СДАВАЙСЯ!
Не позволяй себе быть слабым - никогда!
Иди в отмах - сопротивляйся!
Гляди на мир в прицел - и нападай!
exchange вне форума   Ответить с цитированием
Старый 08.04.2011, 16:25   #6
shpongle
Вступил в клуб
 
Аватар для shpongle
 
Регистрация: 22.03.2011
Сообщений: 36
По умолчанию

Но чтоб вот так? Вы б хоть сцылку бы к цитате приаттачили...



держи http://www.company-slava.ru/Frames/P...ent/brelok.htm
__________________
приму в дар мануфактурники различных брендов,
спасибо гарантирую )
shpongle вне форума   Ответить с цитированием
Старый 13.04.2011, 14:05   #7
iOST
Гость клуба
 
Аватар для iOST
 
Регистрация: 16.02.2011
Сообщений: 4
По умолчанию

Кстати о мануфактурниках. Кому еще не лень вскрывать старые системы, предлагаю последующий отрывок. Необходимые пояснения. На том же упомянутом мною ресурсе лежит опус под названием «Проблемы одностороннего доступа»: http://www.excellent.ru/index.php?an=one_way_systems
Однако, он не более чем усеченная версия рабочих материалов, по вполне понятным причинам (тогда) так и не увидевших свет. Время с 2003 прошло много, поэтому можно кое-что (кроме конкретики) «рассекретить». Привожу выдержки из более полного варианта. Обычный текст - то что было опубликовано, курсив - опущенные отрывки.
Исходная версия называлась так:

ВАШ САМЫЙ ГЛАВНЫЙ СЕКРЕТ
НАПИСАН НА УПАКОВКЕ ВАШЕЙ СИГНАЛИЗАЦИИ?


…Вскрыв ПАРОЛЬ можно получить доступ ко всем системам, использующих именно его. Дальше – дело техники: угонщик записывает из эфира ЛЮБУЮ кодовую посылку, зная ПАРОЛЬ, он может создать любой код из числа будущих.
До недавнего времени мы считали, что теоретически это вполне возможно, на практике это реализовать трудно. Однако дополнительные эксперименты показали, что это не так. История развивалась как хороший детективный роман. Все началось со случайного знакомства с высококвалифицированным хакером…<skipped> Тогда мы достигли некоторого принципиального соглашения…<skipped>
Несмотря на наш скепсис, через неделю мы услышали телефонный звонок, сообщающий нам об первой удаче. Еще через 2 недели нам было предъявлено 5 (ПЯТЬ!) брендов со вскрытым паролем. Наша реакция ("Черт меня побери, ХОЛМС, как?") разбилась о железный ответ: "Вы что думаете, хакеры пароли в лоб подбирают?"…<skipped>
…Мы изрядно удивились, но (возможно, излишне самоуверенно) рассудив, что наша система оказалась в числе невскрытых, на время забыли о проблеме…<skipped>

Чуть позже, в открытой печати было опубликовано сообщение о появлении устройства, которое может "дублировать" брелоки самых различных брендов. Характерно перечисление брендов, брелоки которых (по утверждению авторов заметки, подтвержденному фотографией устройства) принципиально могут быть сдублированы - это чуть ли не все семейства, известные на российском рынке.
Опять таки, отсутствие наших систем в опубликованном списке "утешило" нас. Но проблема явно требовала изучения… <skipped>
…Следующий этап наступил, когда один из наших сотрудников в ходе визита на Тайвань посетил офис крупной фирмы-поставщика. Ему устроили показательную экскурсию, предъявив весь технологический процесс. На одном из этапов показали и процедуру программирования брелоков. Так как для этого использовалось оригинальное программное обеспечение, ПАРОЛЬ ярко горел на экране. Было трудно принять непонимающий вид, но ПРОСТОТА ПАРОЛЯ и однозначное соответствие его надписи <skipped> на коробке сигнализации просто изумили.
После консультаций с Москвой проверку решили проводить немедленно. Прямо на выставке AMPA <skipped> [совсем другому производителю охранных систем] была навязана дискуссия на интересующую тему. Сотрудник просто продекларировал, что вскрыть код он берется за неделю - достаточно просто попытаться использовать в качестве ПАРОЛЯ модель сигнализации, торговую марку или название самой фирмы. Реакция была однозначной - шок.
Дискуссию удалось продолжить только через 2 дня, в обмен на гарантии неразглашения торговой марки и личности оппонента. "Поймите нас, говорил собеседник. У нас около 50 контрагентов, почти каждый требует своей упаковки, своего названия, своего индекса модели. Через год-два к нам обращаются за брелоками для доукомплектации. КАК ЕЩЕ мы можем шифровать системы, чтобы удовлетворять все требования покупателей?".

iOST вне форума   Ответить с цитированием
Старый 13.04.2011, 14:41   #8
shpongle
Вступил в клуб
 
Аватар для shpongle
 
Регистрация: 22.03.2011
Сообщений: 36
По умолчанию

iOST ты что рекламный агент? название ветки читай, ох уж эти промоутеры.
__________________
приму в дар мануфактурники различных брендов,
спасибо гарантирую )
shpongle вне форума   Ответить с цитированием
Старый 13.04.2011, 15:08   #9
iOST
Гость клуба
 
Аватар для iOST
 
Регистрация: 16.02.2011
Сообщений: 4
По умолчанию

Вообще-то я писал исключительно о KeeLoq'е. Я ничего не рекламирую в принципе, и ни одного названия не привел. Так что выкрик мимо кассы.

НО! Если я Вас обидел тем, что указал, откуда были спи... (взяты) цитируемые Вами фрагменты - это Ваша проблема. Однако читайте тему - "немного о KeeLoq". Поэтому, для обсуждения моей личности выберете другую ветку.

ЗЫ. Насколько я помню, с Вами на брудершафт не пил.
iOST вне форума   Ответить с цитированием
Старый 19.06.2011, 20:57   #10
Coroller
Гость клуба
 
Регистрация: 20.05.2011
Сообщений: 2
По умолчанию

To iOST - thank you very much!
Весьма интересная информация о формировании кода производителя
Coroller вне форума   Ответить с цитированием
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Текущее время: 14:55. Часовой пояс GMT +3.


vBulletin 4.1.0 Перевод: zCarot
(C) www.phreakerclub.com