LINUX.ORG.RU

Поиск алгоритма CRC32

 ,


0

1

Привет.Имеется небольшой код с контрольной суммой CRC в конце.
Вот он:

04162862805180
00000000000000000019000060068AEC

Последние подчеркнутые 8 символов и есть CRC. Нужно узнать алгоритм подсчета. Пробовал различные комбинации - такой контрольной суммы никак не получалось у меня. Мб у кого-то есть варианты, возможные алгоритмы, софт или хоть какие-то познания в этой сфере? Есть предпосылки полагать, что алгоритм там не сильно замороченный.

Слышал про RevEng, которая может искать алгоритмы, но мой комп категорически отказывается ее запускать, даже через всевозможные эмуляторы и тд. Может кто-нибудь туда этот код загнать? Если не лень...

Также могу дополнительно еще коды дать, ровно с тем же алгоритмом, но данными отличающимися на 2 символа:

04162862805180
000000000000000000320000936585D8

04162862805180
000000000000000000190000

Что это? ASCII? Байты? В какой системе счисления? Откуда перенос строки? Он учитывается для расчета CRC? А Пробел в конце первой строки?

Короче, ты не умеешь формулировать вопросы.

anonymous ()

Есть 4 разных реализации crc32, плюс инициализаций цикла несколько вариантов.

anonymous ()
Ответ на: комментарий от anonymous

Это hex. 16-ричная система. На чипе (mifare) 2 эти строки находятся в разных секторах, но известно что контрольная сумма зависит и от обоих этих строк. Возможно для расчета CRC пробелы или переводы строк удаляются, но возможно и нет...

warandoy ()
Ответ на: комментарий от warandoy

Тогда так и надо писать, что, мол, CRC из 19 байт, 7 из которых лежит там-то, вот их hex представление. Для обозначения хекса вообще есть общепринятые обозначения, тип 0x вначале, или h в конце.

anonymous ()
Ответ на: комментарий от warandoy

Есть же доки на mifare, у меня была когда-то пдф-ка приличного объема, затерялась за ненадобностью.

ilovewindows ★★★★★ ()
Ответ на: комментарий от warandoy

2 эти строки находятся

И опять же не ясно. CRC от байт, или от строк их хекс-представления.

anonymous ()

У меня ситуация была проще crc8, но общая суть одинаковая. Если не можешь в доках на свой девайс (или что там у тебя) найти описание для своего crc то ищешь перебором по всем pole init и другим параметрам если надо до победного конца (от 0x00000000 до 0xffffffff для каждого из параметров) - https://ru.m.wikipedia.org/wiki/Циклический_избыточный_код.

DukeNukem ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.