Идентификация алгоритма CRC - PullRequest
0 голосов
/ 16 ноября 2011

Я хочу исправить некоторые проблемы с CRC (надеюсь, это CRC).Через реверс-инжиниринг программы C ++ мне удалось найти функцию, которая вычисляет этот CRC.

result = initialPolynomialValue;    
for ( i = testedMemorySize; i; --i )
{
  MemValToTest = *ptrMemToTest;
  unsigned int v7 = (result >> 4) ^ 4225h * ((MemValToTest ^ result) & 0xF);
  result = (v7 >> 4) ^ 4225h * ((v7 ^ (MemValToTest >> 4)) & 0xF)
  ptrMemToTest = (ptrMemToTest + 1);
}

Не могли бы вы определить этот алгоритм CRC для меня?Что это за группа?

1 Ответ

1 голос
/ 16 ноября 2011

Это выглядит как будто это просто CRC-16 с пользовательским полиномом (x 16 + x 14 + x 9 + x 5 + x 2 + 1).

...