|
|
|
|
USSR Rotor M-125-3 → M-125 →
USSR rotor-based cipher machine
M-125, codenamed Fialka
(Russian: ФИАЛКА),
was an electromechanical rotor-based cipher machine,
developed shortly after WWII
in the former Soviet Union (USSR).
Introduced in 1956 it became one of the
favorite machines of the Warsaw Pact and some allied nations, such as Cuba.
The machine is similar to the
American SIGABA,
the KL-7 and, to a lesser extend, the
Enigma.
For this reason the machine is sometimes referred to as the Russian Enigma.
The original M-125
was succeeded by the M-125-3M
in the mid-1960s and remained in use until the early 1990s.
|
The machine has 10 cipher rotors, each with 30 contacts at
either side. Adjacent rotors move in opposite directions. In addition,
the machine has a card reader in which a new punched key card was installed on a
daily basis. In addition, it has a printer, a tape reader and a tape puncher.
Each country of the Warsaw Pact had its own customized Fialka version,
adapted for the local language. This means that each country had its own
keyboard and print head. Furthermore, the wiring of the cipher rotors
is different for each country. The rest of the machine is identical.
|
|
|
Most machines can be used for messages
in Latin and Cyrillic (Russian) writing. Although the Latin
alphabet was different for each country, the Cyrillic alphabet had no
punctuation marks and was identical on all machines, making them
interoperable when a mutual set of rotors was used.
A standard – Russian-only – version
also existed. It was used by local USSR services like the KGB.
The fall of the Berlin wall in 1989, marked the decline and led to the
collapse of the Soviet Union. With the retreat of the Russians from the
countries behind the Iron Curtain, the remaining Fialka machines were
taken back and have subsequently been destroyed.
Fortunately, some machines have miraculously escaped demolition,
which enables us to present some details here.
|
 |
Fialka machines and accessories
|
 |
 |
Fialka is a Russian word that means violet ; a rather nice small flower.
Around 1956, the Russian Army introduced a brand new
cipher machine, which was given the codename FIALKA.
Two basic versions of the
machine are known to exist: M-125
and M-125-3M,
with country-specific variants of each model.
In principle, the machine is called M-125, whereas Fialka
is the name of the cipher procedure. However, as most people call the
machine Fialka, we have used that name throughout this website as well.
Here are two examples.
The one on the left is a basic M-125.
The design of the Fialka is clearly based on the
well-known Enigma machine,
that was used by the German Armed Forces during WWII.
Like the Enigma, it uses electromechanical
cipher rotors to scramble the letters
typed on the keyboard.
With each key-press, the rotors move into a new position,
thereby effectively changing the wiring and, hence,
the alphabet substitution for each
letter that is entered.
And that's where the similarity with the Enigma ends.
Rather than presenting the output on a lamp panel,
Fialka prints the enciphered letter directly onto a paper strip.
At the same time it can punch the letter into the same paper
tape in a 5-bit digital code, much like the
baudot code
of a teletype machine.
In addition, Fialka is equipped with a paper tape transmitter that can be
used to transmit or duplicate a message.
During WWII, the Russians had clearly learned from the flaws in the Enigma design and its operating procedures, as they implemented the following improvements:
|
- 10 rotors, rather than 3 or 4 on the Enigma,
- More frequent rotor turnovers (irregular stepping),
- Adjacent rotors move in opposite directions,
- Rotor wiring can be changed in the field (from 1978 onwards),
- A punched card is used to replace the Steckerbrett,
- A letter can be encoded into itself (impossible on Enigma).
|
In addition to this, the following extra features are available:
|
- The use of letters, numbers and punctuation marks (M-125-3 only),
- Possibility to duplicate a punched-paper tape,
- Can be used as a standard teletype machine (in plaintext mode),
- Supports both Cyrillic (Russian) and Latin alphabets.
|
Two basic models of the machine are known. They are often referred to as
the old model and the new model.
Furthermore, country-specific variants were made for each country in which
the M-125 was used. For the old model, this involved the wiring of
the cipher rotors, but for the new model, this also involved the layout of the
(language-dependent) keyboard and the print head.
|
This is the basic Fialka machine that was introduced in 1956.
Most machines were capable of sending letters-only messages
in the Russian and Latin alphabets. The machine had 10 cipher
rotors with fixed wiring.
Apart from a Russian-only variant, the machines were adapted for
each individual country. Furthermore, the wiring of the cipher
rotors was country-specific.
➤ More information
|
|
|
In 1965, the M-125 was succeeded by the improved M-125-3M
that was capable of sending letters-only, numbers-only and
mixed-mode text. Like with the M-125, there are country-specific
variants.
Furthermore, in the mid-1970s, more advanced cipher rotors
were introduced, which greatly enhanced the maximum number of
settings and, hence, improved the key space.
➤ More information
|
|
|
 |
