Guth
NewsDocs
Page actions
View as Markdown ↗
Explore MCP tools ↗

instrument mechanism / verified-clean

Caesar / Substitution Cipher Tool mechanism

The inspectable method record for Caesar / Substitution Cipher Tool, kept separate from implementation and qualification.

Status: VERIFIED_CLEANLifecycle: verified-clean

Model scope

The core Caesar and positional substitution concepts are standard, but the specification needs explicit alphabet, case, nonletter, key-validation, inverse-mapping, negative-shift, and brute-force-direction rules before implementation can be verified as unambiguous.

  • The Caesar formula C=(P+k) mod 26 is correct for encryption when letters are indexed A=0 through Z=25 and k is an integer shift; decryption must use P=(C-k) mod 26 or an equivalent inverse shift.
  • Direct substitution is correct only when the substitution alphabet is a valid 26-letter permutation with a clearly defined direction, such as plaintext alphabet A-Z mapped positionally to the supplied key alphabet. Decryption requires the inverse mapping.
  • The specification does not define whether shifts are normalized modulo 26, how negative shifts are handled, whether case is preserved, or whether nonalphabetic characters are left unchanged.
  • The specification does not define whether the all-26-shifts table shows encryption or decryption, nor the ordering and labels of the shifts.

Units and conventions

  • Alphabetic characters use the standard English alphabet with A=0, B=1, ..., Z=25.
  • The Caesar shift k is a dimensionless integer and is normalized modulo 26; for example, k=27 is equivalent to k=1 and k=-1 is equivalent to k=25.
  • Spaces, punctuation, and digits are assumed to remain unchanged and do not consume shift positions.
  • The examples assume uppercase output for uppercase input; case-preservation behavior for lowercase input is unspecified.
  • A substitution key is assumed to contain exactly 26 unique alphabetic characters, with the character at position i replacing plaintext letter A+i.

Inspectable vector

One of 4 source-bound review vectors:

{
  "inputs": {
    "mode": "caesar_encrypt",
    "text": "MEET ME AT 9",
    "shift": 3
  },
  "expected_outputs": {
    "encoded_text": "PHHW PH DW 9"
  },
  "working": "M=12: (12+3) mod 26=15=P; E=4: (4+3) mod 26=7=H; E=4: (4+3) mod 26=7=H; T=19: (19+3) mod 26=22=W. The second MEET becomes PHHW. M=12 -> P=15; E=4 -> H=7. A=0: (0+3) mod 26=3=D; T=19 -> W=22. Spaces and 9 are unchanged. Result: PHHW PH DW 9."
}

Failure boundary

BREAK_CLAIMED · SELF_FLAGGED

An incomplete 25-character substitution alphabet causes a lookup outside the defined mapping: encrypting Z produces an undefined result. The tool should reject this input instead of returning malformed ciphertext.

Other records

Sources and evidence

These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.

  • VERIFIED_LEDGER.json
  • evidence-tranche5/tranche5-results.json
  • BOUNDARY_HAZARD_CATALOG.json