12
Enigma Meghan Emilio Faculty Sponsor: Ralph Morelli (Computer Science)

Enigma Meghan Emilio Faculty Sponsor: Ralph Morelli (Computer Science)

Embed Size (px)

Citation preview

Page 1: Enigma Meghan Emilio Faculty Sponsor: Ralph Morelli (Computer Science)

EnigmaMeghan Emilio

Faculty Sponsor: Ralph Morelli(Computer Science)

Page 2: Enigma Meghan Emilio Faculty Sponsor: Ralph Morelli (Computer Science)

Objective

There are two main objectives of this project First, to create a working simulation of an Enigma

machine that is as faithful as possible. Second, to create an analyzer which will “break”

Enigma. That is, decrypt messages even if little or no information about the original settings is known.

Page 3: Enigma Meghan Emilio Faculty Sponsor: Ralph Morelli (Computer Science)

What is Enigma?

Electrical enciphering machine widely used by the German Military during WWII.

Breaking Enigma a turning point of the war.

Has three rotating rotors, a plugboard and a reflector.

Page 4: Enigma Meghan Emilio Faculty Sponsor: Ralph Morelli (Computer Science)

Rotors and Plugboard The rotors rotate in the following

sequence: First rotor rotates each time a character is

input. The second rotor rotates once each time the

first rotor makes one full turn. The third rotor rotates once each time the

second rotor has rotated completely.

The plugboard provides a customizable swapping of pairs letters both before and after a character passed through the rotors.

Page 5: Enigma Meghan Emilio Faculty Sponsor: Ralph Morelli (Computer Science)

Putting It All Together

Rotor ISwap

Rotor IISwap

Rotor IIISwap

PlugboardSwap

Input Output

Reflector Swap

Page 6: Enigma Meghan Emilio Faculty Sponsor: Ralph Morelli (Computer Science)

Simulation

Input English/Encrypted text and output Encrypted text/English

Java Applet Faithful to rotor wirings and reflectors

used during WWII

Page 7: Enigma Meghan Emilio Faculty Sponsor: Ralph Morelli (Computer Science)

Analyzer Input encrypted text and output original

English text No other input information is needed Assumes possession of an Enigma machine Assumes text was encrypted without a plug

board Searches through possible decryptions using

simulator and chooses the best one using Index of Coincidence (IC) as a scoring function

Page 8: Enigma Meghan Emilio Faculty Sponsor: Ralph Morelli (Computer Science)

What is Index of Coincidence?

Index of Coincidence (IC) is the probability that two randomly selected letters will be identical.

IC is a statistical measure which distinguishes text encrypted polyalphabetically from text encrypted with a monoalphabetically.

Every language has a calculated IC. For instance: English: 0.0667 Random Text: 0.0385

Page 9: Enigma Meghan Emilio Faculty Sponsor: Ralph Morelli (Computer Science)

Why IC?

Enigma encryptions are polyalphabetic This allows for a heuristic algorithm

Instead of searching all possible decryptions, take the first one that comes close to 0.0667, as there should be only one.

Effective on larger sample sizes (comparable to exhaustive search - see results)

More efficient (relative to rotor setting - see results)

Page 10: Enigma Meghan Emilio Faculty Sponsor: Ralph Morelli (Computer Science)

Problems with IC

50 Characters

0.03

0.04

0.05

0.06

0.07

300 Characters

0.03

0.04

0.05

0.06

0.07

Actual Distribution

0.03

0.04

0.05

0.06

0.07

Page 11: Enigma Meghan Emilio Faculty Sponsor: Ralph Morelli (Computer Science)

Results

Effectiveness

0

20

40

60

80

100

120

50 100 200 300

Sample Size (Characters)P

erce

ntag

e C

orre

ct

Iterative Search

Heuristic Search

Efficiency

0

5

10

15

20

25

30

50 chars 100 chars 200 chars 300 chars

Sample Size (Characters)

Tim

e (H

ours

) Iterative Search

Heuristic Search 1

Heuristic Serach 2

Page 12: Enigma Meghan Emilio Faculty Sponsor: Ralph Morelli (Computer Science)

Conclusion

A computer program was made that was able to break Enigma messages both efficiently and effectively.

Modern day computers make it relatively easy to decrypt Enigma messages.

Thus, Enigma is an inadequate form of encryption for the present day.