Research journal / Session 50Notebook updated 12 Oct 2026
Session 50 / 73

Eight key conventions pass longer controls

Sixteen 600-rune controls passed. The real-text screen produced no coherent continuation and no new verified plaintext.

This follows Session 49, which demonstrated that skipped key positions can hide a correct key. Its 184-rune controls did not test the longer prefix-and-continuation procedure. This session addresses that gap before extending the search.

Fixed scope

Before running the experiment, we fixed eight SHA-256 stream conventions: two counter byte orders (big or little endian), two initial counter values (0 or 1), and either no separator or one zero byte between the UTF-8 seed and the four-byte counter. Digest bytes below 232 are accepted and reduced modulo 29. The 16 text seeds are unchanged from Session 49.

This gives 128 seed/convention candidates per message. These are our test choices, not instructions established from Cicada. Encryption is still additive modulo 29. A candidate that repeats the preceding emitted rune is rejected with probability 0.82, consuming a key symbol but retaining the plaintext rune. The decoder allows at most two skipped key symbols per emitted rune and retains up to 128 states.

For each candidate, score the first 200 runes. Select the highest-scoring candidate and freeze its entire prefix path, including key consumption. Decode the next 400 runes without revising that choice. No continuation score participates in selection.

Longer controls

Controls use the first 600 decoded runes of the solved koan group and, separately, the first 600 of the divinity group. Each group is encrypted once under each of the eight conventions, with deterministic rejection randomness. Each control's language model excludes its entire plaintext group and learns only from the other solved groups. These are two underlying messages, not sixteen independent language samples.

The gate, fixed before running, requires every control to rank the planted seed/convention first among 128 candidates and recover at least 90% of both prefix and continuation runes. No parameters were adjusted after seeing results.

Counter order Starts at Separator Koan prefix / continuation correct Divinity prefix / continuation correct
Big endian 0 None 99% / 100% 100% / 100%
Big endian 0 Zero byte 100% / 99.5% 100% / 99.5%
Big endian 1 None 100% / 99.75% 99.5% / 99.75%
Big endian 1 Zero byte 100% / 100% 100% / 100%
Little endian 0 None 97.5% / 98.75% 99% / 100%
Little endian 0 Zero byte 100% / 99.25% 100% / 100%
Little endian 1 None 98.5% / 96.5% 98% / 100%
Little endian 1 Zero byte 100% / 100% 97.5% / 100%

All 16 planted candidates ranked first; all controls passed. Their largest actual skip runs were one or two, within the decoder's bound. Recovery is strong but not universally exact: these controls also show that a selected correct key can leave some rune errors under this language model and bounded search.

Real-text screen

Using one fixed model, which excludes the koan group, we tested the eight substantial unsolved sections. Each supplied 200 selection runes and 400 continuation runes. There were 1,024 real prefix decodes and eight selected continuations. Scores below are mean log scores per rune, including the hypothesized rejection probabilities; higher is better.

Section Selected seed Order / start / separator Prefix score Continuation score
0 SNOW CRASH Little / 1 / none -4.568 -4.921
1 DIVINITY Big / 0 / none -4.557 -4.857
2 CICADA Big / 1 / zero -4.624 -4.821
4 CRYPTONOMICON Big / 1 / zero -4.575 -4.818
5 INTELLIGENCE Big / 0 / zero -4.647 -4.871
6 WELCOME Big / 0 / zero -4.678 -4.940
7 INTELLIGENCE Little / 0 / none -4.657 -4.725
8 INSTAR Little / 0 / zero -4.573 -4.870

All eight selected candidates score worse on continuation, and inspection of all 400 continuation runes per section finds no coherent plaintext. Control continuation scores range from approximately -3.00 to -2.85. This comparison is descriptive, not a calibrated significance test. Scores are not directly comparable to Session 49 because the language-training exclusion changed.

SNOW CRASH and CRYPTONOMICON winning individual prefixes provides no evidence of Stephenson's involvement. Every section necessarily has a highest-scoring candidate, including when every candidate is wrong.

Interpretation and limits

This closes a practical testing gap: the method can select a planted seed and convention, then continue hundreds of unseen runes with high accuracy on two held-out solved texts. None of the eight real continuations behaves that way.

The negative result applies only to this declared search. It does not exclude key skipping generally, unknown seeds, other hash constructions, nonzero initial offsets, different arithmetic or alphabets, longer rejection runs, other languages, or resets inside sections. The controls sample one planted seed per convention per plaintext group; they do not establish recovery for every possible message and key. The stochastic encoder is not proven to be Cicada's mechanism.

A more useful next step than enlarging the wordlist is to test whether this proposed mechanism predicts the other observed ciphertext properties, particularly repeated phrases. That would ask whether the hypothesis deserves more search effort, rather than merely adding conventions.

Reproduce

Run python -B key_conventions.py with NumPy and companion files in the same directory. The results record the unchanged transcription SHA-256. No external code or new external historical claim is involved in this session.