    <rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/">
     <channel>
        <title>ACCU  :: The 3 Wheel Army / Air Force Enigma Cipher Machine</title>
        <link>https://members.accu.org/index.php/articles/758</link>
        <description>Professionalism in Programming</description>
        <dc:language>en-us</dc:language> 
        <dc:creator>Administrator</dc:creator> 
        <admin:generatorAgent rdf:resource="http://www.xaraya.org" /> 
        <admin:errorReportsTo rdf:resource="mailto:webeditor@accu.org" />
       <sy:updatePeriod>hourly</sy:updatePeriod>
       <sy:updateFrequency>1</sy:updateFrequency>
       <docs>http://backend.userland.com/rss</docs>




<div class="xar-mod-head"><span class="xar-mod-title">CVu Journal Vol 11, #1 - Nov 1998</span></div>

<table border="0" cellpadding="1" cellspacing="0">
    <tbody>
    <tr>
        <td valign="top">
            Browse in :
       </td>
       <td valign="top">

                                            <a href="https://members.accu.org/index.php/articles/">All</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c76/">Journals</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c77/">CVu</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c134/">111</a>
<br />
</td>
   </tr>
   </tbody>
</table>




<div class="xar-error">
   <p>
 <strong>Note:</strong> when you create a new publication type,
the articles module will automatically use the templates
<em>user-display-[publicationtype].xt</em>
and <em>user-summary-[publicationtype].xt</em>.
If those templates do not exist when you try to preview or display a new article,
you'll get this warning :-)  Please place your own templates in themes/<em>yourtheme</em>/modules/articles . The templates will get the extension .xt there. </p>
</div>
<div class="xar-norm xar-standard-box-padding">
   <h1><strong>Title:</strong>&nbsp;The 3 Wheel Army / Air Force Enigma Cipher Machine</h1>
