Kryha - Emulation by the CX-52


Home Page
Kryha Home Page

Introduction

The CX-52 machine can emulate the Kryha machine equipped with the standard wheel.

This capability has convinced some Kryha owners to switch to the Hagelin CX-52. Thus, transmission centers equipped with CX-52s can communicate with other CX machines, as well as with centers equipped only with Kryha.

CX-52 Configuration

The basic trick is to use 6 wheels with 34 sectors each. This allows us to emulate the 17 sectors (17 x 2 = 34).

To generate the different offsets for each sector, jumpers are placed opposite each wheel: from five to ten jumpers to emulate the following offsets: [7, 6, 7, 5, 6, 7, 6, 8, 6, 10, 5, 6, 5, 7, 6, 5, 9]

On each wheel, only two active pins are positioned (instead of one, since there are 34 pins). These active pins are offset from one wheel to the next to reproduce the offsets from 5 to 10.

Another configuration element is to set the CX to active F/V mode. This makes the encryptions cumulative.

Example

In the following example, a sequence of A's is encrypted. I use my Kryha simulator (see my Kryha simulator page) and CX-52 simulator (see my CX-52 page). In both cases I obtain the cryptogram EFBGO XTQ.

$ echo AAAAAAAA |python3 kryha_tui.py -o -i WGMKRUYTBZHCNXFDJLPEVOAQSI -f 3 -m
EFBGOXTQ

$ echo AAAAAAAA |python3 kryha_tui.py -o -i WGMKRUYTBZHCNXFDJLPEVOAQSI -f 3 -m -D
Wheel: [3, 2, 3, 1, 2, 3, 2, 4, 2, 6, 1, 2, 1, 3, 2, 1, 5]
Sectors: [7, 6, 7, 5, 6, 7, 6, 8, 6, 10, 5, 6, 5, 7, 6, 5, 9]>>17
First stop: 3
Cipher Mode: cipher
Initial shift for internal alphabet: 0
Advance before cipher: True
Systematik shift: 0
Internal alphabet: WGMKRUYTBZHCNXFDJLPEVOAQSI
External alphabet: ABCDEFGHIJKLMNOPQRSTUVWXYZ

         EVOAQSIWGMKRUYTBZHCNXFDJLP
         ABCDEFGHIJKLMNOPQRSTUVWXYZ
0001 : 07, [07] , A -> E
         FDJLPEVOAQSIWGMKRUYTBZHCNX
         ABCDEFGHIJKLMNOPQRSTUVWXYZ
0002 : 12, [05] , A -> F
         BZHCNXFDJLPEVOAQSIWGMKRUYT
         ABCDEFGHIJKLMNOPQRSTUVWXYZ
0003 : 18, [06] , A -> B
         GMKRUYTBZHCNXFDJLPEVOAQSIW
         ABCDEFGHIJKLMNOPQRSTUVWXYZ
0004 : 25, [07] , A -> G
         OAQSIWGMKRUYTBZHCNXFDJLPEV
         ABCDEFGHIJKLMNOPQRSTUVWXYZ
0005 : 05, [06] , A -> O
         XFDJLPEVOAQSIWGMKRUYTBZHCN
         ABCDEFGHIJKLMNOPQRSTUVWXYZ
0006 : 13, [08] , A -> X
         TBZHCNXFDJLPEVOAQSIWGMKRUY
         ABCDEFGHIJKLMNOPQRSTUVWXYZ
0007 : 19, [06] , A -> T
         QSIWGMKRUYTBZHCNXFDJLPEVOA
         ABCDEFGHIJKLMNOPQRSTUVWXYZ
0008 : 03, [10] , A -> Q
EFBGOXTQ

$ echo AAAAAAA |python3 cx52_tui.py -m KRYHA -c manual \
	-w a34:b34:c34:d34:e34:f34 -p A:A:A:A:A:A  -f on \
	-r WGMKRUYTBZHCNXFDJLPEVOAQSI -v
===> Default Options:
Model: KRYHA, Configuration: manual
Kdevice: 8
Name of Wheels: a34,b34,c34,d34,e34,f34

Type Wheel
==========
Left  Alphabet : ABCDEFGHIJKLMNOPQRSTUVWXYZ
Right Alphabet : WGMKRUYTBZHCNXFDJLPEVOAQSI
Crown Alphabet : ABCDEFGHIJKLMNOPQRSTUVWXYZ
Slide : 0
Space  : Z
Mode  : C
Counter: 000

Squirrel Cage
=============
11    15   KCCCCCC 000000
10    13   K000000 000001
09    13   K000000 000011
08    13   K000000 000111
07    13   K000000 001111
06    13   K000000 011111
05    13   K000000 111111
04    13   K000000 111111
03    13   K000000 111111
02    13   K000000 111111
01    13   K000000 111111

Wheels
======

