Нужна помощь в определении или чтении инженерных CRC - PullRequest
0 голосов
/ 03 декабря 2018

Мне нужна помощь для обратного проектирования CRC.Приложение представляет собой передачу даты и серийного номера от аккумуляторов к центральному процессору.Я обнаружил, что первые 4 байта строки 1 содержат контрольную сумму или CRC, а в строке 10 также есть контрольная сумма или CRC.Следующие 4 строки никогда не меняются:

00A0    000F    0097    000F    00B6    0037    00F4    002C    007E
0065    00BB    0067    00AE    001C    00BD    0072    00DC    0074
00D9    003F    00B4    00D2    007F    00BC    00D3    00BA    005A
005D    0039    0000    009D    000B    00BA    0035    0063    003F

Строки 5 и 6 содержат серийный номер и год.Строки 7 и 8 никогда не меняются:

    0000    0000    0000    0000    0053    0059    0042    0054    003E
    0035    0000    0000    0000    0000    0000    0000    0000    003B

В строке 9 указывается дата.В строке 10 содержится 2-байтовая CRC или контрольная сумма.

У меня есть около ста примеров для анализа, и я нашел несколько примеров с одинаковой датой изготовления.Из них у меня есть группа из 3, где серийный номер изменяется только на одну цифру, и группа из двух, которые отличаются только на одну цифру.Я пытался использовать CRC Reveng, варьируя формат данных.Например, я попытался запустить месть CRC, чтобы найти контрольную сумму, включая только изменяющиеся данные и все данные.Я попробовал это с и без контрольных сумм без успеха.Я просмотрел группы данных на предмет сходства в контрольных суммах / контрольных суммах и обнаружил, что последним байтом часто является 001A.0018 и 0019 также часто появляются, и в совокупности эти три появляются примерно в 75% случаев.В контрольной сумме CRC / в строке 1 четвертый байт равен 003A или 003B.

Как я могу определить, являются ли они CRC или контрольными суммами?Даже изменение одного числа в данных серийного номера изменит первые 3 байта первой 4-байтовой CRC / контрольной суммы и оба байта в завершающей 2-байтовой CRC / контрольной сумме.Похоже, что целью дизайнера было создать надежный метод передачи слабого сигнала в шумной обстановке.Скорость не была существенной, и может потребоваться несколько минут для получения обновленных данных получателем.Метод передачи - широтно-импульсная модуляция, передаваемая по кабелям батареи с частотой около 20 кГц.Я не могу прочитать это напрямую.Я получаю свои данные из памяти передатчика.

0069    0027    00FB    003A    0060    0003    0000    0000    00C8
00A0    000F    0097    000F    00B6    0037    00F4    002C    007E
0065    00BB    0067    00AE    001C    00BD    0072    00DC    0074
00D9    003F    00B4    00D2    007F    00BC    00D3    00BA    005A
005D    0039    0000    009D    000B    00BA    0035    0063    003F
0009    0040    002C    00F2    0055    0044    0031    0033    003C
0033    0031    0031    0030    0032    0038    0031    0036    00FA
0000    0000    0000    0000    0053    0059    0042    0054    003E
0035    0000    0000    0000    0000    0000    0000    0000    003B
0030    0037    002F    0033    0031    002F    0031    0033    00D3
00BB    0019    0000    0000    0000    0000    0000    0000    007C

0068    0017    0000    003B    0060    0003    0000    0000    00D3
00A0    000F    0097    000F    00B6    0037    00F4    002C    007E
0065    00BB    0067    00AE    001C    00BD    0072    00DC    0074
00D9    003F    00B4    00D2    007F    00BC    00D3    00BA    005A
005D    0039    0000    009D    000B    00BA    0035    0063    003F
0009    0040    002C    00F2    0055    0044    0031    0033    003C
0033    0031    0031    0030    0032    0038    0031    0037    00F9
0000    0000    0000    0000    0053    0059    0042    0054    003E
0035    0000    0000    0000    0000    0000    0000    0000    003B
0030    0037    002F    0033    0031    002F    0031    0033    00D3
00B1    0018    0000    0000    0000    0000    0000    0000    0087

0013    00F1    0000    003B    0060    0003    0000    0000    004E
00A0    000F    0097    000F    00B6    0037    00F4    002C    007E
0065    00BB    0067    00AE    001C    00BD    0072    00DC    0074
00D9    003F    00B4    00D2    007F    00BC    00D3    00BA    005A
005D    0039    0000    009D    000B    00BA    0035    0063    003F
0009    0040    002C    00F2    0055    0044    0031    0033    003C
0033    0031    0031    0030    0032    0038    0031    0038    00F8
0000    0000    0000    0000    0053    0059    0042    0054    003E
0035    0000    0000    0000    0000    0000    0000    0000    003B
0030    00037   002F    0033    0031    002F    0031    0033    00D3
0037    0019    0000    0000    0000    0000    0000    0000    0000