Country specific variants
|
 |
 |
Although there are just two basic Fialka models — the older
M-125
and the later M-125-3M —
there are a number of country-specific versions of each model. Generally
speaking, they can be identified by looking at the keyboard. If it
has square keys, it is definitely a newer M-125-3M.
The drawing above shows the two styles of keyboard side-by-side.
The rightmost one is the newer M-125-3.
If the keyboard has rounded keys, it is likely to be an older
M-125,
but this is not necessarily so. As an exception to the rule,
the Russian-only M-125-3M
also has rounded keys.
At present, the following country specific Fialka machines
are highlighted on this website:
|
Fialka machines were supplied to all member states of the
Soviet Union (USSR).
It is likely that all of these countries used the same machine model, with identically wired rotors. In addition, Fialka machines were supplied to all
member states of the Warsaw Pact treaty,
but with a unique rotor wiring for
each state. The following countries were part of the
Warsaw Pact:
|
- Soviet Union (USSR)
- Albania
- Bulgaria
- Czechoslovakia
- East-Germany (DDR)
- Hungary
- Poland
- Romania
|
M-125 Old model, Russian keyboard (Soviet Union) M-125-N Old model, Russian/German keyboard (DDR) M-125-P Old model, Russian/Latin keyboard (PL, CZ, ...) M-125-3M New model, Russian keyboard (Soviet Union) M-125-3MN New model, Russian/German keyboard (DDR) M-125-3MP2 New model, Russian/Polish keyboard (PL) M-125-3MP3 New model, Russian/Czech keyboard (CZ) M-125-3? New model, Russian/Hungarian keyboard (HU)
|
-
DDR = Each Germany
-
PL = Poland
-
CZ = Czechoslovakia
|
Differently wired rotors were supplied to each of the Warsaw Pact
member states. The serial numbers of these rotors were in format
PP-SSSS (e.g. 6K-0776 ), in which PP is a 2-character prefix that
identifies the country. The table below shows what we currently know:
|
68 Soviet Union, found 1K never seen 2K never seen 3K Poland, found 4K East Germany, never seen 5K Found, country unknown 6K Czechoslovakia, found 7K Found, country unknown
|
We have found rotors with 5 different prefixes
(68, 3K, 5K, 6K, 7K), but have so far identified only 3 of the countries
to which they belong (Soviet Union, Poland and Czechoslovakia).
From surviving documentation it is known that the prefix 4K
was used for East-Germany, but none of these rotors appear to have survived.
Rotor sets 5K and 7K were both found in Hungary, so it is likely that one
of these were used in that country.
So far, we havn't seen 1K and 2K.
➤ Wiring details
|
 |
Additional parts and accessories
|
 |
 |
