Skip to content

Fix CRC-64/XZ polynomial representation in PCF spec#6

Merged
kduma merged 1 commit into
masterfrom
claude/dazzling-mccarthy-eMBzK
Jun 2, 2026
Merged

Fix CRC-64/XZ polynomial representation in PCF spec#6
kduma merged 1 commit into
masterfrom
claude/dazzling-mccarthy-eMBzK

Conversation

@kduma
Copy link
Copy Markdown
Contributor

@kduma kduma commented Jun 2, 2026

Summary

Corrected the CRC-64/XZ polynomial representation in the PCF specification to use the reflected form as the primary value, with clarification about the normal (non-reflected) polynomial.

Changes

  • Updated the reflected polynomial value for CRC-64/XZ from 0x42F0E1EBA9EA3693 to 0xC96C5795D7870F42
  • Added clarification that 0x42F0E1EBA9EA3693 is the normal (non-reflected) polynomial
  • Improved documentation to distinguish between the reflected and normal polynomial forms

Details

The CRC-64/XZ specification now correctly documents the reflected polynomial (0xC96C5795D7870F42) as the primary value used in the algorithm, since the parameters specify refin=true and refout=true. The normal polynomial form is now explicitly noted for reference, making the specification clearer for implementers.

https://claude.ai/code/session_01WvDqtNsESPu2XM4RuFWJ38

The constant 0x42F0E1EBA9EA3693 is the normal (non-reflected) polynomial
of CRC-64/XZ, not the reflected one. Replace it with the actual reflected
polynomial 0xC96C5795D7870F42 to match the convention already used for the
two CRC-32 rows, and add a note mentioning the normal form for readers who
need it (e.g. libraries that accept the normal poly).

No on-disk format change; the check value 0x995DC9BBDF1939FA is unchanged.

Fixes #2

https://claude.ai/code/session_01WvDqtNsESPu2XM4RuFWJ38
@kduma kduma linked an issue Jun 2, 2026 that may be closed by this pull request
@kduma kduma merged commit 12ef8b8 into master Jun 2, 2026
18 checks passed
@kduma kduma deleted the claude/dazzling-mccarthy-eMBzK branch June 2, 2026 14:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Spec v1.0 §8.1: CRC-64 polynomial mislabeled as "reflected poly"

2 participants