CRC-64 used in XZ compression format and file integrity verification Uses 64-bit polynomial with reflected input processing.
| Property | Value |
|---|---|
| Category | Checksums |
| Sub-category | Cyclic Redundancy Check |
| Security status | π Educational Only |
| Complexity | Advanced |
| Inventor | W. Wesley Peterson |
| Year | 1961 |
| Origin | πΊπΈ United States |
| Source | algorithms/checksum/crc.js |
Status: π Educational Only
| Issue | Description | Mitigation |
|---|---|---|
| Not Cryptographically Secure | CRC is designed for error detection, not security. It can be easily manipulated by attackers who know the algorithm. | Use cryptographic hash functions (SHA-256, SHA-3) for security purposes. Use CRC only for error detection. |
| Hash Collisions | CRC-64 has limited output space, making collisions relatively easy to find intentionally. | For security applications, use cryptographic hash functions with larger output sizes. |
3 vectors ship with this algorithm and run in the test suite. Byte values are hexadecimal.
Vector 1 β Empty string
| Field | Value |
|---|---|
input |
(empty) |
expected |
0000000000000000 |
Vector 2 β Single byte βaβ
| Field | Value |
|---|---|
input |
61 |
expected |
330284772e652b05 |
Vector 3 β Catalogue check value for CRC-64/XZ
| Field | Value |
|---|---|
input |
313233343536373839 |
expected |
995dc9bbdf1939fa |