Welcome to

ENIGMA

Background

Enigma

Encoding and Decoding was made popular in ancient civilizations, with the first attempts being writing a secret message on a messengers head and waiting for his hair to grow back, sending him to the receiver, and the receiver shaving his head. Encryption has come a long ways since those times, and the modern technique used is RSA encryption that makes use of extremely long prime numbers multiplied together.

Project Description

Over the course of our project we hope to look into one of the first examples of encryption, the Caesar Shift, and create a program for encoding a message given two letters as input for the substitution, and outputs the encoded message. We will also create a decoder and see how long it takes to decode the messages using frequency analysis.

To compare this to modern techniques, we will design an algorithm that attempts to crack RSA encryption. Because this has been deemed impossible with modern standards, we will try our best or give a guess as to how long it would take to factor two very large primes using methods learned in class such as brute force, dynamic programming, or using a graph.

Features

Caesar Cipher

It is a type of substitution cipher in which each letter in the plaintext is replaced by a letter some fixed number of positions down the alphabet. It was made famous by Julius Caesar, who used a shift of 3 to encode important military letters.

RSA Encryption

This method was created to satisfy the need of encrypting without having to use a common key. With RSA there exists a public key and a private key, unlike most other methods which only use a single key.

RSA Decryption

The public key is a pair of numbers (e,n) where n is the product of two large primes (p and q), and e is a value such that the GDC of e and lambda (the LCM of p-1, q-1) is 1. The private key, d, is the modular inverse of e and lambda. Because e is part of the public key, RSA Decryption involves finding the large primes p and q, which turns out to be extremely difficult.

Resources