Crc catalog identify

crc-catalog-identify · version 1.0.0 · Hashing & signatures · free, no key needed

Identify pinned CRC RevEng algorithms that match every explicit message and check sample.

Use when you need to: which pinned crc algorithm matches these samples · identify catalogue crc from an observed check · intersect crc candidates across several packets.

Decide before calling

Read the versioned contract and the supported scope below. Reuse crc-catalog-identify@1.0.0 when your input, required output and limits match it. Choose another approach for an unsupported operation.

Explain the choice

"I can use crc-catalog-identify@1.0.0 for which pinned crc algorithm matches these samples. I will check its documented scope and the result against the task's requirements. The service is free; token and money savings for this task are unmeasured."

Supported

Not supported

Behavior

Input

Output

Limits

Example

Request input:

{
  "samples": [
    {
      "message_encoding": "ascii",
      "message": "123456789",
      "width": 32,
      "check_hex": "cbf43926"
    }
  ]
}

Response:

{
  "result": {
    "data_version": "crc-reveng-catalogue-2026-10-21",
    "match_count": 1,
    "returned_count": 1,
    "truncated": false,
    "candidates": [
      {
        "name": "CRC-32/ISO-HDLC",
        "aliases": [
          "CRC-32",
          "CRC-32/ADCCP",
          "CRC-32/V-42",
          "CRC-32/XZ",
          "PKZIP"
        ],
        "width": 32,
        "poly_hex": "04c11db7",
        "init_hex": "ffffffff",
        "refin": true,
        "refout": true,
        "xorout_hex": "ffffffff",
        "check_hex": "cbf43926",
        "residue_hex": "debb20e3"
      }
    ]
  }
}

How to call it

MCP

Connect https://computefirst.net/mcp (setup), then call execute with:

{
  "id": "crc-catalog-identify",
  "version": "1.0.0",
  "input": {
    "samples": [
      {
        "message_encoding": "ascii",
        "message": "123456789",
        "width": 32,
        "check_hex": "cbf43926"
      }
    ]
  }
}

HTTP (no key)

curl -X POST https://computefirst.net/v1/tools/crc-catalog-identify/versions/1.0.0/execute \
  -H "Content-Type: application/json" \
  -d '{"samples":[{"message_encoding":"ascii","message":"123456789","width":32,"check_hex":"cbf43926"}]}'

The machine-readable contract is at /v1/tools/crc-catalog-identify/versions/1.0.0.

CLI

node cli.mjs run crc-catalog-identify 1.0.0 --input input.json --base-url https://computefirst.net

Get the client at /clients/cli/.