Null Cipher Nth-Letter Extractor
Extract every nth Unicode code point at a one-based starting offset from an explicit text stream, including whitespace.
Description
A null cipher hides a message in selected positions of a larger text stream.
A null cipher hides a message in selected positions of a larger text stream. Choosing every nth Unicode code point with a known starting offset is one simple extraction rule, where spaces and punctuation may count as positions.1
Extract every nth Unicode code point at a one-based starting offset from an explicit text stream, including whitespace.
When to use Null Cipher Nth-Letter Extractor
Use this tool to extract every nth Unicode code point at a one-based starting offset from an explicit text stream, including whitespace.
Choose the text, counts, explicit reference time or format parameters requested by this tool. Follow the stated byte, epoch-time and randomness assumptions.
How to use Null Cipher Nth-Letter Extractor and understand its results
- Choose the text, counts, explicit reference time or format parameters requested by this tool. Follow the stated byte, epoch-time and randomness assumptions.
- Enter text, step, offset using the field table and calculation rules, then run the tool.
- Read decoded. The explanation below defines the units, signs, ordering and any flags or placeholder values.
- If the tool reports an input issue, correct the values and run it again. Apply the stated assumptions when interpreting a successfully returned result.
| Input field | Meaning | Value type; see rules below | Requirement |
|---|---|---|---|
| text | Encoded text stream | string; maximum length: 100000 | Required |
| step | Extraction step | integer; minimum: 1; maximum: 9007199254740991 | Required |
| offset | One-based first position | integer; minimum: 1; maximum: 9007199254740991 | Required |
Enter the text, a positive integer step and a one-based positive integer offset. The tool expands the string by Unicode code points, starts at offset−1 and concatenates every step-th point until the end. Whitespace and punctuation are included in the stream. An offset beyond the text or empty text returns an empty decoded string.
decoded = code points at positions offset, offset+step, offset+2×step, … Units, indexing, boundary conditions and exceptional cases are defined in the calculation rules above.
| Output field | Meaning | Value type |
|---|---|---|
| decoded | Extracted text | string |
{
"input": {
"text": "aXbYcZ",
"step": 2,
"offset": 2
},
"output": {
"decoded": "XYZ"
}
} Limitations and assumptions
This follows a supplied rule rather than discovering a hidden message. Positions count code points, not encoded bytes, UTF-16 units or grapheme clusters; combining marks count separately. It does not provide modern encryption or infer how a carrier text was constructed.
Numeric inputs must be finite. Follow the calculation-specific rules for overflow, underflow and exceptional cases. Extremely large text inputs are rejected. Missing required fields, extra fields, wrong value types and violations of the calculation rules are input errors.
Alternative or Complementary methods
Use Acrostic First-Letter Extractor: Extract the first Unicode code point of each nonempty ASCII-whitespace-delimited word, preserving its case. For a complementary task, use Index of Coincidence Calculator: Calculate the probability that two letters drawn without replacement match, using only ASCII A–Z letters from the supplied text.
References
-
Null Cipher Nth-Letter Extractor — tool.io
Similar or alternative tools
- Acrostic First-Letter Extractor
Extract the first Unicode code point of each nonempty ASCII-whitespace-delimited word, preserving its case.
- Index of Coincidence Calculator
Calculate the probability that two letters drawn without replacement match, using only ASCII A–Z letters from the supplied text.