Alice

Parameters known by Alice:

Chooses the shift value

Encrypts the message \( m \):

Step y/x

Enter a message (a sentence containing only whitespace and the letters A-Z) that Alice wants to send encrypted to Bob:

Use the following shift between -26 and 26 (Caesar used the shift \( 3 \)):

Hit enter to generate the parameters and use the left and right arrow keys to navigate.

Hit enter to generate the parameters and use the left and right arrow keys to navigate.

Alice chooses the shift value \( s \) and sends it through a secure channel to Bob.

Before Alice can encrypt the message \( m \) she needs the index in the English alphabet of each letter in the message \( m \) with the letter \( a \) starting at index \( 0 \).

Alice then use the shift value \( s \) to encrypt the message \( m \).

Before Bob can decrypt the ciphertext \( c \) he needs the index in the English alphabet of each letter in the ciphertext \( c \) with the letter \( a \) starting at index \( 0 \).

Decryption is almost identical to encryption: Instead of adding the two numbers we subtract them.

Bob

Parameters known by Bob:

Receives the shift value \( s \)

Receives the ciphertext \( c \)

Decrypts the ciphertext \( c \):