Kryptos Resources
References, verification data, changelog, and contact, everything needed to evaluate the proposed K4 solution.
What this page is
Kryptos invites two kinds of attention: the experience of standing in the courtyard, and the desire to verify what you're being told. The main pages are written for the first experience.
This page exists for the second. It gathers the supporting objects-stable transcripts, confirmed anchors, and reference context-so that the core narrative can remain uncluttered.
If you're here to evaluate claims, begin with Confirmed anchors, then move to Canonical texts, then References. The individual downloads, the collaboration gates, and the changelog follow below.
Confirmed K4 anchors
Over time, the artist confirmed a small number of plaintext anchors inside K4. These are not interpretations or reconstructions; they are fixed constraints that entered the public record directly from the source.
BERLIN
Positions: 64-69
Ciphertext: NYPVTT ->
BERLIN
First disclosed publicly: Nov 2010
How it was shared: A public clue given to the press and
reported as a direct confirmation from the artist.
CLOCK
Positions: 70-74
Ciphertext: MZFPK -> CLOCK
First disclosed publicly: Nov 2014
How it was shared: A public clue reported through major
media coverage and echoed widely.
Context: The artist linked "clock" to Berlin and urged
solvers to "delve into that particular clock." BERLIN and CLOCK
are adjacent artist-confirmed anchors at positions 64-74 of the K4
plaintext.
Project note: The mechanism that produces the surrounding
plaintext is internally consistent and fully reproducible at all
97 positions: R = (C - P) mod 26, R = r + gate, and the one-bit
gate is fixed by position (all from the published rules). BERLIN CLOCK is
a confirmed anchor pair, not the engine of the mechanism. R is not
encoded: no hidden secondary layer, affine residual, Berlin-clock
residual, or second unknown key is required.
NORTHEAST
Positions: 26-34
Ciphertext: QQPRNGKSS ->
NORTHEAST
First disclosed publicly: Jan 29, 2020 (reported late Jan
2020)
How it was shared: A newly released public hint via press
coverage.
EAST
Positions: 22-25
Ciphertext: FLRV -> EAST
First disclosed publicly: Aug 2020
How it was shared: Initially circulated to a small group
and later spread publicly through community reporting.
Meta: Reports quote the artist saying he circulated the
layout "as early as April" 2020 to observe how long it would take
to propagate.
X separators
Status: Not artist-confirmed as a "rule," but present in the
proposed plaintext output.
Role in this project: X is treated as a visible break marker
when lineated for readability.
Mechanism note: In the 7x14 column model used for testing, X
can land at seam-adjacent or gate-transition positions where
boundary behavior is most likely to surface. This is framed as an
output-aligned structural coincidence, not as a control character
that "triggers" state.
These anchors are shown on the K4 ciphertext image on the homepage for fidelity, not emphasis.
K4 reconstruction - reproducibility table
This section exists for independent checking. It does not argue interpretation. It presents the proposed reconstruction in a form that can be audited.
Indexing: Positions are numbered 1-97, left-to-right across the K4 ciphertext. Letters are treated as A=0 ... Z=25 for modular arithmetic. Geometry boundary: 7x14 = 98 cells; position 97 is last filled; position 98 (Tier 7, lane 13) is blank.
Exact strings
K4 ciphertext (97 characters)
OBKRUOXOGHULBSOLIFBBWFLRVQQPRNGKSSOTWTQSJQSSEKZZWATJKLUDIAWINFBNYPVTTMZFPKWGDKZXTJCDIGKUHUAUEKCAR
K4 plaintext (97 characters)
THECOMPASSROSEISHEREXEASTNORTHEASTTHISISYOURPOSITIONXCOMMISSIONBERLINCLOCKWHICHISNORTHEASTOFHEREX
Per-position reconciliation
Note: When P = X, the letter X is part of the reconstructed plaintext and is included in the audit just like any other character. Treating X as a visual break is simply a way of reading the line more naturally after the calculation is complete.
The table below allows direct verification. For each position i, the derived shift R = (C - P) mod 26 can be recomputed independently (A=0 ... Z=25).
Column guide (what each field means)
- i - Position index (1-97). Lane assignment follows: lane = ((i - 2) mod 14) + 1 at all 97 positions. Every row corresponds to one ciphertext character.
- C - Ciphertext letter at that position (from the K4 panel transcription).
- P - Reconstructed plaintext letter at that position (including X characters, which are treated as real plaintext).
- gate - Binary gate value (0 or 1), derived from position via col31, tier mod 3, and seam_corner.
- r - Ring index (0-25). Think "which radius / ring slot did this position land on?" It is the lookup key into the ring table.
- Dependency chain - Verification identities (definitional): position -> gate; (C, P) -> R; (R, gate) -> r. The run-time decode direction is R -> P; deriving R from (C, P) is the audit step, not the mechanism.
- R - Final shift (0-25), verified at all 97 positions. Both representations must agree: (1) cryptographic identity R = (C - P) mod 26, and (2) decomposition r + gate = R. Direct R lookup and r+gate decomposition are equivalent representations.
| i | C | P | gate | r | R |
|---|---|---|---|---|---|
| 01 | O | T | 0 | 21 | 21 |
| 02 | B | H | 1 | 19 | 20 |
| 03 | K | E | 0 | 6 | 6 |
| 04 | R | C | 1 | 14 | 15 |
| 05 | U | O | 0 | 6 | 6 |
| 06 | O | M | 0 | 2 | 2 |
| 07 | X | P | 1 | 7 | 8 |
| 08 | O | A | 1 | 13 | 14 |
| 09 | G | S | 1 | 13 | 14 |
| 10 | H | S | 1 | 14 | 15 |
| 11 | U | R | 1 | 2 | 3 |
| 12 | L | O | 0 | 23 | 23 |
| 13 | B | S | 1 | 8 | 9 |
| 14 | S | E | 1 | 13 | 14 |
| 15 | O | I | 0 | 6 | 6 |
| 16 | L | S | 1 | 18 | 19 |
| 17 | I | H | 1 | 0 | 1 |
| 18 | F | E | 1 | 0 | 1 |
| 19 | B | R | 1 | 9 | 10 |
| 20 | B | E | 0 | 23 | 23 |
| 21 | W | X | 0 | 25 | 25 |
| 22 | F | E | 1 | 0 | 1 |
| 23 | L | A | 1 | 10 | 11 |
| 24 | R | S | 1 | 24 | 25 |
| 25 | V | T | 1 | 1 | 2 |
| 26 | Q | N | 1 | 2 | 3 |
| 27 | Q | O | 0 | 2 | 2 |
| 28 | P | R | 0 | 24 | 24 |
| 29 | R | T | 1 | 23 | 24 |
| 30 | N | H | 1 | 5 | 6 |
| 31 | G | E | 1 | 1 | 2 |
| 32 | K | A | 0 | 10 | 10 |
| 33 | S | S | 0 | 0 | 0 |
| 34 | S | T | 0 | 25 | 25 |
| 35 | O | T | 1 | 20 | 21 |
| 36 | T | H | 1 | 11 | 12 |
| 37 | W | I | 1 | 13 | 14 |
| 38 | T | S | 1 | 0 | 1 |
| 39 | Q | I | 1 | 7 | 8 |
| 40 | S | S | 1 | 25 | 0 |
| 41 | J | Y | 1 | 10 | 11 |
| 42 | Q | O | 1 | 1 | 2 |
| 43 | S | U | 1 | 23 | 24 |
| 44 | S | R | 1 | 0 | 1 |
| 45 | E | P | 1 | 14 | 15 |
| 46 | K | O | 1 | 21 | 22 |
| 47 | Z | S | 1 | 6 | 7 |
| 48 | Z | I | 1 | 16 | 17 |
| 49 | W | T | 1 | 2 | 3 |
| 50 | A | I | 1 | 17 | 18 |
| 51 | T | O | 1 | 4 | 5 |
| 52 | J | N | 1 | 21 | 22 |
| 53 | K | X | 1 | 12 | 13 |
| 54 | L | C | 0 | 9 | 9 |
| 55 | U | O | 1 | 5 | 6 |
| 56 | D | M | 1 | 16 | 17 |
| 57 | I | M | 1 | 21 | 22 |
| 58 | A | I | 1 | 17 | 18 |
| 59 | W | S | 1 | 3 | 4 |
| 60 | I | S | 1 | 15 | 16 |
| 61 | N | I | 0 | 5 | 5 |
| 62 | F | O | 1 | 16 | 17 |
| 63 | B | N | 1 | 13 | 14 |
| 64 | N | B | 0 | 12 | 12 |
| 65 | Y | E | 0 | 20 | 20 |
| 66 | P | R | 0 | 24 | 24 |
| 67 | V | L | 1 | 9 | 10 |
| 68 | T | I | 0 | 11 | 11 |
| 69 | T | N | 0 | 6 | 6 |
| 70 | M | C | 0 | 10 | 10 |
| 71 | Z | L | 1 | 13 | 14 |
| 72 | F | O | 1 | 16 | 17 |
| 73 | P | C | 1 | 12 | 13 |
| 74 | K | K | 0 | 0 | 0 |
| 75 | W | W | 1 | 25 | 0 |
| 76 | G | H | 0 | 25 | 25 |
| 77 | D | I | 0 | 21 | 21 |
| 78 | K | C | 1 | 7 | 8 |
| 79 | Z | H | 1 | 17 | 18 |
| 80 | X | I | 1 | 14 | 15 |
| 81 | T | S | 1 | 0 | 1 |
| 82 | J | N | 1 | 21 | 22 |
| 83 | C | O | 0 | 14 | 14 |
| 84 | D | R | 1 | 11 | 12 |
| 85 | I | T | 1 | 14 | 15 |
| 86 | G | H | 0 | 25 | 25 |
| 87 | K | E | 0 | 6 | 6 |
| 88 | U | A | 1 | 19 | 20 |
| 89 | H | S | 1 | 14 | 15 |
| 90 | U | T | 1 | 0 | 1 |
| 91 | A | O | 1 | 11 | 12 |
| 92 | U | F | 1 | 14 | 15 |
| 93 | E | H | 1 | 22 | 23 |
| 94 | K | E | 0 | 6 | 6 |
| 95 | C | R | 1 | 10 | 11 |
| 96 | A | E | 1 | 21 | 22 |
| 97 | R | X | 1 | 19 | 20 |
A fully worked example and explanatory notes appear in the Verification Walkthrough.
Canonical texts
The goal here is stability. Kryptos attracts a long tail of transcription drift-small differences that quietly change the conversation. This section preserves consistent reference text for reading and discussion.
- K4 ciphertext - presented as inscribed, used as the reference object throughout the site.
- K4 confirmed anchors - the four artist-confirmed plaintext segments and their positions.
- claim_status_summary.txt - public guide to derived, constrained, and fitted claims.
- K1 plaintext - preserved as commonly transcribed from the sculpture, including the intentional misspelling.
- K2 plaintext - preserved as commonly transcribed from the sculpture, including quirks that remain part of the record.
- K3 plaintext - preserved as commonly transcribed from the sculpture.
- Entrance-slab Morse - the dot-dash inscriptions and their widely accepted reading.
Downloads
Every artifact needed to reproduce the reconstruction and audit its boundary. The flagship is forward_decode.py: the standalone forward decoder, all constants embedded, zero file dependencies, self-checking only against the four artist-confirmed anchors.
- forward_decode.py - the standalone forward decoder (flagship).
- claim_status_summary.txt - public claim-status guide for derived, constrained, and fitted layers.
- negative_tests_summary.txt - reader-facing summary of failed derivation attempts and controls.
- k5_precommitments.txt - timestamped K5/late-archive predictions with pass/fail conditions.
- GATE_BLIND_AUDIT_PROTOCOL_2026-06-09.md - the two-stage blind protocol for the on-site gate/ray read.
- gate_physical_preregistration_sheet.csv - the printable 97-row field sheet for the blind read.
- k4_keystream_wanted_poster.txt - the 24 confirmed keystream values any real mechanism must reproduce.
- helper_cards.txt - the reconstructed g-cards, explicitly back-solved.
- BUNDLE_FILE_STATUS.md - file-by-file labels for the flat public bundle.
The full bundle manifest is on the verification page.
References
This site favors sources that are either primary (artist statements, institutional documentation) or careful secondary reporting that preserves dates and direct quotations.
-
Artist statements & interviews Disclosures of K4 anchors and related context
Public disclosures by Jim Sanborn confirming K4 plaintext anchors (BERLIN, CLOCK, NORTHEAST, and EAST) were released incrementally through press coverage and reported correspondence. These are treated here as the only artist-confirmed constraints on K4.
- Wired (Nov 2010): "Berlin" clue - reports NYPVTT -> BERLIN and ties it to a NYT reveal.
- PBS NOVA (Nov 2010): "Berlin" context - corroborates the six-letter clue and its placement within K4.
- The Guardian (Nov 2010): "Berlin" clue coverage - additional contemporary reporting.
- Wired (Nov 2014): "Clock" clue - reports MZFPK -> CLOCK and the "delve into that particular clock" framing.
- Smithsonian Magazine (Jan 2020): "Northeast" clue - reports QQPRNGKSS -> NORTHEAST and summarizes prior anchor releases.
- Elonka.com Kryptos page: timeline & link hub - curated index of major press and document releases.
-
Institutional pages Stable descriptions of the sculpture and site elements
Institutional pages provide stable, citable descriptions of Kryptos as an artwork and of its physical setting.
- CIA (Headquarters): "Kryptos" Sculpture - official overview and setting description.
- CIA Museum artifact page: Kryptos - institutional artifact description and context.
- CIA FOIA Reading Room: "KRYPTOS SCULPTURE" - declassified material and references.
- NSA (PDF): "(U) the cia kryptos sculpture" (Sep 2014) - official summary document including historical notes.
-
K1-K3 solution history Credited solver records and reputable write-ups
These references preserve solver attribution, canonical plaintext, and primary-source descriptions of how K1-K3 were broken.
- CIA Reading Room: "Cracking the Courtyard Crypto" (David Stein) - the CIA-hosted version of Stein's account.
- Wired (Jun 2013): CIA releases David Stein's account - accessible overview linking to the declassified narrative.
- National Security Archive (PDF): Stein article (Studies in Intelligence) - archival hosting of the declassified publication.
- Wired (Jul 2013): NSA solved K1-K3 earlier - reporting tied to document releases and solver timeline context.
- Elonka Dunin: Kryptos Part 3 technique (May 2003) - community documentation of reading/transposition interpretation for K3.
-
On-site documentation Photography and diagrams used to describe physical behavior
Publicly accessible imagery and diagrams are used here to establish layout and viewing behavior-panels, slabs, compass rose alignment, and approach path-separate from any decoding claims.
- CIA HQ page imagery/context - institutional visuals and setting language.
- CIA Museum artifact page imagery/context - additional institutional framing.
- Kryptos (Wikipedia): photo/diagram index - convenient hub for publicly licensed images and cross-references (used as a pointer, not a primary authority).
-
The 2025 events: archive recovery & auction The plaintext recovery, Sanborn's authentication, and the November auction
In September 2025, writer Jarett Kobek and journalist Richard Byrne recovered the K4 plaintext from Sanborn's publicly accessible papers at the Smithsonian's Archives of American Art. Sanborn confirmed the material's authenticity; the coding method and key were not part of what was found, and the discoverers emphasized they had not solved the cipher. Sanborn, who turned 80 in November 2025, auctioned the K4 solution and related materials through RR Auction on November 20, 2025, with the announced intent that the winner maintain the secret. In the same period he clarified the BERLIN CLOCK referent as the Weltzeituhr at Alexanderplatz and announced K5.
Coverage: The New York Times, Wired, and NPR reported the recovery and auction through September to November 2025; primary statements appeared via Sanborn's communications and the auction listing. Dates and framing on this site follow that record.
Collaborate: the puzzle is open
The remaining work is well-defined, and anyone can contribute. A claim is promotable here if it passes three gates: it is stated before checking (no retrofitting), it survives a null baseline (does chance do as well?), and it accounts for how many variants were tried. The keystream wanted poster and the falsification log in the downloads make the first test a ten-minute job.
- The biggest prize: a public derivation of the g_Y card, the largest underived object in the system (six of its 26 cells are already public-forced and serve as out-of-sample tests for any candidate). The full register is on the appendix.
- The fastest test: any proposed key idea must reproduce the 24 artist-confirmed keystream values; chance scores about one of 24.
- The field work: the blind gate/ray read and the rose ENE bearing, both pre-registered in the downloads, for anyone visiting the sculpture.
Credit policy: contributions that survive the gates are credited by name in the changelog and in the relevant page section. Send findings through the contact form below, and include your method, your null baseline, and your variant count.
Changelog
A dated record of how SolveKryptos has evolved, what changed, why it changed, and what it affects.
2026-07-10: External review pass; two wording fixes, boundary corollary, qualifier alignment
An external AI review flagged six issues. Four did not reproduce against the canonical record: the tier-7 R/r/gate grids match the reconciliation table exactly (position 97 at lane 12, blank at lane 13), all download links point to the existing bundle ZIP, and the Basic Guide already frames SUB UMBRA FLOREO and the grid as reconstruction, not sculpture text. Two were valid and are fixed: the data-dictionary dependency chain is now labeled as verification identities rather than "No circularity" (the chain as listed runs in the audit direction, deriving R from the proposed plaintext), and the BERLIN CLOCK project note now uses the site's graded language ("internally consistent and fully reproducible at all 97 positions") instead of "closed."
Added an explicit corollary to the verification page's boundary section: because the full-system incidence graph is a forest, fitted cards can always reproduce a supplied shift stream, so 97/97 agreement certifies arithmetic consistency, never independent validation of plaintext or method; evidential weight rests on the [D] chain, the plaintext-free invariants, the artist-confirmed anchors, and the pre-registered nulls. A matching corollary was added to the Forward Derivability Ledger. Qualifier alignment: the glossary's X LAYER TWO and R-grid entries, the About page's lodestone description, and the physical walkthrough's compass-needle bearing now carry the same reconstruction and pending-audit framing used elsewhere. No claim, grade, or data value changed.
2026-07-07: Technical SEO pass; no content or claims changed
Site-wide technical update with no change to any claim, grade, or data value. The navigation header, footer, and breadcrumb structured data are now static HTML in each page rather than JavaScript-injected, so search engines see the full internal link structure without rendering. Page titles were shortened, top-level headings now name Kryptos explicitly, the homepage ciphertext image was compressed, and cache headers were added. Two framing tightenings rode along: social-card and schema text on the solution and basic pages now say "reconstructed" and "read" rather than "complete" and "solve," matching the site's grading language.
2026-07-01: Transitive closure; f(T) = 13 [D], delta(K) = 6 [D]; English-closure audit
Running the 24 anchor equations to graded fixpoint (a step the June 10 sweep stopped short of) closed f(T) = 13 at pure D-chain grade via positions 67→68, forced g_Z2(K) = 19 and g_Z2(T) = 1 [D], and derived delta(K) = 6 [D], the first rose-East cell supported by public derivation rather than the fitted card. delta(C) = 16 and delta(S) = 22 now stand as the rule's out-of-sample predictions.
- Forward f-count 10 → 11 of 26 (adds f(T) = 13).
- Positions forcing publicly 48 → 49 (position 38 flips to a fully public decode); the per-position grade map updates to D 27 / C 2 / W 22 / B 1 / F 45.
- Back-solved baseline 49 → 45 (transitive closure flips 38→D, 36/51→W, 81→B via f(T)); the conditional ladder still ends at 37, but f(T) is now unconditional so the rose step grants zero positions.
- Four of the eight relational invariants are now absorbed into absolute derived values (all consistency checks pass); four live plaintext-free invariants remain for any candidate chart.
- Negative logged: no affine rule (kpos or std) covers the four non-tail derived f-values.
Same date: a four-test pre-registered English-closure audit asked whether the plaintext could be recovered from the public spine plus an external English n-gram prior. Recovery is negative (at most 7 of 60 blocked letters, two model designs); no positive claim was added. The underdetermination result now extends to English-augmented recovery. Details: appendix, falsification batteries and anchor frontier.
A follow-up correlation and simplification sweep (run 2026-07-02) added one content-level result: the great-circle initial bearing from Langley to the Weltzeituhr at Alexanderplatz is 44.4°, within 0.6° of exact northeast — the reconstructed closing phrase “WHICH IS NORTHEAST OF HERE” is geodetically exact. Since that final NORTHEAST is reconstruction rather than an artist anchor, this is a genuine consistency check on the inferred tail (it flips no positions and changes no grades). This was the previously un-run content-direction test flagged in the clue inventory.
- Solution page: the bearing paragraph now states the measured figure and its check-on-the-reconstruction status.
- Negatives logged (ledger, do not re-run): physical-tableau coordinate lookups for f, delta, and g_Y; a linear rose-rule extension of delta beyond the East and zero classes; cross-card affine relations between the g-cards; g_Y reverse-partner symmetry; gate lane structure beyond the lane-10 spine.
- Circularity guard: an apparent “r determined by (C, lane, ray) at 91/97” regularity is a sample-sparsity artifact (89/93 singleton keys) and is barred from publication.
2026-06-10: Anchor-frontier sweep; FPZ bridge; delta(R) ruling; f 10/26
The anchor-frontier sweep turned every artist-confirmed anchor whose cipher letter has a derived f value into a single-unknown public equation. Unconditional results: f(P) = 11 closes from public data (forward f-count now 10 of 26), six g_Y cells are public-forced (I, L, M, N, V, Q), the Z1 scaffold is publicly confirmed at K, delta(Y) = 3 is promoted to derived, and eight plaintext-free relational invariants now constrain any candidate chart. Under the graded conditional ladder (rose rule [A], FPZ bridge [B], witnessed exception families [W]) the back-solved position count falls from 49 to 37.
New B-class candidate: the zero-delta class {F, P, Z} is the ring-aligned shadow of the rose-East class {C, K, S}. The claim carries its full null hierarchy and a forced-description caveat. The delta(R) = 13 cell is parked, ungraded: internally consistent but unwitnessed and basis-dependent. Two circular statistics proposed during the session (anchor-zone enrichment, tail-block enrichment) were rejected and logged; neither appears on this site as evidence. Details: appendix, anchor frontier.
2026-06-10: Bundle curated to v15 (public-facing artifacts only)
The canonical bundle was rebuilt as a flat folder of 29 public-facing artifacts: source transcriptions, current reconstruction tables, verification scripts, field sheets and protocols, and concise public summaries.
- Public summaries replace internal logs: claim_status_summary.txt, negative_tests_summary.txt, and k5_precommitments.txt now carry the claim grades, negative-test record, and timestamped predictions in human-readable form; the long internal research ledgers were retired from the shipped bundle.
- Core sources kept: Cipher_side.txt and Tableau_side.txt transcriptions remain, alongside the K1–K3 texts, anchors, and Morse reference.
- Legacy artifacts retired: duplicate grid views, old field worksheets, superseded helper explanations, and the legacy field-card PDF were removed to reduce citation risk.
- In-bundle authority added: BUNDLE_FILE_STATUS.md labels every remaining artifact by what it is allowed to prove (core source / current audit / reconstructed / conjecture / check artifact).
- Site links retargeted: all download links now point to the v15 bundle and its public summaries.
2026-06-09: Forward decode closure; rose-East rule; honest regrounding completed
The largest single update since launch. The site-wide framing moved from "solved" to "recovered, reconstructed, and bounded," and the June 2026 findings shipped.
- Forward decode: the reconstructed method now runs forward end to end with no plaintext input; two independent implementations agree; forward_decode.py published as the flagship artifact.
- Tier-2 grade map: every position graded by the worst component its decode requires (D 26 / C 2 / W 20 / F 49); published on the verification page with the verbatim grade string.
- Rose-East rule: the three hard Z2_delta values follow the East ray of the rose-wrapped alphabet (delta = 16 × ring mod 26); published as an A-class candidate with its required caveat and full evidence package.
- Path search: 134 declared reading geometries tested; only row-reads survive anchor training (conditional on the cards).
- Z2 null batteries: every public-feature generator for the full Z2 card scores at or below chance; outside its three hard cells the card is an authored worksheet layer.
- Honest regrounding: "solved," "closed mechanism," and "fully derived" claims replaced by graded language site-wide; back-solved framing for the cards everywhere; superseded readings (K/C/S terminal-state, K = 6 balance) marked; embedded signatures retiered as working theory; boundary, methodology, grade-map, and open-problems sections added.
- New downloads: forward decoder, claim status summary, negative-tests summary, K5 precommitments, blind gate protocol, pre-registration field sheet, keystream wanted poster; canonical bundle rebuilt.
- Corrections: the archive discoverers are now correctly credited as writer Jarett Kobek and journalist Richard Byrne.
2026-05-27: Physical-flip discovery; simple-puzzle reframing; helper-layer closure
Note: the certainty language in this entry reflects the site's claims as of this date. It is superseded by the 2026-06-09 regrounding above, which regrades the cards as back-solved and the f-table as 9/26 forward-derived.
This update consolidates the May 2026 research cycle. The plaintext is unchanged. The math is unchanged. All 97 positions still verify under R = (C − P) mod 26. What changed is the understanding of how the mechanism actually works, and therefore how the site presents it.
- Cipher reclassified: K4 is now described as a Quagmire III variant with a physical keystream and a one-bit gate, replacing the earlier two-key framing. Same arithmetic; cryptographically more accurate.
- Simple-puzzle headline: The site now leads with the four-step on-site procedure, same KRYPTOS keyword as K1–K3, back-of-sculpture keystream, one-bit gate, standard Quagmire III subtraction. Sanborn has long said K4 should reduce to a simple puzzle. It does.
- Technical detail repositioned: Deep derivations (f-table closure rules, helper-card layer, structural signatures) moved to the verify page as supporting evidence for skeptical readers.
- Helper letter identified physically: The helper letter at each K4 position is the character on the tableau side of the sculpture at the same row and column as the cipher position. No fitting, no algorithm, the solver reads it directly off the back of the copper.
- Boundary alignment confirmed: Cipher row 25 columns 26–31 read ...W?OBKR. The tableau side at the same row and columns reads UVWXZK. The pre-K4 ? cell maps to V (the “virtually invisible” excluded bridge slot, matching the Morse phrase); OBKR maps to WXZK (the active X-pass cap).
- Helper packet structure: The 97 K4 cells decompose physically as WXZK | Y row | Z row | footer = 4 + 31 + 31 + 31. The visible footer is the standard alphabet with a leading blank and partial wrap, not a re-read of the Z row.
- Z2 pass reads the footer, not the Z row: The fourth pass (positions 67–97) reads the standard-alphabet footer row, not a second read of the Z row. Before lookup, that visible footer converts into KALPHA state and then links to Z1 through the transport g_Z2 = g_Z1 + Z2_delta.
- Z2 footer basis handoff: The Z2 pass now has an exact basis rule: the visible standard footer converts into KALPHA state by KALPHA[(stdpos(letter) - 1) mod 26], with the leading blank carrying Z. This reproduces the derived Z2 values at all 31 Z2 positions.
- g_X cap-pass card: The four X-pass values are g_X(W)=21, g_X(X)=4, g_X(Z)=24, g_X(K)=11, forced by the verified R-grid at positions 1–4 via g_X(T) = (r − f(C)) mod 26; the cap decodes OBKR → THEC only under them. (g_X is its own cap-pass card, not a slice of g_Y.)
- K2’s “X LAYER TWO” explained: Sanborn’s 2006 K2 correction, replacing the earlier slipped reading “ID BY ROWS” with “X LAYER TWO,” refers to the literal second physical layer of the sculpture, the tableau back. The corrected ending explicitly predicts the K4 physical-flip mechanism.
- Gate framing: The one-bit gate is now documented as solved, position-derived, and fully verifiable. Use the published X cap + Y + Z1 + Z2 rule chain to recover all 97 gate bits.
- Gate certainty language pass: Removed lingering “open question / unconfirmed” wording about gate source across core pages. Gate status is now presented consistently as fixed by position and fully verifiable.
- Helper-card derivation made explicit: Added a simple step chain for how card values are computed (not guessed): R = (C - P) mod 26, r = (R - gate) mod 26, g_state(T) = (r - f(C)) mod 26, with pass-by-pass assignment (X, Y, Z1, Z2).
- Beginner-facing explanation upgrade: Appendix, Verify, and Method now include plain-language helper-card derivation notes (including a simple explanation of mod 26 wraparound), so first-time readers can reproduce values step by step.
- New helper-card artifacts: Added downloads/helper_cards.txt for raw card values. Later bundle revisions replaced the explanatory draft with claim_status_summary.txt.
- f-table fully derived (26 / 26): 24 entries via documented chain derivations (KRYPTOS keyword direct, tail formula, misspelling cascade, family chains) plus 2 via unique closure rules verified against all 26 alphabet letters, C by zero-reset closure, G by Gray/transition dual closure.
- Z1 binary mask fully derivable from KALPHA alone: The default / exception split is fixed by kpos mod 8 ∈ {0, 2, 3, 4} plus a 3-rule exception within those classes. Requires no plaintext or crib.
- Y master template derivation: Rev 16 closes the Y-pass gate rule at 31/31 and forward-accounts for Z1/Z2 transitions through phase drift, terminal carry, and footer-collapse operations.
- g_Z1 12 shift constants per-shift sourced: Each of the 12 shifts traces to exactly one letter from a 4-class palette, KRYPTOS keyword (6 shifts), ABSCISSA keyword (3 shifts), Morse slab phrase via the UMBRA letter (1 shift), and internal structural closure letters G and J (2 shifts).
- g_Y three-tier name-pointer (26 / 26 covered): 12 letters via f-pointer rule, 14 letters via std-pointer rule pointing to f-collision-group canonical representatives.
- Lower g_Z2 fully explained (13 / 13): 4 cells forced by repeated (cipher, plaintext, gate) tuples, 2 by the +13 opposition rule, 3 by unique name-pointer closures into the f-table (Q→K, U→S, N→T, each uniquely the only KALPHA letter producing its g_Z2 value through f), 2 by the std-pointer rule (H=10→K, J=18→S), and 2 ambiguous within their f-collision group with values locked.
- KRYPTOSA → IDQLNAME: The f-table identity-card signature. KR→ID, YP→QL, TOSA→NAME, with TOSA→NAME unique across all 358,800 ordered 4-letter sources in the 26-letter alphabet.
- SUB UMBRA FLOREO: A 14-lane shadow register embedded in the Z-side helper cards. The phrase is the national motto of Belize (“Under the shade I flourish”). Random-string probability of the source letter set: 6.82 × 10⁻⁸.
- AMID GRAY / I MAP J: An internal instruction card derived from the difference D = g_Y − g_Z1 under the KYPT / ROSA basis switch. Performs the mechanical Gray-map J → X, the active row entry into the helper packet.
- KYPT / ROSA balance laws: The 26 KALPHA letters partition into two 13-letter sets with zero overlap and perfect numerical balance on the g_Y + Z2_delta sums (both sides total 298).
- ANDER → KYARX: The Alexanderplatz / YAR–RAY witness. ANDER, a substring of the Berlin Clock’s home location, maps through (f + g_Y) / STD to KYARX, surfacing the YAR sequence from the K3-panel raised letters.
- K / C / S → T / Z / K: Terminal-state closure under g_Z2 / standard alphabet, anchored by BERLIN / CLOCK and the KYPT / ROSA balance law.
- Canonical bundle (v13): the cipher is described with the Quagmire III framing throughout, and the gate is presented as a solved position-derived value. gate_map.txt remains the primary verifiable form, with companion files for X/Y/Z rule reproduction and full 97-row checks.
- Pages updated: index, basic, about, physical, solution, method, verify, appendix, resources, fieldguide, glossary, plus new helper-card download artifacts.
The solution is internally complete and arithmetically verified at all 97 positions. Archival confirmation from Sanborn’s working materials would remain the highest standard of external verification, but the cipher’s forward-derivation from public clues and physical features is now closed.
2026-05-20: Canonical bundle v10 (data integrity + file completeness)
- Bundle bumped to v10. Three real fixes plus a long-overdue file completeness pass; no change to mechanism, plaintext, or any verified value.
- Fixed gate_map.txt: The blank cell on Tier 7 was shown at Lane 12 instead of Lane 13 (off by one). All 97 active positions are unaffected; the dot just sat in the wrong column of the rendered grid.
- Fixed k2_plaintext.txt: Restored the canonical Sanborn misspelling UNDERGRUUND (was UNDERGRUND, one U). The double-U misspelling is the K2 anchor for the +19 bridge rule documented in f_table.txt and entrance_slab_morse.txt, so the single-U version contradicted the rest of the bundle.
- Added ray_classification.txt: The legacy 7×14 E/NE/S map that the binary gate was originally derived from. Marked as LEGACY with the explicit equivalence rule (E→gate=1, NE/S→gate=0). Restored to the bundle in response to a reader request.
- Rebuilt verify.xlsx: Reconciliation sheet now uses the gate column model (i, T, L, C, C#, P, P#, gate, r, R, R_check, Match), matching the on-page table on this site. All 681 formulas pass; 97/97 PASS; anchor positions highlighted.
- Expanded verify.py: Now runs three independent checks instead of one, the arithmetic identity (R = (C−P) mod 26), the decomposition (R = r + gate), and anchor preservation (EAST, NORTHEAST, BERLIN, CLOCK at their documented positions).
- Vocabulary cleanup: Both README files (README.txt and SolveKryptos_README.txt) now use the binary gate vocabulary throughout, matching the website. Older ray/Offset references retained only in ray_classification.txt with a LEGACY header.
- This page updated: Bundle manifest reflects the actual file list; verify.xlsx reference corrected (was k4_verify.xlsx).
No plaintext, R values, r values, anchors, or formulas changed. All 97 positions verify identically before and after this update.
2026-03-15: On-site solvability achieved
- New: On-Site Field Guide (fieldguide.html). The complete 8-step procedure to solve K4 with pen, paper, and a calculator. No external charts required. Every step traced to a physical witness or public clue.
- f/g decomposition documented: R is no longer just a monolithic lookup table. The on-site derivation path (r = (f + g) mod 26, R = r + gate) is now fully explained on method and field guide pages.
- Cipher classification: K4 formally classified as a spatially-addressed shift cipher using standard alphabet arithmetic.
- Master constants: Eight numbers (0, 3, 4, 11, 13, 19, 24, 1) sourced from on-site features, documented across solution, method, and field guide pages.
- Clue mapping table: Every Sanborn clue (OBKR, Morse phrases, compass bearings, K1/K2/K3 misspellings, YAHR) mapped to its specific solve function on the solution page.
- Glossary expanded: 12 new terms including f value, g value, control card, master constants, binary gate, YAR/RAY disambiguation, Weltzeituhr, Mengenlehreuhr, K5, on-site solvability, bridge rule, helper strip.
- Navigation updated: Field Guide added to header, sitemap, breadcrumbs, and all continue-nav sections across all pages.
- All ambiguity resolved: The running ambiguity ledger shows all items green. No yellow or red items remain.
2026-02-25: Mechanical closure formalized
- Mechanism declared closed: R = (C − P) mod 26 holds at all 97 positions. r + gate = R holds at all 97 positions. Gate = 1 where the packet-phase rule yields 1. Lane = ((i − 2) mod 14) + 1 holds at all 97 positions. These are verified relationships, not proposed ones.
- Equivalent representations confirmed: Direct R lookup and r+gate decomposition produce identical results at all 97 positions and are documented as equivalent representations of the same verified shift.
- Berlin role clarified: BERLIN (positions 64–69) and CLOCK (positions 70–74) remain confirmed adjacent anchors. The formulas define the mechanism.
- 24-sector arithmetic claims removed across all pages.
- Encoding-layer claims eliminated: R is now stated explicitly as not encoded: no hidden secondary layer, affine residual, Berlin-clock residual, or second unknown key is required.
- Orientation calibration documented geometrically.
- Physical layer formalized: Ciphertext face fixes stream order; tableau face fixes column indexing discipline; orientation cues prevent lane drift.
- Provenance note: The origin story for r is documented separately from the solved arithmetic mechanism.
This update reflects the transition from mechanism-as-analogy to mechanism-as-formula. No new plaintext claims were introduced.
2026-02-13: Dual-clock mechanism formalized; X-boundary behavior documented
- Selector + accumulator model stabilized: The Berlin Clock reference was formalized as a dual methodological cue, the Berlin World Clock (24-sector stance selector) and the Berlin Set Theory Clock (set-sum accumulator).
- Boundary-state clarification: The role of X within the reconstructed plaintext was documented as part of the output itself, aligning with seam-adjacent and ray-start boundary behavior under the 7×14 column model.
- Cross-page consistency pass completed: Updated all content pages to reflect unified terminology and mechanism framing.
- Publication posture strengthened: Clarified falsifiability criteria and separated structural claims from interpretive layers.
Attribution: The full-span K4 plaintext reconstruction and mechanism were resolved and documented by Matt Lacy, independent cryptanalysis researcher and IT professional, Austinburg, Ohio.
2026-02-02: Structural clarification and publication lock
- Constraint vs. order formalized: Explicitly separated what the sculpture constrains (orientation, boundaries, mechanism class) from what it intentionally withholds (the final traversal/ordering rule).
- Physical clue inventory completed: Updated the on-site walkthrough to surface all materially relevant sculptural cues, including directional reversals (YAR/RAY), turn behavior, and consistent structural break markers.
- Berlin Clock role locked: Clarified that the Berlin Set Theory Clock supplies a computation model, not navigation, traversal, or geographic instruction.
- Method page stabilized: Finalized K4 framing as a constrained mechanical system rather than a keyword-based cipher.
- Solution presentation finalized: Published the proposed K4 plaintext with artist-confirmed anchors preserved exactly.
- Verification posture strengthened: Confirmed falsifiability criteria and bounded remaining uncertainty to the absence of a public traversal chart.
This update marks the transition from iterative exploration to a publication-ready state.
2026-01-20: Exhibition draft prepared
- Sculpture-first framing: Reoriented the site to begin with the physical installation, courtyard context, materials, and spatial behavior, before moving into technical analysis.
- Context expanded: Clarified the resolved structure of K1–K3 and highlighted how K4 differs in method, constraints, and interpretive demands.
- Clue sections established: Introduced dedicated sections for the Morse inscriptions, compass rose behavior, Berlin Clock reference, and alphabet/row mechanics.
2025-12-11: K4 plaintext first resolved
- Full K4 plaintext string stabilized for the first time, preserving all artist-confirmed anchors and producing a coherent end-to-end instruction.
- Resolution precedes proof: At this stage, the plaintext existed as a working result prior to a fully articulated traversal or ordering explanation.
- Focus shifted to validation: Subsequent work concentrated on mechanism modeling, constraint analysis, and identifying what information the sculpture provides versus what it withholds.
Attribution: The stabilized full-span plaintext reconstruction was first identified and documented by Matt Lacy, independent cryptanalysis researcher and IT professional, Austinburg, Ohio. Later entries formalize the mechanism that produces this result.
Contact
Use this section for reproduction reports, careful questions, and collaboration requests. Please keep messages specific and respectful.
Response time: I read everything, but I reply selectively, especially when a question is already answered in the walkthrough or verification pages.