Dolly Moulekhi Historical cryptology · Research notebook

DECODE R4284 / R4325

Reading a Swedish–Latin cipher letter

An alphabet preserved in another archival record turns parts of R4284’s numbers into words. Here is what the independently checked match reveals—and what it does not.

Published 25 October 2026 · Updated 26 October 2026 · By Dolly Moulekhi · Research in progress

Among the numbers in this historical letter is a phrase that can be read as nobis et patriae securum: “safe for us and our country.” It emerges when the numbers are replaced with letters using an alphabet strip in a separate key record, R4325. Other passages yield Swedish instructions and references to heirs, friends, and relatives.

This archival-key match has been independently checked and accepted by Cyphersolver, but it is not a complete translation. The useful result is a set of readable passages within a still-fragmentary letter. The examples below separate what the program produces from the editorial work needed to understand it.

Just want to understand the message? Read the English excerpts and explanation.

Start with the source

The original letter

R4284 is held at Riksarkivet, Sweden, under Chifferklaver låda II:114. Its numerical text mixes cipher groups with Latin words written openly. Those already-readable words are part of the source, not a decoding achievement.

See the manuscript

View the original letter’s opening image

This opens the manuscript crop hosted with Daniel Bourdeau’s earlier write-up. Image credit: Riksarkivet, Stockholm, via DECODE R4284. It shows the opening lines, not the whole letter.

Open the DECODE source record. The numerical passage examined here is on I25750, right page, with its continuation on I25751, upper left. Other letter-cipher material on the images is outside this result.

Why a link rather than an embedded scan? Image reuse terms have not been established for this release. The image stays at its source; this site does not copy or automatically load it.

The record dates the material broadly to the seventeenth century. A more specific 1628/Camerarius association appears in earlier work on an archival annotation, but the date, writer, and recipient are not established by this decipherment.

One worked example

From numbers to “safe for us and our country”

The proposed key is the horizontal alphabet strip below the first square grid on I25940 in R4325. It gives several numbers for each letter. For example, 65 gives n, 40 gives o, 28 gives b, 2 gives i, and 19 gives s.

  1. The cipher numbers

    Selected numeric run from transcription line 28, after the already-clear word quam.

    65 40 28 2 19 37 18 14 5 72 71 94 5 9 78 57 56 77 71 46 69

  2. The program’s literal output

    nobisetpatriaesecurum

    The program substitutes letters. It does not supply spaces or translate the phrase.

  3. The editorial reading

    nobis et patriae securum

    Spaces are added by a reader; the letters are unchanged.

  4. The provisional English meaning

    “Safe for us and our country.”

    This is a phrase within an incomplete sentence, not a translation of the entire letter.

Read the result

What comes out of the cipher?

These are selected short passages, not a continuous letter assembled from disconnected fragments. Each example shows literal output, a reading with editorial spaces, and a provisional English gloss. Line numbers refer to the working transcription file, not archival foliation. No proposed digit splits are used in these examples.

Safety for “us and our country”

Line 28 · Latin

Literal outputnobisetpatriaesecurum

nobis et patriae securum

“Safe for us and our country.”

The words are readable, but this fragment alone does not identify who “us” refers to or what arrangement would provide that safety.

An instruction to the recipient

Lines 33–34 · Historical Swedish

Literal outputbeflitaederatdetmotteskee

beflita eder at det motte skee

Approximately, “endeavour to ensure that it happens.”

This sounds like an instruction. The phrase by itself does not tell us exactly what the recipient is being asked to achieve.

Ports in the Baltic Sea

Lines 37–38 · Historical Swedish

Literal outputsåmångahamnarinneiöstersiön

så många hamnar inne i Östersiön

Approximately, “so many ports in the Baltic Sea.”

This is a geographic clue, not an identification of a treaty or campaign. The excerpt does not establish who holds the ports. Capitalization of the sea’s name is editorial.

Heirs, friends, and relatives

Lines 45–46 · Historical Swedish

Literal outputarfwingarsomförsinawennerochförwanter

arfwingar som för sina wenner och förwanter

“Heirs … as for their friends and relatives.”

The preceding syntax is unresolved. We cannot yet say whose heirs these are or what benefit or obligation is being discussed.