00EB    0091    00F0    003A    0060    0003    0000    0000    0000
00A0    000F    0097    000F    00B6    0037    00F4    002C    007E
0065    00BB    0067    00AE    001C    00BD    0072    00DC    0074
00D9    003F    00B4    00D2    007F    00BC    00D3    00BA    005A
005D    0039    0000    009D    000B    00BA    0035    0063    003F
0009    0040    002C    00F2    0055    0044    0031    0033    003C
0033    0031    0031    0030    0032    0038    0032    0030    00FF
0000    0000    0000    0000    0053    0059    0042    0054    003E
0035    0000    0000    0000    0000    0000    0000    0000    003B
0030    0037    002F    0033    0031    002F    0031    0033    00D3
0097    001A    0000    0000    0000    0000    0000    0000    009F


00BE    0084    00F8    003A    0060    0003    0000    0000    0019
00A0    000F    0097    000F    00B6    0037    00F4    002C    007E
0065    00BB    0067    00AE    001C    00BD    0072    00DC    0074
00D9    003F    00B4    00D2    007F    00BC    00D3    00BA    005A
005D    0039    0000    009D    000B    00BA    0035    0063    003F
0009    0040    002C    00F2    0055    0044    0031    0033    003C
0033    0031    0031    0030    0034    0037    0038    0036    00F2
0000    0000    0000    0000    0053    0059    0042    0054    003E
0035    0000    0000    0000    0000    0000    0000    0000    003B
0030    0037    002F    0033    0031    002F    0031    0033    00D3
0072    001A    0000    0000    0000    0000    0000    0000    00C4


0000    00C8    00F6    003A    0060    0003    0000    0000    00B3
00A0    000F    0097    000F    00B6    0037    00F4    002C    007E
0065    00BB    0067    00AE    001C    00BD    0072    00DC    0074
00D9    003F    00B4    00D2    007F    00BC    00D3    00BA    005A
005D    0039    0000    009D    000B    00BA    0035    0063    003F
0009    0040    002C    00F2    0055    0044    0031    0033    003C
0033    0031    0031    0030    0034    0037    0038    0037    00F1
0000    0000    0000    0000    0053    0059    0042    0054    003E
0035    0000    0000    0000    0000    0000    0000    0000    003B
0030    0037    002F    0033    0031    002F    0031    0033    00D3
00D9    001A    0000    0000    0000    0000    0000    0000    005D


009D    0049    00FE    003A    0060    0003    0000    0000    006F
00A0    000F    0097    000F    00B6    0037    00F4    002C    007E
0065    00BB    0067    00AE    001C    00BD    0072    00DC    0074
00D9    003F    00B4    00D2    007F    00BC    00D3    00BA    005A
005D    0039    0000    009D    000B    00BA    0035    0063    003F
0009    0040    002C    00F2    0055    0044    0031    0033    003C
0033    0031    0031    0030    0034    0037    0039    0031    00F6
0000    0000    0000    0000    0053    0059    0042    0054    003E
0035    0000    0000    0000    0000    0000    0000    0000    003B
0030    0037    002F    0033    0031    002F    0031    0033    00D3
0018    001A    0000    0000    0000    0000    0000    0000    001E

009D    0049    00FE    003A    0060    0003    0000    0000    006F
00A0    000F    0097    000F    00B6    0037    00F4    002C    007E
0065    00BB    0067    00AE    001C    00BD    0072    00DC    0074
00D9    003F    00B4    00D2    007F    00BC    00D3    00BA    005A
005D    0039    0000    009D    000B    00BA    0035    0063    003F
0009    0040    002C    00F2    0055    0044    0031    0033    003C
0033    0031    0031    0030    0034    0037    0039    0031    00F6
0000    0000    0000    0000    0053    0059    0042    0054    003E
0035    0000    0000    0000    0000    0000    0000    0000    003B
0030    0037    002F    0033    0031    002F    0031    0033    00D3
0018    001A    0000    0000    0000    0000    0000    0000    001E



0090    00F7    00FA    003A    0060    0003    0000    0000    00D2
00A0    000F    0097    000F    00B6    0037    00F4    002C    007E
0065    00BB    0067    00AE    001C    00BD    0072    00DC    0074
00D9    003F    00B4    00D2    007F    00BC    00D3    00BA    005A
005D    0039    0000    009D    000B    00BA    0035    0063    003F
0009    0040    002C    00F2    0055    0044    0031    0033    003C
0033    0031    0031    0030    0034    0038    0033    0035    00F7
0000    0000    0000    0000    0053    0059    0042    0054    003E
0035    0000    0000    0000    0000    0000    0000    0000    003B
0030    0037    002F    0033    0031    002F    0031    0033    00D3
00B4    001A    0000    0000    0000    0000    0000    0000    0082
...