Hot answers tagged

25

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 ...


14

The example is using a shorthand notation for the rotors that somewhat obscures the way they actually work. For example, the first rotor in your example, BDFHJLCPRTXVZNYEIWGAKMUSQO, actually applies the following permutation of the alphabet: ABCDEFGHIJKLMNOPQRSTUVWXYZ ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ BDFHJLCPRTXVZNYEIWGAKMUSQO Applying this rotor in the ...


11

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 ...


10

No, padding would make the message much easier to crack. This is a great example of why cryptography is left to the professionals (I am not a professional cryptographer, I'm not even a very good amateur one). Amateurs tend to just make things worse. First problem is the Enigma had no way to produce a "null". It was only capable of producing letters. ...


9

Depends on the exact model. Wikipedia is your friend: "Combining three rotors from a set of five, the rotor settings with 26 positions, and the plugboard with ten pairs of letters connected, the military Enigma has 158,962,555,217,826,360,000 (nearly 159 quintillion) different settings." More in detail: if you consider an Enigma with 3 rotors out of 5 ...


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 ...


6

This example is correct. The inversed versions are the inverse permutation; that is, if the forward direction is the permutation $P$, then the inverse permutation $P^{-1}$ has the property that $P^{-1}(P(X)) = X$ for all $X$. That is, if $X$ is a plaintext letter, and we run it through in the forward direction (giving us $P(X)$), and then run it through in ...


5

There is a full breakdown of key size on a website talking about the “Technical Details of the Enigma Machine”. 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 ...


5

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 ...


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

It looks like with no leakage or errors, Enigma is still secure. Quoting the Enigma@Home project website: 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 believed ...


5

The answer depends on the Enigma model, on the number of rotors among which the active rotors are chosen, on the number of wires used for the reflector, and on what one accounts for as part of a setting. The discrepancy between the two numbers around is because the position of the rotors (except the left one, which notch is inactive) can be accounted for - ...


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

There's two missing pieces. First, the ring setting changes the output letter, it doesn't rotate the whole exit pattern. Second, the rotors are advanced before the letter is encrypted. If your rotor (Enigma I Rotor I) is set up like this with the ring at A. abcdefghijklmnopqrstuvwxyz ekmflgdqvzntowyhxuspaibrcj Then if you advance the ring to B all the ...


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 Deutsche U-...


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

The "logic" of the Enigma machine and the development of the Polish solution, in principle, are well described in David Kahn's "Seizing The Enigma". There may be better descriptions that have come out since, but I found this very clear and continue to recommend it. In addition to the nuts and bolts of the machine itself, Kahn describes the history from pre-...


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

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.


2

Every classical cipher can be used without a computer's assistance; while simple mechanical ciphers can fall into the "classical cipher" category, in general classical ciphers are pen-and-paper ciphers, almost all of which are more secure than your "press the key to the right of the real one." Vigenere, for instance, has flaws; however, it is much more ...


2

I guess you already figured it out but my guess is that you forgot to move the first rotor 1 step before starting the encryption. That also impacts what letter it arrives to on next rotor and so on. The complete path is KBD-A>SB>A - A>ETW>A - B>(1)R3>K - J>(2)R2>B - B>(3)R1>D - D>UKW>H - H>(3)R1>D - D>(2)R2&...


2

All that would have done is change the length of the message. Enigma is a per-character substitution cipher. This means that pre-pending padding will not change anything about the security of the message. So the solving method would not have been affected. After putting X amount of gibberish then the resulting settings is exactly the same as another set of ...


1

No, there was no way on the Enigma machine to change the behavior of the rotor rotation. Rotation on the Enigma was a fixed mechanical property of the rotors like the gears in a clock. However, other cryptographers noted this vulnerability in the Enigma and improved it in follow on rotor machines particularly the British Typex and the American SIGABA aka ...


1

A quick internet search delivered this description of Enigma: "This meant that the notches were engaged when Q, E, V, J and Z were uppermost on rotors I, II, III, IV, and V respectively and that therefore the turnover positions were R, F, W, K, A, remembered by the cryptanalysts at Bletchley Park by the mnemonic Royal Flags Wave Kings Above." So this ...


1

A while ago, I spent time playing with modern field ciphers, especially with Card-Chameleon. Card-Chameleon uses a 52 card deck, assigning a letter to each red and each black card and needs two separate full alphabet permutations as a key. As it's a field I tried to find a computer-less, math-less, way to generate permutations from passwords. My solution is ...


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. http://blog.notdot.net/2007/9/Damn-Cool-Algorithms-Part-...


1

Seen this? http://www.cvnguyen.ngocnga.net/tech/enigma/ This guy seemed to have it working on GPU back in 2009



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