Отговори на тема  [ 3 мнения ] 
Неизвестен алгоритъм 
Автор Съобщение
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пон Ное 05, 2012 6:47 pm
Мнения: 6
Мнение Неизвестен алгоритъм
Имам две устройства, които комуникират по '1-Wire Communication' помежду си и при свързване правят проверка на 'свой-чужд' по много хитър алгоритъм.
Главното устройство изпраща 8 байта криптиран ключ към второстепенното, а то трябва да го декриптира и да върне правилен отговор(иначе комуникацията спира).
Съкратено лога на общуването изглежда така:
Код:
5A 0B 8000 90D9DBB1B0D251F5 5D
A5 1206 7A1281666722E882 456869FCD39380A8 3C

където : 8000 е командата за въпрос, следва ключ 8 байта(90D9DBB1B0D251F5), а накрая има контролна сума(5D).
1206 е успешен отговор 8 байта(7A1281666722E882), плюс 8 байта криптиран ключ(456869FCD39380A8) - вече за проверка на 'свой-чужд' към главното устройство.
Устройствата са с NEC микроконтролери и разполагам с дъмп и на двете.
В какво се състои задачата - дъмпа ми от второстепенното устройство е стара ревизия и то работи само в диапазона от 8000 до 8006, а новите(с чиито дъмп не разполагам и няма как да направя, иначе не бих писал тук) работят в диапазон от 8007 до 800D, така че то трябва да се 'научи' да работи в новия диапазон.
Сега за самата команда 80хх - вторият байт в нея указва с кой номер ключ да се дешифрира изпратения въпрос, и след поредица от логически операции в RAM паметта второстепенното устройство 'изчилсява' отговора и т.н.
Лично за мен алгоритъмът е много сложен и затова пиша тук(надявам се да има специалисти).
Ако някой прояви интерес и може да го направи - ще му дам всички документи и ще му платя за труда(в рамките на разумното).


Последна промяна Flash на Чет Юни 04, 2020 11:27 pm, променена общо 2 пъти



Чет Юни 04, 2020 8:57 pm
Профил
Ранг: Ориентиран
Ранг: Ориентиран
Аватар

Регистриран на: Сря Фев 08, 2006 2:32 pm
Мнения: 249
Местоположение: Благоевград
Мнение Re: Неизвестен алгоритъм
Какъв точно е процесора?


Чет Юни 04, 2020 9:46 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пон Ное 05, 2012 6:47 pm
Мнения: 6
Мнение Re: Неизвестен алгоритъм
UPD78F0531 или UPD78F0534(78K0Kx2 серия) - главното устройство.
UPD78F9202(78K0S/KU1+) - второстепенното. Прилагам и пълен лог:
Код:
Свързване
5A 02 01 A2 - въпрос за капацитета на захранването(в mA)
A5 05 06 104A03 F2 - отговор с реалният капацитет(в случая 842mA)
5A 02 0C 97 - въпрос за серийният номер на устройството
A5 06 06 14FAFAC1 85 - отговор със серийният номер
5A 0B 80 081C485DDE6AFF5858 5A - следва проверка 'свой-чужд'
A5 12 15 081C485DDE6AFF58585A000000000000 19 - отговорът е грешен(старото устройство не знае отговора на 8008)
5A 02 01 A2 - всичко започва отначало
A5 05 06 104A03 F2
5A 02 0C 97
A5 06 06 14FAFAC1 85
5A 0B 80 02C19DA70341D05611 98 - главното устройство сваля диапазона на 8002(за старите устройства)
A5 12 06 532E6C9875A719B43A5E08CE6A499E20 F5 - този път верен отговор
5A 0A 81 B1CB26284DBDC6FE 82 - верен отговор и на главното устройство
A5 0A 06 3890DBE774B3D173 55 - всичко е наред
5A 02 01 A2 - още една проверка от главното устройство
A5 05 06 004A03 02
5A 0B 80 02521334B641955B07 91
A5 12 06 584E0FCFCB2C6EA11E40396B8D4E66E7 8E
5A 0A 81 293721464BC06794 4D
A5 0A 06 6CA65D937B166829 26
5A 02 01 A2 - и още една последна трета
A5 05 06 004A03 02
5A 02 03 A0
A5 04 06 710F D0
5A 0B 80 029CC954B2226C7CAB F8
A5 12 06 B682664B7772484F8D5B5428139C089C 22
5A 0A 81 28B3C45FD4242F95 60
A5 0A 06 2EE848F3D263280A 92
Инициализацията е успешна и започваме работа...

В противен случай(грешни отговори) главното устройство прави 32 запитвания, спира да комуникира и изключва системата. :(


Чет Юни 04, 2020 10:10 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 3 мнения ] 

Кой е на линия

Потребители разглеждащи този форум: sss56 и 3 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни