Computer Interfacing

# How to reverse CRC-64 to get the original DATA

Reversing the CRC-64 process to get the original DATA from CRC Final Value

Author Message
baexps_pr1
New User

Joined: 03 Aug 2010
Posts: 2

 Aug 03, 2010 1:33 pm Hello, I have initialized the CRC Register to ZERO. I have CRC-64 ISO-3309 polynomial of x64 + x4 + x3 + x + 1 **************************************************** The parallel CRC calculation based on the above polynomial is illustrated in the (HDL) code below. ----------------------------------------------------- for i in 63 to 0 loop NEXT_CRC_VAL(0) := CRC_VAL(63) xor DATA(i); for j in 1 to 63 loop case j is when 1|3|4 => NEXT_CRC_VAL(j) := CRC_VAL(j - 1) xor CRC_VAL(63) xor DATA(i); when others => NEXT_CRC_VAL(j) := CRC_VAL(j - 1); end case; end loop; CRC_VAL := NEXT_CRC_VAL; end loop; ************************************************* My 2 DATA Items are following format which is being fed to the CRC Engine [Item 2 & 3]: 0> CRC Initial = 0 1> 64-Bit DATA = 0x00000000UUUUUUUU 2> 64-Bit DATA = 0xWWWWWWWW00000000 3> Final 64-Bit CRC Engine Value = 0x749e85bfb9257584 In the above line items, WWWWWWWW and UUUUUUUU can be any HEXADECIMAL Digit. How do I find those unknown WWWWWWWW and UUUUUUUU contents, given the CRC Initial Value, Final Value and the CRC Engine Polynomial?
aroratushar
New User

Joined: 22 Aug 2010
Posts: 3

 Aug 22, 2010 5:42 pm Can you help me out? I do not know much but I am trying to code the reverse code of CRC64. I used the normal polynomial: 0x95AC9329AC4BC9B5UL; In C#. I did not knew the coding of this function so i copied the code of CRC32 Reverse in C#. CRC32 Reverse is working fine but when I try to reverse CRC64, bugs are coming. I need your help.
baexps_pr1
New User

Joined: 03 Aug 2010
Posts: 2

 Aug 23, 2010 12:35 am Hello aroratushar, Explain in detail what are you trying to do? REVERSE CRC64 means what? Thank you. Regards

 Page 1 of 1

Running on php BB © 2001, 2009 php BB Group