A closing communication

Lines 50–51 · Historical Swedish

Literal outputcommuniceramedederfördennagången

communicera med eder för denna gången

Approximately, “communicate with you on this occasion.”

This phrase occurs in the continuation. Its surrounding wording and the final groups remain uncertain; no signature or sender is recovered here.

For readers who do not know Swedish or Latin

Read it in English

Here are the selected readable parts in English, in their order in the letter. These are provisional translations of separate fragments, not a continuous translated letter. Text before, between, and after them is omitted here; some of it remains unread. The ellipsis within the heirs excerpt marks an unresolved connection.

Line 28

“Safe for us and our country.”

Lines 33–34

“Endeavour to ensure that it happens.”

Lines 37–38

“So many ports in the Baltic Sea.”

Lines 45–46

“Heirs … as for their friends and relatives.”

Lines 50–51

“Communicate with you on this occasion.”

The passage-by-passage results above show the corresponding Swedish/Latin output and the uncertainty around each gloss. The English wording is editorial interpretation; the decoder itself only substitutes letters for numbers.

Follow the letter line by line

Opening · Lines 10–18

  • 10–11: Too unclear for a dependable English reading. Includes <952> and a doubtful already-clear Latin word possibly related to “hoping.”
  • 12: “Also […] <347> […] for the time being […]” followed by an incomplete Swedish phrase. “Also” and “for the time being” translate already-clear Latin.
  • 13–14: “[…] <831> […] in the Baltic Sea […] besides all other […]” The “besides” phrase was already clear.
  • 14–17: Tentatively: “[…] means which would take too long to enumerate […] and which we shall not forget.” Repetition and anomalous letters make this reconstruction uncertain.
  • 18: “But […] <1042> […] as a last [resort?] […] <941>.” “Resort” is a contextual guess, not a recovered word.

Negotiations and conditions · Lines 19–28

  • 19–20: “[…] negotiate […] honourably and safely <1493?> […] <692>.” The grammatical connections are unclear.
  • 21–22: Tentatively: “[…] you would thereby render us a welcome service […]”
  • 22–24: “And […] it could happen […] <208> […] with retention […]” The intervening wording and the retention phrase are not securely read.
  • 25: “[…] of everything taken away […]” followed by uncertain text.
  • 26–27: Tentatively: “[…] as your instructions indicate […] would be […] advantageous to the state […]”
  • 28: “[…] and safe for us and our country.” An already-clear Latin “both … and …” construction spans the preceding lines, but the complete sentence is not established.

Places, danger, and instructions · Lines 29–36

  • 29–30: “Under this […] <608> […] since otherwise […] danger to us […] from <706> […] <965> […]” These are fragments, not a dependable sentence.
  • 31–32: “[…] some other place […] if we were to abandon those places […] at least […] <934>.”
  • 33–34: “[…] endeavour to ensure that it happens […] with retention […]” What “it” refers to remains unknown.
  • 35–36: “[…] <1400> […] according to the [instructions/arrangement?] we made with you […] <1302> […]” The bracketed wording is a tentative contextual interpretation.

Baltic ports · Lines 36–40

  • 36–38: “[…] <1302> […] already have so many ports in the Baltic Sea […]”
  • 39–40: Tentatively: “[…] it is not advisable to relinquish them […] In that case <579>.” The final connective was already-clear Latin. The Swedish wording contains anomalies, so “relinquish” is not a settled reading.

Who holds the ports, and precisely what is to be retained or relinquished, remain uncertain.

People and possible beneficiaries · Lines 41–46

  • 41: “[…] <1336> […]” The remaining wording is too uncertain for a dependable translation.
  • 42–43: Unresolved groups and damaged wording: <487>, <336>, <649>, and <244>. Isolated words resembling “us,” “person,” and “and” do not establish a sentence.
  • 44: “<1273> […] <692> […] but also […] for his/their children and […]” Part of this construction was already-clear Latin.
  • 45–46: “[…] heirs […] as for his/their friends and relatives.” The pronouns’ referent and any benefit or obligation are unknown.

Closing · Lines 49–52

