3

I would like to cross check a C implementation of the CRC64 ECMA-182 algorithm.

I tried a different C code snippet I found online and I tried two online CRC calculators but each of them returned different results.

Is there some reference implementation or reference data that allows me to get a reliable reference checksum?

Silicomancer
  • 8,604
  • 10
  • 63
  • 130
  • 1
    Seems like a reasonable question to me. Anyway, [here is the description of the ECMA-182 CRC](http://reveng.sourceforge.net/crc-catalogue/17plus.htm#crc.cat-bits.64), along with a check value of `0x6c40df5f0b497347` for the nine-byte string "123456789" (in ASCII, without the quotes). – Mark Adler Dec 09 '15 at 05:03
  • Thanks. That is helpful. Do you have an idea why the CRC32C polynominal on that page is different to the one mentioned in https://tools.ietf.org/html/rfc3385 (0x1edc6f41 instead of 0x105EC76F1)? – Silicomancer Dec 09 '15 at 08:06
  • They both have the same polynomial, which can be written with or without a leading one. I don't see 0x105EC76F1 anywhere. – Mark Adler Dec 10 '15 at 02:32
  • Oh, you are right, I didn't see the hex polynominal and used the binary one which was in reversal order. – Silicomancer Dec 10 '15 at 19:15

1 Answers1

0

The EMBL-EBI web site has an online checksum calculator, that is used in the context of bioinformatics for analysing protein or genome sequences:

http://www.ebi.ac.uk/Tools/so/seqcksum/

that supports many different methods, included the CRC64-ECMA-182. You can paste your input sequence directly in the form and it will return the checksum. The problem is that the input is a sequence must be one from a set of fixed formats:

http://www.ebi.ac.uk/Tools/so/seqcksum/help/index.html#sequence

However those formats are quite simple, for example the FASTA (link)

Mike Nakis
  • 56,297
  • 11
  • 110
  • 142
terence hill
  • 3,354
  • 18
  • 31