Wheel in position (a)
Name    : D34
Length  : 34
Offset  : 10
Shift   : 21
Rim     : A:02:B:04:C:06:D:08:E:10:F:12:G:14:H:16:I:18:
J:20:K:22:L:24:M:26:N:28:O:30:P:32:Q:34:
Namepins: 11:12:13:14:15:16:17:18:19:20:21:22:23:24:25:
26:27:28:29:30:31:32:33:34:35:36:37:38:39:40:41:42:43:
44:45:46:47:01:02:03:04:05:06:07:08:09:10
Pins    : 0000100000010100100001000000101001
Comment : === roue D34 francaise


Wheel in position (b)
Name    : D34
Length  : 34
Offset  : 10
Shift   : 21
Rim     : A:02:B:04:C:06:D:08:E:10:F:12:G:14:H:16:I:18:
J:20:K:22:L:24:M:26:N:28:O:30:P:32:Q:34:
Namepins: 11:12:13:14:15:16:17:18:19:20:21:22:23:24:25:
26:27:28:29:30:31:32:33:34:35:36:37:38:39:40:41:42:43:
44:45:46:47:01:02:03:04:05:06:07:08:09:10
Pins    : 0010010101001001000100101010010010
Comment : === roue D34 francaise


Wheel in position (c)
Name    : D34
Length  : 34
Offset  : 10
Shift   : 21
Rim     : A:02:B:04:C:06:D:08:E:10:F:12:G:14:H:16:I:18:
J:20:K:22:L:24:M:26:N:28:O:30:P:32:Q:34:
Namepins: 11:12:13:14:15:16:17:18:19:20:21:22:23:24:25:
26:27:28:29:30:31:32:33:34:35:36:37:38:39:40:41:42:43:
44:45:46:47:01:02:03:04:05:06:07:08:09:10
Pins    : 0101001000000010001010010000000100
Comment : === roue D34 francaise


Wheel in position (d)
Name    : D34
Length  : 34
Offset  : 10
Shift   : 21
Rim     : A:02:B:04:C:06:D:08:E:10:F:12:G:14:H:16:I:18:
J:20:K:22:L:24:M:26:N:28:O:30:P:32:Q:34:
Namepins: 11:12:13:14:15:16:17:18:19:20:21:22:23:24:25:
26:27:28:29:30:31:32:33:34:35:36:37:38:39:40:41:42:43:
44:45:46:47:01:02:03:04:05:06:07:08:09:10
Pins    : 0000000010000000000000000100000000
Comment : === roue D34 francaise


Wheel in position (e)
Name    : D34
Length  : 34
Offset  : 10
Shift   : 21
Rim     : A:02:B:04:C:06:D:08:E:10:F:12:G:14:H:16:I:18:J:
20:K:22:L:24:M:26:N:28:O:30:P:32:Q:34:
Namepins: 11:12:13:14:15:16:17:18:19:20:21:22:23:24:25:
26:27:28:29:30:31:32:33:34:35:36:37:38:39:40:41:42:43:
44:45:46:47:01:02:03:04:05:06:07:08:09:10
Pins    : 1000000000000000010000000000000000
Comment : === roue D34 francaise


Wheel in position (f)
Name    : D34
Length  : 34
Offset  : 10
Shift   : 21
Rim     : A:02:B:04:C:06:D:08:E:10:F:12:G:14:H:16:I:18:J:
20:K:22:L:24:M:26:N:28:O:30:P:32:Q:34:
Namepins: 11:12:13:14:15:16:17:18:19:20:21:22:23:24:25:
26:27:28:29:30:31:32:33:34:35:36:37:38:39:40:41:42:43:
44:45:46:47:01:02:03:04:05:06:07:08:09:10
Pins    : 0000000000100000000000000001000000
Comment : === roue D34 francaise

Note: plain, cipher: in case we cipher, reverse if we decipher
(1): Counter, (2): Plain, (3): Cipher, (4) External key
(5): Active Pins, (6): Number of bars shifted
(7): Shift of the Type Wheel, (8): Slide
(9): Shift of key wheels
   1   2 3 4                  5      6  7  8    9
   000      A- A- A- A- A- A-              A=A
   001 A E 02-02-02-02-02-02- 001000  7  7 A=H  1- 1- 1- 1- 1- 1-
   002 A F  B- B- B- B- B- B- 100000  5  5 A=M  1- 1- 1- 1- 1- 1-
   003 A B 04-04-04-04-04-04- 010000  6  6 A=S  1- 1- 1- 1- 1- 1-
   004 A G  C- C- C- C- C- C- 001000  7  7 A=Z  1- 1- 1- 1- 1- 1-
   005 A O 06-06-06-06-06-06- 010000  6  6 A=F  1- 1- 1- 1- 1- 1-
   006 A X  D- D- D- D- D- D- 000100  8  8 A=N  1- 1- 1- 1- 1- 1-
   007 A T 08-08-08-08-08-08- 010000  6  6 A=T  1- 1- 1- 1- 1- 1-
EFBGO XT
$