Numbering follows the input file; the jump to line 49 reflects the continuation heading and spacing, not newly reconstructed missing lines.

  • 49: The opening resembles Latin “these are,” but contains a letter anomaly. The rest is unclear, including <7??>.
  • 50–51: “[…] communicate with you on this occasion […]”
  • 52: Unread ending containing <800> and <659>.

This guide does not supply the full source transcription or literal edition. It is an aid to understanding the fragmentary output, not a replacement for checking that output against the manuscript and key.

In everyday English: what might the writer be trying to do?

The writer appears to be asking the recipient to help bring something about. The surrounding fragments mention safety for “us and our country” and ports in the Baltic Sea. Together, these suggest instructions connected with political or diplomatic business. Heirs, friends, and relatives also appear, but their part in the matter is not yet clear.

That is an interpretation of the fragments, not another quotation from the letter. We cannot yet name the parties, identify an agreement, or say exactly what the recipient was supposed to secure. In particular, “it” in the instruction remains unidentified; we should not silently replace it with “a treaty,” “peace,” or “control of the ports.”

What is the purpose of this research?

The immediate goal is to test whether a surviving archival alphabet can help read a letter for which the earlier investigation had not obtained a reading. Building on Daniel Bourdeau’s transcription and groundwork, this project identified the R4325 strip as a candidate alphabet; Cyphersolver has since independently checked and accepted the match.

The contribution is the testable key match and the passages it reveals—not a new historical account of a negotiation. The checked match gives historians a starting point for checking the handwriting, resolving the remaining codes, and eventually identifying the letter’s full purpose.

Measure the result

How much has actually been decoded?

The numerical letter in DECODE R4284 is held at Riksarkivet, Sweden, under Chifferklaver låda II:114. Applying the horizontal alphabet strip on image I25940 in R4325, Chifferklaver låda II:152, produces sequences readable as historical Swedish interspersed with Latin.

This is an independently checked correspondence between the alphabet in a surviving key compilation and the letter. It does not establish that this exact sheet was used by the writer, or that the compilation's word codes apply to the letter.

729 / 754

Numeric occurrences with alphabet assignments in the reviewed transcription.
96.68% coverage. Accuracy is not measured.

The remaining numeric occurrences are 23 unmarked groups above 108 and two uncertain readings. The 25 spans already written in clear script are counted separately. A repeated line is retained in the literal edition; excluding it gives 707 assignments out of 732 numeric occurrences.

The public R4284 record gives a broad seventeenth-century date range. A narrower 1628/Camerarius association comes from earlier work on a manuscript annotation and needs archival confirmation. R4325 is catalogued from 1640. The alphabet match does not resolve that dating question.

Method and credit

Apply an archived key; preserve what does not fit.

This investigation builds on Daniel Bourdeau's earlier R4284 attempt, including its transcription and notes. That attempt tested Latin-scored homophonic searches and two archival keys, without obtaining a reading. It is not work newly performed or discovered here.

Further trials examined other archived alphabets. The promising match is specifically R4325's horizontal strip below its first square grid—not that grid. Its transcription contains 104 distinct assignments in the range 1–108. Four values, 22, 51, 74 and 89, are unassigned. Y and Z share a value set, so the literal output preserves (y/z).

  1. Keep the earlier transcription and the image-reviewed version separate.
  2. Apply the fixed alphabet to each unambiguous numeric token.
  3. Preserve clear-script words, uncertain digits and unresolved groups.
  4. Explore exact digit partitions separately, without inserting them into the baseline.
  5. Record both readable excerpts and unresolved readings.

AI assisted analysis, coding, and drafting. The decoder applies explicit rules; it does not call an AI model to invent or regenerate plaintext. An AI-suggested reading is not independent historical evidence. A complete model-by-model chronology has not yet been reconstructed.

Update · 26 October 2026

Independent check: the match holds.

In his review response, Daniel Bourdeau reports that Cyphersolver independently read the horizontal strip on I25940 from the DECODE image rendered at 400 dpi. All 104 assignments agree with the submitted transcription. The check also agrees on the four unused values, the shared Y/Z column, and the letters å, ä, and ö.

He reports that applying the strip unchanged produces running historical Swedish with both enciphered and already-clear Latin: the letter is mainly Swedish, rather than Latin as previously described. He also confirms that R4325 was among the key records his project had collected but not tried, attributing the match to this project.

