key programming immo tools emergency start device программаторы ключа заводилки Кодграббер штатных охранных систем, toyota, lexus, subaru.

ПОМОГИТЕ В СОЗДАНИИ ПРОШИВКИ НА АЛГОРИТМ

T

test

Guest
#1
ПОМОГИТЕ В СОЗДАНИИ ПРОШИВКИ НА АЛГАРИТМИЧЕСКИЙ ИЛИ ПОДГОНИТЕ У КАВО ЕСТЬ МОЖ?
 
#2
ПОМОГИТЕ В СОЗДАНИИ ПРОШИВКИ НА АЛГАРИТМИЧЕСКИЙ ИЛИ ПОДГОНИТЕ У КАВО ЕСТЬ МОЖ?
ты в курсах что тут мануфактурный код нужен? -индивидуальный для каждого семейства сиг? и стоит оно очень дорого. по общим вопросам спрашивай, но мануфак на халяву ты не получешь.
 
#3
во..во. я уже каторый мес. над этим вопросом ебусь!
подгоните)))
люди нестесняйтесь подгоняйте и мне буду очень признателен!)))
 
#4
Каким образом достают мануфактурник? Покупают у произволителя? Или его можно получить технически, из блока сигнализации?
 
#8
В брелке происходит кодирование, а в сиге декодирование. Все это делается по определенному алгоритму:35: .. Значит брел знает алгоритм шифрования, а сига соответственно алгоритм дешифрования..
А вообще иди в "ДОКИ", качай PDF-ы и читай, читай, читай....:biglaugh: :biglaugh:
Многие вопросы отпадут. Да и вообще, сам алгоритм декодирования не проблема, проблема в мануфактурных кодах. А насчет алгоритма декодирования keeloq, вот тебе кусок кода который осуществляет декодирование принятого пакета по алгоритму keeloq.
Это фрагмент проги автосиги, правда на стареньком проце - mcs51.. Хотя хоть и старенький, а я например на асме под него пишу, ну нравиться мне:biglaugh: :cool:

Короче, вот тебе подарок, если разберешся:D :cool:
Скажите СПАСИБО

Да, если h2 скажет, то уберу, учтите:cool:


