# Tag Info

9

Enigma is not a Feistel cipher. A "Feistel cipher" is a block cipher with a specific structure, namely the whole business with the two halves, the combination of one half with a (one-way) function of the other half and a reversible operation (e.g. XOR), and the swap. See the Wikipedia page which has nice schematics. So considering Enigma as a kind of ...

8

What methods would they use? Since WW2, we know the security of Enigma machines was weakened by the reflector, resulting in two problems: No difference between en- and decryption, which means that if K ↦ T, then T ↦ K. No letter can be encrypted by itself because electricity can not travel the same way back, which results in a reduction of encryption ...

7

Since this is an historical question, I am going to digress and make some historical corrections. In science, we give credit for important inventions to the people who published. If it turns out that someone else invented it earlier and didn't publish, they don't get credit. Obviously, they should be mentioned in passing or a footnote in the interests of ...

5

It looks like with no leakage or errors, Enigma is still secure. Quoting http://www.enigmaathome.net/: Enigma@Home is a wrapper between BOINC and Stefan Krah's M4 Project. 'The M4 Project is an effort to break 3 original Enigma messages with the help of distributed computing. The signals were intercepted in the North Atlantic in 1942 and are ...

5

If I understand correctly, you want a function that for each input string $p$ assigns a permutation over an alphabet $L$. If the number of elements in $L$ is small enough, the permutation set $P(L)$ will be enumerable. More precisely, $|P(L)| = |L|!$. There exists a surjective function $f:\{0,1\}^k \to P(L)$ that for each bit string $s$ of length $k$ ...

5

there is a full breakdown of key size on this site to sum up if all rotor combinations are included then you have a possible $3*10^{114}$ possible keys however that didn't happen (the operators would need to keep $\frac{26!}{26}=1.5*10^{25}$ rotors at hand if they didn't allow repeats) by selecting $3$ out of the existing $5$ rotors you have 60 ...

4

No, it's a rotor machine and more importantly, a stream cipher that operates on a character-by-character basis. Block ciphers operate on a chunk at a time. Feistel ciphers are a way to construct block ciphers. We could talk more about Feistel ciphers or more basically block ciphers, but that's not your question. At its most basic, Enigma is a stream cipher ...

4

Sorry to ask this, but did you try a web search via Google for "javascript enigma simulator"? The first hit (cryptomuseum.com) has many links to enigma simulation source code. For example, this one.

3

How secure is this cipher? At first glance, not very. It would appear to be vulnerable to a ciphertext-only attack, for example, the attacker can recover the plaintext given a ciphertext of about 10k (actually, he probably can deal with less), even assuming that all the attacker initially knows is that the plaintext is "ASCII English", and he has no ...

3

Is the logic for how the enigma machine worked documented somewhere? Yes! If you're really interested in "diving in deeper" (pun intented), I would like to advise you to check out: "The Cryptographic Mathematics of Enigma" Dr. A. Ray Miller NSA. Center for Cryptologic History. USA. 1996. 3rd edition 2002 "Funkpeilung als alliierte Waffe gegen ...

2

A great page with everything Enigma is Frode Weierud's CryptoCellar: http://cryptocellar.web.cern.ch/cryptocellar/Enigma/index.html The main topic headings from the page: Enigma Publications Historical Documents Cryptanalytical Documents The Enigma Series Decoding Projects Patents and Manuals General Information Enigma Messages and Keys Enigma ...

2

According to "Applied Cryptanalysis", the theoretical keyspace of Enigma is approximately $2^{366}$, but due to practical limitations, Enigma as used by the Germans only had a keyspace of approximately $2^{77}$. Given the power of some of the clouds out there (with GPUs and all), I bet you could do a brute-force attack of the 77-bit key space in a reasonable ...

2

You could 1. generate a key from the password, 2. seed a deterministic random number generator from the key, 3. use the random number to generate a permutation, using, e.g., Knuth's algorithm.

1

This was covered on scicomp (http://scicomp.stackexchange.com/questions/4923/random-access-random-permutations), but I'll copy the answer here (not sure if that's appropriate but it definitely belongs in both places). You are looking for Black and Rogaway, Ciphers with Arbitrary Finite Domains, 2001. ...

Only top voted, non community-wiki answers of a minimum length are eligible