<p><strong>Author:</strong>&nbsp;</p>
<p>
<strong>Date:</strong> 03 November 1998 13:15:28 +00:00 or Tue, 03 November 1998 13:15:28 +00:00</p>
<p><strong>Summary:</strong>&nbsp;</p>
<p><strong>Body:</strong>&nbsp;<div class="article" lang="en">
<div class="titlepage">
<div>
<div>
<h2><a name="d0e1" id="d0e1"></a>The 3 Wheel Army /
Air Force Enigma Cipher Machine</h2>
</div>
<div class="author">
<h3><span class="firstname">Geoff</span>
<span class="surname">Sullivan</span></h3>
<tt class="email">&lt;<a href=
"mailto:geoff@blueangel.demon.co.uk">geoff@blueangel.demon.co.uk</a>&gt;</tt></div>
</div>
<hr></div>
<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e20" id=
"d0e20"></a>Introduction</h2>
</div>
<p>The Enigma Cipher Machine makes a good C, C++ or GUI project,
but the best of the latter tend to be platform specific. The wiring
and operation of the machine is well known. This brief introduction
to the structure and workings of the Enigma is presented so that
simulation projects can simulate the real machines with accuracy.
The 3 wheel Enigma as used by the Army, Air Force and Navy was
supplied with a set of 5 wheels marked I - V. The Navy later added
wheels VI, VII and VIII and also modified the machine to produce a
4-wheel version; using a thin reflector accommodated the fourth
wheel. This note mostly concerns the 3-wheel Enigma used by the
Army and Air Force. Note that the term <i class=
"firstterm">wheel</i>, instead of rotor, was in common use at
Bletchley Park</p>
</div>
<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e28" id="d0e28"></a>Machine
Wiring</h2>
</div>
<p>In the following tables the wiring for the wheels and two
reflectors are given. The top row is the contacts on the right hand
face of the wheel , the left hand contacts are shown for each
wheel. The right hand alphabet progresses clockwise as viewed along
the wheel axis from the stecker end towards the reflector. The
schematic circuit in CVu 10.5 shows the correct wheel layout.</p>
<div class="table"><a name="d0e33" id="d0e33"></a>
<table summary="Wheel wiring" border="1" cellspacing="0">
&lt;colgroup&gt;
&lt;col width=&quot;33%&quot;&gt;
&lt;col width=&quot;33%&quot;&gt;
&lt;col width=&quot;34%&quot;&gt;&lt;/colgroup&gt;
&lt;tbody&gt;
<tr>
<td> </td>
<td>
<pre class="literallayout">
ABCDEFGHIJKLMNOPQRSTUVWXYZ
</pre></td>
<td>Notch</td>
</tr>
<tr>
<td>I</td>
<td>
<pre class="literallayout">
EKMFLGDQVZNTOWYHXUSPAIBRCJ
</pre></td>
<td>Q</td>
</tr>
<tr>
<td>II</td>
<td>
<pre class="literallayout">
AJDKSIRUXBLHWTMCQGZNPYFVOE
</pre></td>
<td>E</td>
</tr>
<tr>
<td>III</td>
<td>
<pre class="literallayout">
BDFHJLCPRTXVZNYEIWGAKMUSQO
</pre></td>
<td>V</td>
</tr>
<tr>
<td>IV</td>
<td>
<pre class="literallayout">
ESOVPZJAYQUIRHXLNFTGKDCMWB
</pre></td>
<td>J</td>
</tr>
<tr>
<td>V</td>
<td>
<pre class="literallayout">
VZBRGITYUPSDNHLXAWMJQOFECK
</pre></td>
<td>Z</td>
</tr>
&lt;/tbody&gt;
</table>
<p class="title c2">Table 1. Wheel wiring</p>
</div>
<div class="table"><a name="d0e85" id="d0e85"></a>
<table summary="Reflector wiring" border="1" cellspacing="0">
&lt;colgroup&gt;
&lt;col width=&quot;50%&quot;&gt;
&lt;col width=&quot;50%&quot;&gt;&lt;/colgroup&gt;
&lt;tbody&gt;
<tr>
<td> </td>
<td>
<pre class="literallayout">
ABCDEFGHIJKLMNOPQRSTUVWXYZ
</pre></td>
</tr>
<tr>
<td>B</td>
<td>
<pre class="literallayout">
YRUHQSLDPXNGOKMIEBFZCWVJAT
</pre></td>
</tr>
<tr>
<td>C</td>
<td>
<pre class="literallayout">
FVPJIAOYEDRZXWGCTKUQSBNMHL
</pre></td>
</tr>
&lt;/tbody&gt;
</table>
<p class="title c2">Table 2. Reflector wiring</p>
</div>
</div>
<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e107" id="d0e107"></a>Stecker
Board</h2>
</div>
<p>The stecker board is a panel consisting of 26 socket pairs. It
is connected between the keyboard/lampboard and the rotors. The
socket pairs represent the 26 input and outputs of the stecker
board. With no leads connected all 26 connections go straight
through unchanged (self-steckered). If a double ended plug lead is
connected between two socket pairs, for example K - T, then
connections K and T are swapped. Note that the current passes
through the stecker board twice, see the schematic diagram in C Vu
10.5.</p>
<p>The connections from the steckerboard are connected to the entry
contacts on the right face of the first wheel in normal alphabetic
order in a clockwise direction.</p>
</div>
<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e114" id="d0e114"></a>Wheel
Movement</h2>
</div>
<p>The scale engraved on the outer ring progresses clockwise.
Wheels move counter-clockwise, displaying a normal numerical
progression in the windows. Naval Enigma machines are engraved A-Z
instead of the 01-26 markings usually found on the Army/Air Force
machine.</p>
<p>The right hand wheel advances one step for each key press. The
wheels move during the down stroke of the key, when the key is
fully down the wheels are at their new positions. Electric current
then flows from the key switch through the steckerboard, through
the scrambler and is reflected back again to light one of the
lamps, but never the same letter as the key, because of the nature
of the reflector.</p>
<p>The notch values given in Table 1 are the points at which a
turn-over occurs. This is the point at which the left and middle
wheels advance by one step for every revolution of the wheel to the
right. These are 'window' positions and are the positions at which
a lever engages into a notch. On the next keyed letter the
turn-over will occur. There is one small complication here, the
so-called double-stepping of the middle wheel. If the middle wheel
steps and is then at its notch position, it will step a second time
at the next character. Such a sequence might be something like
this:</p>
<pre class="literallayout">
KDT KDU KDV KEW LFX LFY LFZ
</pre>
<p>This example uses wheel II in the mid position (notch at E) and
wheel III in the right position (notch at V).</p>
<p>The double step phenomena gives the machine a period of 26x25x26
= 16900, instead of the expected period of 17576.</p>
</div>
<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e129" id=
"d0e129"></a>Ringstellung</h2>
</div>
<p>Recent comments in C Vu suggest there is some uncertainty about
the rings and their purpose. Each wheel carries an outer ring
engraved as described earlier. This ring can be rotated relative to
the wheel core and set to one of 26 positions, held in place by a
spring clip. This ring has the turn-over notches set into it. This
means the ringstellung (ring setting) influences the sequence of
substitution alphabets produced by the machine. For a given wheel
the turn-over will always occur when the same letter is in the
window, but the core wiring at this time will be at one of 26
possible different positions.</p>
</div>
<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e134" id="d0e134"></a>Extra
Notch</h2>
</div>
<p>The extra wheels introduced by the Navy have two notches set
into the ring at the same window positions for all 3 wheels. It
must have been decided that more frequent turn-overs were desirable
and that they should be in the same position for all wheels, since
it is possible to identify a wheel by its turnover in some
crypto-analysis situations. The choice of 2 notches is questionable
since it is a factor of 26. Some Enigma machines have more than two
notches, so it would be a good idea to code simulators to allow for
any number of notches!</p>
</div>
<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e139" id="d0e139"></a>Extra
Wheel</h2>
</div>
<p>As noted earlier, The Navy modified the 3 wheel machines by
adding a fourth wheel. A special thin reflector was used in place
of the normal reflector to allow the fourth wheel to be fitted. The
two wheels to be used in the fourth position were called Beta and
Gamma. The wiring for these and their associated reflectors is
different to others but is arranged so that when the fourth wheel
is set to position A and ring setting A then the combined wiring is
the same as the original reflectors. The fourth wheel could be set
to any position as part of the key but it did not step during
operation.</p>
</div>
<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e144" id="d0e144"></a>A Real
Example</h2>
</div>
<p>The following machine output, familiar to all C programmers, can
be used to check that your simulator program is correct. This
encipherment has a double step in it. The letters in brackets are
the equivalent alphabet positions that would be seen on naval
machines.</p>
<pre class="screen">
Plain Text:    HELLO WORLD
Cipher Text:   OLYOD HKPMA
</pre>
<pre class="literallayout">
Wheels, from left to right.   I    II    III
Wheel settings                11   04    20    (K D T)
Ringstellung                  20   12    26    (T L P)
Reflector                     B
Steckers                      None
</pre></div>
<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e153" id="d0e153"></a>Further
Reading</h2>
</div>
<p>The following books are highly recommended. All are in print and
available in paperback.</p>
<p><i class="citetitle">Code Breakers,The Inside Story of Bletchley
Park</i>, Ed. F.H.Hinsley, Alan Stripp. Oxford University Press
ISBN 0 19 285304 X</p>
<p><i class="citetitle">The Hut Six Story</i>, Gordon Welchman, M
&amp; B Baldwin ISBN 0 947712 34 8</p>
<p><i class="citetitle">Enigma</i>. Robert Harris. Random House.
(Fiction, but interesting)</p>
</div>
</p>
<p><strong>Notes:</strong>&nbsp;</p>
<p><em>More fields may be available via dynamicdata ..</em></p>
</div>
</channel>
</rss>
