At a glanceKey from adjacent plaintext · complete
- The letters
- Letters of Adolf Ebers (ennobled Eberschildt), Swedish commissary in Moscow, to Charles XI (the Regency), in German, 1662–1666, with the sensitive passages in number code.
- Where
- Riksarkivet, Stockholm, Diplomatica Muscovitica, SE/RA/2113/2113.1/3/b/602 (172 images, series R0003225). Not on DECODE.
- The cipher
- A German letter substitution with homophones: two-digit groups 15–95 separated by dots, mixed with clear German.
- How the key was found
- Learned from the glossed words of one letter (images 106 and 108), frozen by SHA-256, then measured once on image 138: 0.909 of the letters against 0.047 for the best of 200 shuffled keys.
- What it says
- On the measured page: envoys to go to Poland for the boundary commission, the voivodes at Smolensk, treating with the Poles; Marselis and Nashchokin are named.
- Credit
- Key, transcription and test by Brice Dudout (pull request #383). The decipherment itself is the clerk’s of the 1660s. The lead came from the project’s Riksarkivet sweep.
- Still open
- Two values added after the test (53 = s, 55 = t) are untested; 46 is unresolved. Every run carries its gloss, so no unglossed page is left to test on.
01 The letters
The volume holds the letters of the Swedish commissary in Moscow to the Regency that governed for the young Charles XI. They are in German, and the passages to be kept secret are written in numbers. A clerk wrote the German decipherment over every run of numbers: the project’s leads review of 6 November 2026 found it on every page it zoomed and noted that “only the key is of further use”. This target supplies that key.

Brice Dudout used three images. Images 106 (Moscow, 17 July 1664) and 108, a second copy of the same letter, were used to learn the key. On image 138, the first 160 cipher groups of the left page were held out and measured once. Code runs occur on nearly every image from about 98 to 145 and at 81 and 160; beyond these three images they were not transcribed, since the gloss over them is already their decipherment.
02 The key
The order is roughly alphabetical: 15 a, 16 b, 18 c, 20 d, 22 e, 24 f, 36 g, 38 h, 39 i, 40 k, 41 l, 43 m, 45 n, 47 o, 48 p, 51 r, 94 s, 95 t, 67 u, 68 v, 69 w, 72 z. Frequent letters have a second number (77 a, 81 e, 25 f, 89 n, 90 o), and doubled letters their own (42 ll, 44 mm, 54 ss). 74 = ä rests on one word. Arabic numerals (3, 12, 2000, 2500) are written in clear.
The frozen key has 31 codes. After the measurement, glosses on images 101, 103 and 138 gave 53 = s (nichts, etwas, smolinsko, naschokin) and 55 = t (tractiren). These two rows are marked “post” in key.tsv and were not tested. Group 46 (image 106, “51.43.15.46”) is unresolved. The key table is released under CC BY 4.0.
03 The held-out test
The protocol was written down and hashed before any of the held-out part was transcribed. The key was learned from 53 glossed words of images 106 and 108 only, then frozen. On image 138 the first 160 cipher groups were transcribed and frozen first; only then was the gloss above them read and frozen. One measurement compared the decode with the gloss letter by letter (a local alignment, after normalising spelling such as u/v/w and umlauts):
- 0.909 of the decoded characters agree with the gloss;
- the best of 200 keys made by shuffling the same values gives 0.047 (mean 0.021), a margin of 0.862;
- the thresholds fixed in advance were 0.85 and a margin of 0.30, so the key passes.
The 9 groups outside the frozen key (five of 53 and 55, four cut in the binding) counted as wrong. One bias is declared: the gloss is on the same image and was visible while the numbers were transcribed. On integration the measurement script was run again on the frozen files and gave the same figures, the SHA-256 hashes check out, and the decode of the transcription with key.tsv matches the decryption file line for line.
04 The measured page
Of the 160 groups, 151 are in the frozen key, 5 are 53 and 55, and 4 are cut in the binding. The decode with the full key, with the gloss’s word division:
alles in considerati[o]n nimt eben kluch von hier gehn gekommen ist hier beschlossen gesanten nach [p]olen commission [g]renzen zu woiwoden smolinsko die polen zu tracti[r]en marselius naschokin in gnadge
The gloss of the time reads:
alles ?? consideration nimt eben klug von hier gehen gekommen ist hier beschlossen gesandten nach polen commission grentzen zu woiwoden smolinsko die polen zu tractiren marselius naskokin in gnade
They differ only in spellings (kluch/klug, gesanten/gesandten, naschokin/naskokin) and in the letters cut in the binding, shown in brackets. These are phrases, not a running text: the clear German between the runs was not transcribed. In English: “takes everything into consideration … just as prudent … to go from here … has come … decided here … envoys to Poland … commission … boundaries … the voivodes, Smolensk … to treat with the Poles … Marselis … Nashchokin … in favour”.
05 What remains open
- 53 = s and 55 = t, added after the measurement, are untested; 46 occurs once and is unresolved; 74 = ä rests on one word. The one held-out page is spent, so no blind test is left for them in the parts read.
- A test with the gloss out of view cannot be made: every code run in the volume carries its gloss on the same leaf.
- One reader (an agent) on 3000 px images, with no human palaeographic check. The few four-digit groups were not seen in the parts read. The date of the letter on image 138 is in its clear text, which was not transcribed.
The code of Johan von Lilienthal, the Swedish resident in Moscow from 1665, is a different cipher, with its own page: Lilienthal in Moscow, 1665–1667.
Full texts
The transcription and the decryption of every document on this page, so that the reading can be used and checked. Short files are shown here; all are in the repository.
Images 106 and 108: the 53 glossed words the key was learned from not prose
The training pairs: each glossed word of the letter of 17 July 1664 (image 106, and its second copy on 108) as cipher groups beside the gloss written over them at the time, e.g. "zeit von 3 wochen gestelt" and "sie 12 millionen".
Transcription
# Paires chiffré / glose d'époque, Ebers (R0003225), lues sur recadrages 3000 px. image code glose (lecture) 106L 72.22.39.95.68.47.45.3.69.47.18.38.22.45.36.22.94.95.22.41.95 zeit von 3 wochen gestelt 106L 94.39.22.12.43.39.41.39.47.45.22.45 sie 12 millionen 106L 36.47.41.20.22.44 golde(s?) 106R 94.18.38.69.39.22.36.22.51.68.15.95.22.51 schwieger vater 106R 39.45.36.22.38.22.39.43 in geheim 106R 22.39.45.22.45 einen 106R 36.22.38.22.39.43.22.45 geheimen 106R 18.47.51.22.94.48.47.45.20.22.45.95.22.45 corespondenten 106R 51.39.36.15.94.18.38.77.25.22.45 riga sch?? (gloss 'Riga schicken'?) 106R 39.38.43 ihm 106R 69.39.54.22.45 wi(ss)en 106R 69.15.54.39.45 (gloss 'cousinen'?) incertain 106R 94.18.38.69.22.20.22.45 schweden 106R 48.47.41.22.45 polen 106R 48.15.94.39.51.95 passirt 106R 39.95.72.39.36.22.51.72.22.39.95 itzige zeit 106R 72.47.16.22.41.45.36.22.16.22.45 (z?)obel ...geben (zobeln gegeben ?) 106R 20.15.38.39.45 dahin 106R 94.22.45.20.22.45 senden 106R 24.22.94.95.72.67 fest zu 106R 39.15.51.41.39.18.38 iarlich 106R 51.22.39.18.38.94.95.15.41.22.51 reichstaler 106R 68.22.51 ver 106R 36.22.15.45.69.47.51.95.22.95 geantwortet 106R 45.39.18.38.95 nicht 106R 22.39.45.41.39.22.24.22.51 einliefer(n) 106R 22.39.45.22.45 einen 106R 41.39.18.38.22.45.18.47.44.39.54.15.51.39.22.45 lichen commi(ss)arien 106R 94.95.47.18.40.38.47.41.43 stockholm 106R 36.22.16.51.67.18.38 gebruch 106R 45.39.18.38.95 nicht 106R 20.39.45.36.22.38.15.16.22.45 dinge haben 106R 41.22.45.36.94.95 lengst 106R 36.22.48.51.15.18.95.39.18.39.51.95 gepracticirt 108R 45.39.18.38.95.69.22.39.95.22.51.94.47.42.22.45 nicht weiter sollen 108R 43.15.41.18.47.45.95.15.45.95.22.45 malcontenten 108R 39.45.43.47.94.40.77.67 in moskau 108R 38.22.41.24.95.22 helfte 108R 38.77.51.95 hart 108R 68.22.51.38.39.45.20.81.51.89 verhindern 108R 40.90.44.22.45 kommen 108R 39.94.95.38.39.22.51 ist hier 108R 40.47.48.24 kopf (lecture du 4e groupe incertaine) 108R 16.22.94.18.38.67.41.20.39.36.22.95 beschuldiget 108R 18.47.51.77.36.39 corage 108R 20.81.45 den 108R 24.22.39.45.95 feint 108R 15.16.24.47.20.22.51.45 abfodern 108R 40.45.22.94.39.67.51.36.39 knes iurgi 108R 20.47.41.36.77.51.67.40.15 dolgaruka 108R 20.47.41.36.90.51.67.40.15 dolgoruka 108R 94.95.81.42.22 stelle 108R 18.47.44.22.45.20 commend(irt)
Decryption
# Paires chiffré / glose d'époque, Ebers (R0003225), lues sur recadrages 3000 px. image code glose (lecture) 106L 72.22.39.95.68.47.45.3.69.47.18.38.22.45.36.22.94.95.22.41.95 zeit von 3 wochen gestelt 106L 94.39.22.12.43.39.41.39.47.45.22.45 sie 12 millionen 106L 36.47.41.20.22.44 golde(s?) 106R 94.18.38.69.39.22.36.22.51.68.15.95.22.51 schwieger vater 106R 39.45.36.22.38.22.39.43 in geheim 106R 22.39.45.22.45 einen 106R 36.22.38.22.39.43.22.45 geheimen 106R 18.47.51.22.94.48.47.45.20.22.45.95.22.45 corespondenten 106R 51.39.36.15.94.18.38.77.25.22.45 riga sch?? (gloss 'Riga schicken'?) 106R 39.38.43 ihm 106R 69.39.54.22.45 wi(ss)en 106R 69.15.54.39.45 (gloss 'cousinen'?) incertain 106R 94.18.38.69.22.20.22.45 schweden 106R 48.47.41.22.45 polen 106R 48.15.94.39.51.95 passirt 106R 39.95.72.39.36.22.51.72.22.39.95 itzige zeit 106R 72.47.16.22.41.45.36.22.16.22.45 (z?)obel ...geben (zobeln gegeben ?) 106R 20.15.38.39.45 dahin 106R 94.22.45.20.22.45 senden 106R 24.22.94.95.72.67 fest zu 106R 39.15.51.41.39.18.38 iarlich 106R 51.22.39.18.38.94.95.15.41.22.51 reichstaler 106R 68.22.51 ver 106R 36.22.15.45.69.47.51.95.22.95 geantwortet 106R 45.39.18.38.95 nicht 106R 22.39.45.41.39.22.24.22.51 einliefer(n) 106R 22.39.45.22.45 einen 106R 41.39.18.38.22.45.18.47.44.39.54.15.51.39.22.45 lichen commi(ss)arien 106R 94.95.47.18.40.38.47.41.43 stockholm 106R 36.22.16.51.67.18.38 gebruch 106R 45.39.18.38.95 nicht 106R 20.39.45.36.22.38.15.16.22.45 dinge haben 106R 41.22.45.36.94.95 lengst 106R 36.22.48.51.15.18.95.39.18.39.51.95 gepracticirt 108R 45.39.18.38.95.69.22.39.95.22.51.94.47.42.22.45 nicht weiter sollen 108R 43.15.41.18.47.45.95.15.45.95.22.45 malcontenten 108R 39.45.43.47.94.40.77.67 in moskau 108R 38.22.41.24.95.22 helfte 108R 38.77.51.95 hart 108R 68.22.51.38.39.45.20.81.51.89 verhindern 108R 40.90.44.22.45 kommen 108R 39.94.95.38.39.22.51 ist hier 108R 40.47.48.24 kopf (lecture du 4e groupe incertaine) 108R 16.22.94.18.38.67.41.20.39.36.22.95 beschuldiget 108R 18.47.51.77.36.39 corage 108R 20.81.45 den 108R 24.22.39.45.95 feint 108R 15.16.24.47.20.22.51.45 abfodern 108R 40.45.22.94.39.67.51.36.39 knes iurgi 108R 20.47.41.36.77.51.67.40.15 dolgaruka 108R 20.47.41.36.90.51.67.40.15 dolgoruka 108R 94.95.81.42.22 stelle 108R 18.47.44.22.45.20 commend(irt)
Image 138, left page: the 160 held-out cipher groups with the contemporary gloss not prose
Ebers reports that something has been taken into consideration and decided here: envoys are to go to Poland for the boundary commission, with the voivodes at Smolensk, to treat with the Poles; Marselis and Nashchokin are named, and someone is in favour ('in gnade').
Transcription
# ebers1664 - transcription of the held-out part: Riksarkivet R0003225 image 138, left page (bildid R0003225_00138). # Cipher groups only, in reading order, 160 groups; "|" = clear German written between the runs (not transcribed); # "?" = group cut in the binding or illegible; struck-through groups omitted. Frozen copy: frozen/H_E-CHIFFRE.txt (SHA-256 53d9f22a...4edf). # Transcribed by one AI agent from the 3000 px IIIF image, after the key was frozen and before the gloss was read out. L01 15 42 22 53 39 45 | 18 47 45 94 39 20 22 51 77 95 39 ? L02 45 45 39 43 95 | 22 16 22 45 | 40 41 67 18 38 L03 68 47 45 38 39 22 51 36 22 38 45 | 36 22 40 47 44 L04 22 45 39 94 95 L05 38 39 22 51 16 22 94 18 38 L06 41 47 54 22 45 | 36 22 94 15 45 95 22 45 45 77 18 38 ? L07 47 41 22 45 | 18 47 44 39 54 39 47 45 | ? L08 51 22 45 72 22 45 72 67 | 69 47 39 L09 69 47 20 81 45 | 94 43 47 41 39 45 53 40 47 L10 20 39 22 48 47 41 22 45 72 67 95 51 15 18 55 39 ? L11 22 45 43 77 51 94 22 41 39 67 53 | 45 15 53 18 38 47 40 L12 39 45 | 39 45 36 45 15 20 36 22 # Contemporary gloss written above these runs, read after the cipher was transcribed (frozen/G_E-GLOSE.txt, SHA-256 341b8d3f...0d80); # "?" = letter not read on the gloss: alles ?? consideration nimt eben klug von hier gehen gekommen ist hier beschlossen gesandten nach polen commission grentzen zu woiwoden smolinsko die polen zu tractiren marselius naskokin in gnade # Training pairs (images 106 and 108, cipher group string = gloss) are in frozen/PAIRES-EBERS.tsv.
Decryption
# ebers1664 - decode of the held-out part (image 138, left page) with key.tsv, including the two post-measurement rows # (53 = s, 55 = t). "?" = group cut or illegible. Runs separated by "|" as in transcription.txt. The contemporary gloss # (last block) is the reading of the time; our decode only confirms it. L01 allesin | considerati? L02 nnimt | eben | kluch L03 vonhiergehn | gekomm L04 enist L05 hierbesch L06 lossen | gesantennach? L07 olen | commission | ? L08 renzenzu | woi L09 woden | smolinsko L10 diepolenzutracti? L11 enmarselius | naschok L12 in | ingnadge # As words (decode, with the gloss's word division): alles in considerati[o]n nimt eben kluch von hier gehn gekommen ist hier beschlossen gesanten nach [p]olen commission [g]renzen zu woiwoden smolinsko die polen zu tracti[r]en marselius naschokin in gnadge # Contemporary gloss: alles ?? consideration nimt eben klug von hier gehen gekommen ist hier beschlossen gesandten nach polen commission grentzen zu woiwoden smolinsko die polen zu tractiren marselius naskokin in gnade # Differences decode vs gloss: kluch/klug, gehn/gehen, gesanten/gesandten, renzen/grentzen, naschok(in)/naskokin, gnadge/gnade # (cipher clerk's or glossator's spellings); [o], [p], [g], [r] = groups cut in the binding.
Translation
# ebers1664 - English rendering of the measured portion (image 138, left page) The code runs only, after the contemporary gloss; the clear German between them is not transcribed, so these are phrases, not sentences. Words in brackets are cut or unread. | run (gloss) | English | |---|---| | alles [..] consideration nimt | takes everything [..] into consideration | | eben klug | just as wise (prudent) | | von hier gehen | to go from here | | gekommen ist | has come | | hier beschlossen | decided here | | gesandten nach polen | envoys to Poland | | commission | commission | | grentzen zu | boundaries, to | | woiwoden smolinsko | the voivodes, Smolensk | | die polen zu tractiren | to treat (negotiate) with the Poles | | marselius | Marselis | | naskokin | Nashchokin | | in gnade | in favour (grace) |
Key: key.tsv
06 Sources
- Riksarkivet, Stockholm, Diplomatica Muscovitica, SE/RA/2113/2113.1/3/b/602, Kommissarien Adolf Ehbers (Eberschildt), Moskva, 1662–1666: image 106, image 108, image 138 (public viewer; the IIIF image service carries the Public Domain Mark).
- Key, transcription, frozen protocol and measurement: Brice Dudout, pull request #383, 10 November 2026.
- Prior art: nothing on DECODE, at Cryptiana (Tomokiyo) or in George Lasry’s lists, and no edition found (leads review n09, 6 November 2026).
Key, transcription, frozen test and notes: targets/ebers1664/.
Cite this page
Daniel Bourdeau and Brice Dudout, “Commissary Adolf Ebers in Moscow, 1662–1666: the key of his code”, Cyphersolver, posted 11 November 2026, https://cyphersolver.com/ebers1664.html.