Click for homepage
M-125-3 →
M-125 →
M-125   Fialka
USSR rotor-based cipher machine

M-125, codename Fialka (Russian: ФИАЛКА), was an electromechanical wheel-based cipher machine, developed in the USSR shortly after WWII. It was first introduced in 1956 and soon 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 coding wheels is different for each country. The rest of the machine is identical.
Fialka M-125-3 with open lid

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 wheels 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
Standard version of the Fialka, introduced in 1956
Enhanced version of the Fialka, introduced in 1965
Standard Fialka PSU
Special TEMPEST-proof Fialka PSU (also known as the Polish Fialka PSU)
Different sets of Fialka wheels
Fialka machine and wheel wiring
Punched cards as part of the Fialka's daily key
Canvas wallet with various Fialka tools
Spare parts and accessories
Fialka Reference Manual
Moisturizer for gluing back-gummed paper tape
Fialka Test Device
The famous Magic Circuit that allows a letter to be encoded as itself
Block diagram of Fialka and comparison with Enigma
Parallel to serial interface for M-125 (Fialka)
Recent changes
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 older M-125 and the later M-125-3 side by side (Polish versions shown here)

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 wheels to scramble the letters typed on the keyboard. With each key-press, the wheels 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, the Fialka prints the coded 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 a paper tape transmitter that can be used to transmit or duplicate a message. During WWII, the Russians have clearly learned from the flaws in the Enigma's design and its operating procedures, as they have implemented the following improvements:
  • 10 wheels, rather than 3 or 4 on the Enigma,
  • More frequent wheel turn-overs,
  • Adjacent wheels move in opposite directions,
  • Wheel 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,
  • Suitable as a standard teletype machine (in plaintext mode),
  • Supports both Russian (Cyrillic) 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 wheels, but for the new model, this also involved the layout of the (language-dependent) keyboard and the print head.

M-125   old model
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 wheels with fixed wiring.

Apart from a Russian-only variant, the machines were adapted for each individual country. Furthermore, the wiring of the cipher wheels was country-specific.

 More information

M-125 Fialka showing its 10 cipher wheels

M-125-3M   new model
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 wheels were introduced, which greatly enhanced the maximum number of settings and, hence, improved the key space.

 More information

Czech version of the Russian M-125-3 cipher machine

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:

M-125-3M, the Russian variant of the M-125-3
M-125-3MR2, the Polish variant of the M-125-3
M-125-3MR3, the Czeck variant of the M-125-3
M-125-3xx, the Hungarian variant of the M-125-3
M-125MN, the East-German variant of the M-125-3
Known countries
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 wheels. In addition, Fialka machines were supplied to all member states of the Warsaw Pact treaty, but with a unique wheel wiring for each state. The following countries were part of the Warsaw Pact:

  1. Soviet Union (USSR)
  2. Albania
  3. Bulgaria
  4. Czechoslovakia
  5. East-Germany (DDR)
  6. Hungary
  7. Poland
  8. Romania
Known model numbers
  1. DDR = Each Germany
  2. PL = Poland
  3. CZ = Czechoslovakia
Known wheel wirings
Differently wired wheels were supplied to each of the Warsaw Pact member states. The serial numbers of these wheels were in format
), in which
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 wheels 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 wheels appear to have survived. Wheel 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.

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 wheels, and each country got a specific wiring under Soviet control. Below is additional information about the extra parts and accessories that were used.

Standard PSU
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

Standard PSU with AC mains cable and 24V DC cable

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 TEMPEST Fialka PSU (as used in Poland)

Cipher wheels
The Fialka has 10 unique coding wheels, each identified with a letter of the Russian alphabet. The wiring can be swapped between wheels and each wheel contains an arbitrary number of turn-over notches. Furthermore, each country of the Warsaw Pact had its own set of 10 wheels.

 More information

A typical set of Fialka wheels. Click for detailed information.

Wiring details
Although the internal wiring of all Fialka machines was identical, the wiring of the cipher wheels was different for each country. So far, the wiring details for the Russian (68), Polish (3K), Hungarian (5K) and Czech (6K) wheels 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

Close-up of a 5K wiring core (wheel K, side 2)

Key material
Apart from changing the settings of the wheels, 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

Original Fialka key card

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

Top view of the Fialka toolkit

Spare parts
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

Fialka ZIP box with the lid taken off

Test Device
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

Test connector

Reference Manual
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

Click to see more

Fialka Simulator
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 wheels as well as the later adjustable wheels, and supports different wheel-wirings for the various countries. Furthermore, the wiring cores can be installed, flipped and rotated in any of the other wheels.

 Download Fialka Simulator
 How to set the keys (and card)
Filaka Simulator for Windows. Click the image to download the program as a RAR-file.

Other simulators
  • 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.
Technical details
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 wheels. These files can be used by software writers when creating, for example, a Fialka Simulator. Includes 3K, 5K and 6K wheel wiring.
  1. Fialka Reference Manual
    Complete reference manual for M-125 (FIALKA) with circuit diagrams (English).
    Paul Reuvers & Marc Simons, 2005-2009.

  2. M-125 Nutzung
    Original operating instructions (German).
    A 040/1/321. Nationale Volksarmee (NVA) of the DDR, 1 December 1978.

  3. M-125 Nutzung (off-site)
    Re-typeset version of the above German manual in HTML (German).
    Website SAS- und Chiffrierdienst, Jörg Drobick.

  4. Operations manual for M-125
    Translated and re-typeset version of the above German manual (English).
    A 040/1/321 (EN), 1 December 1978. Jerry McCarthy, version 2.7.1.
  1. Paul Reuvers & Marc Simons, Fialka Reference Manual
    2005-2009. Release 2.0, 22 June 2009.

  2. Eugen Antal & Viliam Hromada, A New Stream Cipher Based on Fialka
    Tatra Mt. Math. Publ. 57 (2013), 101-118.

  3. Eugen Antal & Pavol Zajac, Key Space and Period of Fialka M-125 Cipher Machine
    Cryptologia Vol. 39, Issue 2, 2015, p. 126-144. ISSN 0161-1194.
Further information
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: Sunday, 22 January 2023 - 19:47 CET.
Click for homepage