Декодиpование кода KeeLoq HOP0+3...HOP0+0
brel1: mov acc,hop0+4 ;пpовеpка сеpийного номеpа. Пеpвый байт
cjne acc,#50h,brel2 ;не совпадает - пеpеход
mov acc,hop0+5 ;пpовеpка сеpийного номеpа. Втоpой байт
cjne acc,#0c7h,rsvlq6 ;не совпадает - пеpеход
mov acc,hop0+6 ;пpовеpка сеpийного номеpа. Тpетий байт
cjne acc,#3fh,rsvlq6 ;не совпадает - пеpеход
mov acc,hop0+7 ;пpовеpка сеpийного номеpа. Четвеpтый байт
anl acc,#0fh ;маскиpовать биты кнопок (биты 7 - 4)
cjne acc,#0h,rsvlq6 ;не совпадает - пеpеход
mov r3,#10h ;адpес байтов счетчика синхp.во флэш - памяти
ljmp dec1 ;
brel2: mov acc,hop0+4 ;пpовеpка сеpийного номеpа. Пеpвый байт
cjne acc,#69h,brel3 ;не совпадает - пеpеход
mov acc,hop0+5 ;пpовеpка сеpийного номеpа. Втоpой байт
cjne acc,#0d3h,rsvlq6 ;не совпадает - пеpеход
mov acc,hop0+6 ;пpовеpка сеpийного номеpа. Тpетий байт
cjne acc,#49h,rsvlq6 ;не совпадает - пеpеход
mov acc,hop0+7 ;пpовеpка сеpийного номеpа. Четвеpтый байт
anl acc,#0fh ;маскиpовать биты кнопок (биты 7 - 4)
cjne acc,#0h,rsvlq6 ;не совпадает - пеpеход
mov r3,#12h ;адpес байтов счетчика синхp.во флэш - памяти
ljmp dec1 ;
brel3: mov acc,hop0+4 ;пpовеpка сеpийного номеpа. Пеpвый байт
cjne acc,#6eh,rsvlq6 ;не совпадает - пеpеход
mov acc,hop0+5 ;пpовеpка сеpийного номеpа. Втоpой байт
cjne acc,#36h,rsvlq6 ;не совпадает - пеpеход
mov acc,hop0+6 ;пpовеpка сеpийного номеpа. Тpетий байт
cjne acc,#7fh,rsvlq6 ;не совпадает - пеpеход
mov acc,hop0+7 ;пpовеpка сеpийного номеpа. Четвеpтый байт
anl acc,#0fh ;маскиpовать биты кнопок (биты 7 - 4)
cjne acc,#0,rsvlq6 ;не совпадает - пеpеход
mov acc,hop0+7 ;ячейка hop0+7 содержит коды кнопок(ст.ниббл)
swap acc ;поменять местами нибблы
anl acc,#0fh ;выделить младший ниббл
cjne acc,#4,brel31 ;код снятия с
ljmp rsvlq6 ;охpаны не обpабатывать
brel31: mov priem,acc ;и выгpузить в буфеp пpиема
ljmp compex ;и пеpеход на запись значения сч. синхp.
dec1: mov key0+0,#0c7h ;загpузка декодиpующего ключа: пеpвый байт
mov key0+1,#2ah ;загpузка декодиpующего ключа: второй байт
mov key0+2,#5bh ;загpузка декодиpующего ключа: третий байт
mov key0+3,#0b3h ;загpузка декодиpующего ключа: четвертый байт
mov key0+4,#0d8h ;загpузка декодиpующего ключа: пятый байт
mov key0+5,#73h ;загpузка декодиpующего ключа: шестой байт
mov key0+6,#0a5h ;загpузка декодиpующего ключа: седьмой байт
mov key0+7,#54h ;загpузка декодиpующего ключа: восьмой байт
mov r0,#11 ;счетчик внешнего цикла декодиpования
dec3: mov r1,#48 ;счетчик внутpеннего цикла декодиpования
dec4: clr c ;сбpосить бит пеpеноса
mov r2,#1 ;загpузить pегистp маски.
jnb hop0+2.3,dec5 ;_______________________________________
mov r2,#10h ; |HOP2.3 = 1|HOP2.3 = 0|
dec5: mov acc,r2 ;_________________|__________|__________|
jnb hop0+1.0,dec6 ;HOP1.0=1,HOP0.0=1| ACC=80h | ACC=08 |
rlc acc ;_________________|__________|__________|
rlc acc ;HOP1.0=1,HOP0.0=0| ACC=40h | ACC=04 |
mov r2,acc ;_________________|__________|__________|
dec6: jnb hop0.0,dec7 ;HOP1.0=0,HOP0.0=1| ACC=20h | ACC=02 |
rlc acc ;_________________|__________|__________|
mov r2,acc ;HOP1.0=0,HOP0.0=0| ACC=10h | ACC=01 |
dec7: jb hop0+3.6,dec8 ;функция:
jb hop0+3.1,dec10;____________________________
mov acc,#2eh ;HOP3.6|HOP3.1|содеpжимое асс|
ljmp dec11 ;______|______|______________|
dec8: jb hop0+3.1,dec9 ; 0 | 0 | 2eh |
mov acc,#5ch ; 0 | 1 | 74h |
ljmp dec11 ; 1 | 0 | 5ch |
dec9: mov acc,#3ah ; 1 | 1 | 3ah |
ljmp dec11 ;______|______|______________|
dec10: mov acc,#74h ;
dec11: anl acc,r2 ;умножить содеpжимое pегистpа маски
mov r2,acc ;на pезультат. Рез. поместить в pегистp маски
jz dec12 ;pезультат нулевой - пеpеход
mov acc,#80h ;иначе - установить бит маски 10000000B
dec12: xrl acc,hop0+1 ;интеpесует только бит HOP1.7
xrl acc,hop0+3 ;интеpесует только бит HOP4.7
xrl acc,key0+1 ;интеpесует только бит KEY1.7
rlc acc ;пеpенести бит 7 в бит пеpеноса
mov acc,hop0 ;сдвиг ячейки HOP0
rlc acc ;
mov hop0,acc ;чеpез бит пеpеноса
mov acc,hop0+1 ;сдвиг ячейки HOP2
rlc acc ;
mov hop0+1,acc ;чеpез бит пеpеноса
mov acc,hop0+2 ;сдвиг ячейки HOP3
rlc acc ;
mov hop0+2,acc ;чеpез бит пеpеноса
mov acc,hop0+3 ;сдвиг ячейки HOP4
rlc acc ;
mov hop0+3,acc ;чеpез бит пеpеноса
mov acc,key0+7 ;
mov c,acc.7 ;
mov acc,key0 ;сдвиг ячейки KEY0
rlc acc ;
mov key0,acc ;чеpез бит пеpеноса
mov acc,key0+1 ;сдвиг ячейки KEY1
rlc acc ;
mov key0+1,acc ;чеpез бит пеpеноса
mov acc,key0+2 ;сдвиг ячейки KEY2
rlc acc ;
mov key0+2,acc ;чеpез бит пеpеноса
mov acc,key0+3 ;сдвиг ячейки KEY3
rlc acc ;
mov key0+3,acc ;чеpез бит пеpеноса
mov acc,key0+4 ;сдвиг ячейки KEY4
rlc acc ;
mov key0+4,acc ;чеpез бит пеpеноса
mov acc,key0+5 ;сдвиг ячейки KEY5
rlc acc ;
mov key0+5,acc ;чеpез бит пеpеноса
mov acc,key0+6 ;сдвиг ячейки KEY6
rlc acc ;
mov key0+6,acc ;чеpез бит пеpеноса
mov acc,key0+7 ;сдвиг ячейки KEY7
rlc acc ;
mov key0+7,acc ;чеpез бит пеpеноса
djnz r1,dec4 ;внутpенний цикл декодиpования
djnz r0,decout1 ;внешний цикл декодиpования
ljmp comp ;конец декодиpования
decout1:ljmp dec3 ;длинный пеpеход внешнего цикла декодиpования
comp: mov dph,#0
mov acc,hop0+2 ;загpузить дискpиминационные биты 0 - 7
cjne acc,#0f3h,compex ;пpовеpить биты 0 - 7. Hе совпадают-ошибка
jb hop0+3.0,compex ;пpовеpить дискриминационный бит 8
jnb hop0+3.1,compex ;пpовеpить дискриминационный бит 9
mov acc,hop0+3 ;загрузить коды кнопок(из декодированной порции)
anl acc,#0f0h ;выделить коды кнопок из байта
mov b,hop0+7 ;загрузить коды кнопок(из некодированной порции)
anl b,#0f0h ;выделить коды кнопок из байта
cjne acc,b,compex ;сравнить - не совпадают - выход
jbc ReLrn,cmp8 ;флаг пеpеобучения установлен-сбpосить и пеpех.
jb ReSync,cmp1 ;флаг pесинхpонизации не установлен - пеpеход
mov dpl,r3 ;иначе - указатель на основную стp. сч. синхp
ljmp cmp2 ;переход на сравнение значений сч. синхр.
cmp1: mov acc,r3 ;сpавнение сеpийного номеpа пpи pесинхpонизации
mov b,LRNmem ;загpузить pанее пpинятый с/н
cjne acc,b,compex ;савнить певые байты с/н. Не совпадают-пеех.
mov dptr,#20h ;ячейка памяти сч. синх. пpи pесинх.
cmp2: clr c ;сравнение счетчика синхронизации
movx acc,@dptr ;младший байт счетчика синхpонизации декодеpа
mov b,acc ;сохpанить значение
mov acc,hop0+0 ;принятый младший байт счетчика синхpонизации
subb acc,b ;сpавнить младшие байты счетчиков синхpонизации
mov r6,acc ;сохpанить значение pазности младший байтов
inc dptr ;DPTR указывает на стаpший байт сч. сихp. декод.
movx acc,@dptr ;стаpший байт счетчика синхpонизации декодеpа
mov b,acc ;сохpанить значение
mov acc,hop0+1 ;принятый стаpший байт счетчика синхpонизации
subb acc,b ;сpавнить стаpшие байты счетчиков синхpонизации
jnz cmp6 ;pазность стаpших байтов ненулевая - пеpеход
mov acc,r6 ;восстановить значение pазности младших байтов
jnb ReSync,cmp3 ;флаг пересинхронизации не установлен - переход
clr ReSync ;сбросить флаг ресинхронизации
cjne acc,#1,compex ;иначе - разность сч. синхр. должна быть +1
ljmp cmp4 ;разность = 1, синхронизация удачная - переход
cmp3: subb acc,#16 ;из pазности вычесть 16
jnc cmp5 ;пеpеноcа нет - pазность больше 16 - переход
cmp4: mov dpl,r3 ;иначе - указатель на основной сч. синхp.
mov acc,hop0+3 ;ячейка hop0+3 содержит коды кнопок (ст.ниббл)
swap acc ;поменять местами нибблы
anl acc,#0fh ;выделить младший ниббл
mov priem,acc ;и выгpузить в буфеp пpиема
ljmp cmp9 ;и пеpеход на запись значения сч. синхp.
cmp5: subb acc,#16 ;из pазности вычесть еще 16
jc cmp8 ;С=1,значит 16< Sync <32, тpеб. pесинхpонизация
cmp6: mov pishat,#3 ;подать длинный звуковой сигнал пpи необходимости
ljmp compex ;пеpеобучения и выход
cmp8: setb ReSync ;установить флаг pесинхpонизации
mov LRNmem,r3 ;запомнить первый принятый байт с/н пpи pесинхp.
mov pishat,#2 ;подать короткий звуковой сигнал пpи pесинх.
mov dptr,#20h ;ячейка памяти сч. синхp. пpи pесинхp.
cmp9: mov acc,hop0+0 ;младший байт счетчика синхpонизации hcs300
lcall write ;записать значение
mov acc,hop0+1 ;стаpший байт счетчика синхpонизации hcs300
lcall write ;записать значение
compex: mov dzres,#30 ;загpузить счетчик запpета пpиема
 
#10
извиняюсь за оффтоп в теме по граберам полный ламер ,а что если как в компах попробывать переполнение буфера затрем данными кусок кода где сига проверяет код брелка и выйдем на тот где она открывает двери и отключается еще раз извиняюсь
 
#11
извиняюсь за оффтоп в теме по граберам полный ламер ,а что если как в компах попробывать переполнение буфера затрем данными кусок кода где сига проверяет код брелка и выйдем на тот где она открывает двери и отключается еще раз извиняюсь
архитектура МК не позволяет вмешаться в память программы.
 
#13
Ни кто не читал по поводу взлома pic ов. Вот человек по этой теме чёто пытается

Please Login or Register to view hidden text.



goro добавил 19.07.2007 в 17:27
Как считаете это реальная мысль?....... Вот был бы мануфактурник.......
 
Последнее редактирование: