Random Checksum Test Corpus Generator
Generate bounded ASCII payloads paired with CRC-32/ISO-HDLC and Adler-32 interoperability answers.
Description
A checksum corpus pairs generated payload text with expected checksum values.
A checksum corpus pairs generated payload text with expected checksum values. It is useful for interoperability checks where an implementation must agree on the same byte sequence.
The tool returns result (generated result). These are generated fixtures or selected identifiers; the result does not replace the caller’s choice of repertoire, dataset or intended use.
When to use Random Checksum Test Corpus Generator
Use Random Checksum Test Corpus Generator when you already have caseCount, maximumPayloadLength and want result. Use the stated ranges and distribution for a synthetic fixture, then keep the generating parameters with the result.
How to use Random Checksum Test Corpus Generator and understand its results
- Enter caseCount, maximumPayloadLength using the field table below. Match the units, ordering and data boundaries described in the calculation.
- Run the tool after checking the stated bounds and matching paired observations or categories. A malformed request gives a tool error rather than a usable measurement.
- Read result. Use the calculation and interpretation below to distinguish amounts, ratios, signs and decision flags where applicable.
- Run again for another fixture. Preserve caller-supplied dataset metadata or separate exercise answers from prompts where present.
| Input field | Meaning | Value type and bounds | Requirement |
|---|---|---|---|
| caseCount | Case count | integer; minimum 1; maximum 1000 | Required |
| maximumPayloadLength | Maximum payload length | integer; minimum 0; maximum 4096 | Required |
Generate 1–1000 cases with maximum length 0–4096. Draw characters from the 62-character A–Z,a–z,0–9 alphabet and call CRC-32/ISO-HDLC and Adler-32 calculators.
payload length = floor(draw×(maximumLength+1)) The symbols refer to the supplied quantities or generated values described above; unit conversions and comparison boundaries follow the stated implementation.
{
"input": {
"caseCount": 8,
"maximumPayloadLength": 32
},
"randomDraw": 0.25,
"output": {
"result": {
"cases": [
{
"adler32": "0B480281",
"crc32": "512D2F96",
"text": "PPPPPPPP"
},
{
"adler32": "0B480281",
"crc32": "512D2F96",
"text": "PPPPPPPP"
},
{
"adler32": "0B480281",
"crc32": "512D2F96",
"text": "PPPPPPPP"
},
{
"adler32": "0B480281",
"crc32": "512D2F96",
"text": "PPPPPPPP"
},
{
"adler32": "0B480281",
"crc32": "512D2F96",
"text": "PPPPPPPP"
},
{
"adler32": "0B480281",
"crc32": "512D2F96",
"text": "PPPPPPPP"
},
{
"adler32": "0B480281",
"crc32": "512D2F96",
"text": "PPPPPPPP"
},
{
"adler32": "0B480281",
"crc32": "512D2F96",
"text": "PPPPPPPP"
}
]
}
}
} Limitations and assumptions
These are ASCII text fixtures, not arbitrary bytes. Cases can repeat; checksums are not authentication or cryptographic integrity guarantees.
Random draws use context.random when injected and otherwise Math.random. No seed input or cryptographic randomness guarantee is provided. Consumed draws must be finite and in [0,1); repeated runs can repeat results.
Alternative or Complementary methods
CRC-32 Checksum: Calculate the standard CRC-32/ISO-HDLC checksum of UTF-8 text with polynomial 0x04C11DB7 in reflected form. Adler-32 Checksum: Calculate the Adler-32 checksum of UTF-8 text using the modulo-65521 rolling sums used by formats such as zlib.
Methodological background: ZLIB compressed data format specification: Adler-32.1
References
-
ZLIB compressed data format specification: Adler-32 — Internet Engineering Task Force
Similar or alternative tools
- CRC-32 Checksum
Calculate the standard CRC-32/ISO-HDLC checksum of UTF-8 text with polynomial 0x04C11DB7 in reflected form.
- Adler-32 Checksum
Calculate the Adler-32 checksum of UTF-8 text using the modulo-65521 rolling sums used by formats such as zlib.