Cyphersolver has accepted the contribution under the method read after matching with a key from external sources, with credit to Dolly Moulekhi and transcription credit to the Cyphersolver project. Its current extent is still decoded, not read: the method label does not mean that a complete, segmented and translated letter is finished.

The statistical test was inconclusive

Cyphersolver’s separate docs/_validate.py test compared the reviewed decode with keys fitted to shuffled ciphertext. According to the review, the decode scored −3.12 per letter, above the best shuffled comparison (−3.22), but not by the margin required to pass. The reported outcome is underdetermined, not statistical confirmation.

Bourdeau notes the short text relative to the 104 values, the mixed languages, and the use of a modern Swedish model. His stated basis for accepting the match is the surviving archival alphabet applied unchanged and the Swedish it produces. These are his reported findings; this article does not claim to have rerun his statistical test.

What has not been established

The English reading aid above remains provisional and is not certified by this review. Complete word separation and translation are still needed. The 23 large numeric groups remain unresolved; possible word-code readings from R4325’s lists require further testing. The frozen literal output and original control results have not been changed to fit the reviewer’s readings.

Cyphersolver’s updated write-up · Evidence incorporated by Cyphersolver.

Where the evidence stops

The unresolved text stays visible.

All 23 unmarked large-group occurrences remain unresolved. Six have exact split hypotheses: 941 → 9,41; 965 → 96,5; 934 → 9,34; 336 → 33,6; 649 → 64,9; and 244 → 2,44. For example, splitting 244 would complete futuris. That linguistic fit is not proof of an internal manuscript boundary.

Neither 800 nor 1400 can be fully partitioned into assigned alphabet values. Finding the same numbers in another list does not establish their meanings in this letter. Apparent anomalies such as nonoblkwiscemur and haecsunr are retained, not silently corrected.

Technical checks: what the shuffled controls do—and do not—show

The local evidence package runs 1,000 shuffled-key controls and 1,000 within-line shuffles. The score is agreement at 115 positions in the four originally tested excerpts (safety, the instruction, heirs, and the closing; not the newly illustrated ports excerpt). The proposed output agrees at all 115 positions; mean agreement is 4.506 for key shuffles and 13.747 for within-line shuffles. Each family's maximum is 24.

The reference strings came from this key's own output. These comparisons are retrospective sanity checks, not independent language tests or proof of a correct decipherment. Both controls preserve alphabet coverage. The already-inspected continuation is not a held-out test.

Corrections and limits

An earlier “733/754 verified, about 97% complete” claim was withdrawn. Alphabet coverage is not accuracy. Earlier tentative dictionary substitutions were also not established. The key check described above does not certify the complete translation or every cipher-token transcription. No exhaustive priority claim is made. Separate letter-cipher material on the images is outside this result.

Inspect the computation

A reading should be checkable without an AI model.

Download decoder tools

This is a code-only download, not the full evidence package. It contains a standard-library decoder, synthetic tests, and instructions. Supply your own permitted transcription and key JSON to reproduce literal decoding. It does not include the full transcription, key data, or shuffled-control inputs.

python -B -m unittest test_decoder.py
python -B decoder.py --transcription YOUR_TRANSCRIPTION.txt --key YOUR_KEY.json

The public text-only evidence package contains original/reviewed transcriptions, all literal lines, token-by-token alignments, the key, uncertainty ledger, scripts, and retrospective control results. Daniel Bourdeau permitted transcription reuse with credit on 25 October. Download the gist files together and follow its README. The ZIP above remains code-only; archive images remain linked, not redistributed.

Input format and reproduction notes · Download fingerprint · Provenance and rights status

Useful checks

Corrections should identify the image, line and token, show the proposed alternative, and distinguish visible evidence from linguistic expectation. Systematic failures on image-confirmed readings would weaken the key hypothesis. Cyphersolver’s completed check is documented in the independent-review section.

Sources and credit

This work starts with preserved sources and earlier research.

Credit to Riksarkivet for the archival holdings and to DECODE/DECRYPT for access and research infrastructure. No scans are redistributed here. These credits do not imply permission, endorsement, or independent verification.