Each machine came with a power supply unit (PSU), of which there were
two models. Furthermore, there were two types of cipher rotors, and each
country got a specific wiring under Soviet control.
Below is additional information
about the extra parts and accessories that were used.
|
This is the most common PSU that was issued with a Fialka machine.
The majority of Fialka machines that were found after the fall of the
Soviet Union, was supplied with this PSU. It has been confirmed that
this PSU was used in East-Germany (DDR) and in Czechoslovakia.
Collectors of Cold War Russian equipment may recognise this PSU,
as it was also used with the
M-105 AGAT cipher machine.
➤ More information
|
|
|
This variant is larger than the standard PSU and contains a number of
protective measures against eavesdropping through tapping of the power lines
(TEMPEST). Is is connected to the Fialka by means of two cables and produces
a constant voltage as well as a constant current.
As far as we know, this PSU was only supplied with Fialka machines that were
used in Poland, although occasionally this variant has popped up in
other Eastern-Block countries as well.
➤ More information
|
|
|
The Fialka has 10 unique cipher rotors, each identified with a letter of the
Russian alphabet. The wiring can be swapped between rotors and each rotor
contains an arbitrary number of turn-over notches. Furthermore, each country
of the Warsaw Pact had its own set of 10 rotors.
➤ More information
|
|
|
Although the internal wiring of all Fialka machines was identical,
the wiring of the cipher rotors was different for each country.
So far, the wiring details for the Russian (68), Polish (3K), Hungarian (5K)
and Czech (6K) rotors have been recovered.
The wiring information and the positions of the Advance Blocking
Pins are also available to programmers and can be downloaded in XML format.
Click the image to learn more.
➤ More information
|
|
|
Apart from changing the settings of the rotors, the daily key also involved
the insertion of a unique key card in a drawer on the left of the machine.
The key card was used instead of the Steckerbrett of the original
Enigma design.
Compared to a patch panel, the card reader is less prone to mistakes,
whilst it also increases the number of permutations.
➤ More information
|
|
|
According to the checklist that came with each
Fialka, every machine
was supplied with a small toolkit that was used for daily maintenance and
small repairs. It contained tools to adjust the machine and to remove
binded paper.
➤ More information
|
|
|
In addition to the toolkit shown above, each machine also came with a
wooden box that contained some spare parts and additional accessories.
➤ More information
|
|
|
For repair and maintenance a special Fialka Test Device was available.
The device was connected to the special test connector at the left side
of the machine (M-125-3 only).
As the test device has never been found so far, we can
only speculate about its functionality.
It is likely that the device contained a paper tape reader to allow
several test programs to be run.
➤ More information
|
|
|
When we found our first Fialka in 2005, no information about
this machine was available. So, we decided to conduct our own research
and write the Fialka Reference Manual. It contains many backgrounds,
drawings, photographs, circuit diagrams and descriptions.
➤ More information
|
|
|
Version 5.16
- 24 October 2014
Ukrainian programmer Vyacheslav Chernov (Чернов) has written a beautiful
graphical simulator for WindowsTM , that emulates all known Fialka models
and countries.
It supports the old rotors as well as the later adjustable rotors,
and supports different rotor-wirings for the various countries.
Furthermore, the wiring cores can be installed, flipped and rotated
in any of the other rotors.
➤ Download Fialka Simulator
➤ How to set the keys (and card)
|
|
|
- Java Applet (experimental) by Eugen Antal (off-site)
This is a fully functional non-graphical Fialka Simulator that is written
in Java and runs on virtually any platform, including Windows, Apple Mac,
Linux and Unix. Instructional videos are available as well.
|
The Fialka is a very complex mechanical and electrical machine. If you want
to known exactly how it works, you will find detailed information in the links
below. If you want to know even more, check out the
Fialka Reference manual.
|
Below are some files that are available for download. Please note that
these files are supplied 'as-is'. Crypto Museum can not guarantee the
suitability of these files for any purpose whatsoever.
|
- XML files for software Simulator authors 0.02 (5 July 2014)
This is a ZIP archive, containing a set of XML files that describe
all features of the Fialka and its rotors. These files can be used
by software writers when creating, for example, a Fialka Simulator.
Includes 3K, 5K and 6K rotor wiring.
|
|
|
Any links shown in red are currently unavailable.
If you like the information on this website, why not make a donation?
© Crypto Museum. Created: Monday 04 August 2008. Last changed: Saturday, 15 July 2023 - 08:01 CET.
|
 |
|
|
|