How do Machines Keep Secrets I

Ryan: FYS Computational Reasoning Fall 2025

Title Text

How machines keep secrets I

Ryan: FYS Computational Reasoning Fall 2025

Vocabulary

"plaintext"

cyphertext

key

encryption

means taking a message or 

transforming it with an algorithm called a 

cypher

into a form

called a 

that can only be read if you have a 

which is a text or number that can b e used to "reverse" the

cypher to 

decrypt

the message

Caesar or Shift Cypher

      GHIJKLMNOPQRSTUVWXYZABCDEF

Encrypt letter with a letter N locations away

Weakness: cryptanalyzable with statistics

ABCDEFGHIJKLMNOPQRSTUVWXYZ

GHIJKLMNOPQRSTUVWXYZABCDEF
ABCDEFGHIJKLMNOPQRSTUVWXYZ

For N=6

my secret > seykixkz

Better: Use a "KEY"

Shift Cypher with Key

Shift each letter in plaintext by different amount

9, 14, 6, 15

Select a key phrase.

Note alphabet position of each letter.

info

ABCDEFGHIJKLMNOPQRSTUVWXYZ
JKLMNOPQRSTUVWXYZABCDEFGHI
ABCDEFGHIJKLMNOPQRSTUVWXYZ
OPQRSTUVWXYZABCDEFGHIJKLMN
ABCDEFGHIJKLMNOPQRSTUVWXYZ
GHIJKLMNOPQRSTUVWXYZABCDEF
ABCDEFGHIJKLMNOPQRSTUVWXYZ
PQRSTUVWXYZABCDEFGHIJKLMNO

i
n
f
o

in foinfo  

NOTE: Lots of ways to do this. Here the rule is "rotate alphabet N positions to the left"

my secret >
i
k
f
l
t
y
m
v

STOP+THINK

If the key is

   starry starry night

what is the cyphertext of

   seven pm

s  e  v  e  n  p  m

s  t  a  r  r  y  s

S ABCDEFGHIJKLMNOPQRSTUVWXYZ
TUVWXYZABCDEFGHIJKLMNOPQRS
T ABCDEFGHIJKLMNOPQRSTUVWXYZ
UVWXYZABCDEFGHIJKLMNOPQRST
A ABCDEFGHIJKLMNOPQRSTUVWXYZ
BCDEFGHIJKLMNOPQRSTUVWXYZA
R ABCDEFGHIJKLMNOPQRSTUVWXYZ
STUVWXYZABCDEFGHIJKLMNOPQR
R ABCDEFGHIJKLMNOPQRSTUVWXYZ
STUVWXYZABCDEFGHIJKLMNOPQR
Y ABCDEFGHIJKLMNOPQRSTUVWXYZ
ZABCDEFGHIJKLMNOPQRSTUVWXY
S ABCDEFGHIJKLMNOPQRSTUVWXYZ
TUVWXYZABCDEFGHIJKLMNOPQRS
T ABCDEFGHIJKLMNOPQRSTUVWXYZ
UVWXYZABCDEFGHIJKLMNOPQRST
A ABCDEFGHIJKLMNOPQRSTUVWXYZ
BCDEFGHIJKLMNOPQRSTUVWXYZA
R ABCDEFGHIJKLMNOPQRSTUVWXYZ
STUVWXYZABCDEFGHIJKLMNOPQR
R ABCDEFGHIJKLMNOPQRSTUVWXYZ
STUVWXYZABCDEFGHIJKLMNOPQR
Y ABCDEFGHIJKLMNOPQRSTUVWXYZ
ZABCDEFGHIJKLMNOPQRSTUVWXY
N ABCDEFGHIJKLMNOPQRSTUVWXYZ
OPQRSTUVWXYZABCDEFGHIJKLMN
I ABCDEFGHIJKLMNOPQRSTUVWXYZ
 JKLMNOPQRSTUVWXYZABCDEFGHI
L
Y
W
W
F
O
F

STOP+THINK

If the key is

   starry starry night

what is the cyphertext of

   seven pm

Decrypt the message

 

vfbkkhliwwj

 

STOP+THINK

S ABCDEFGHIJKLMNOPQRSTUVWXYZ
TUVWXYZABCDEFGHIJKLMNOPQRS
T ABCDEFGHIJKLMNOPQRSTUVWXYZ
UVWXYZABCDEFGHIJKLMNOPQRST
A ABCDEFGHIJKLMNOPQRSTUVWXYZ
BCDEFGHIJKLMNOPQRSTUVWXYZA
R ABCDEFGHIJKLMNOPQRSTUVWXYZ
STUVWXYZABCDEFGHIJKLMNOPQR
R ABCDEFGHIJKLMNOPQRSTUVWXYZ
STUVWXYZABCDEFGHIJKLMNOPQR
Y ABCDEFGHIJKLMNOPQRSTUVWXYZ
ZABCDEFGHIJKLMNOPQRSTUVWXY
S ABCDEFGHIJKLMNOPQRSTUVWXYZ
TUVWXYZABCDEFGHIJKLMNOPQRS
T ABCDEFGHIJKLMNOPQRSTUVWXYZ
UVWXYZABCDEFGHIJKLMNOPQRST
A ABCDEFGHIJKLMNOPQRSTUVWXYZ
BCDEFGHIJKLMNOPQRSTUVWXYZA
R ABCDEFGHIJKLMNOPQRSTUVWXYZ
STUVWXYZABCDEFGHIJKLMNOPQR
R ABCDEFGHIJKLMNOPQRSTUVWXYZ
STUVWXYZABCDEFGHIJKLMNOPQR
Y ABCDEFGHIJKLMNOPQRSTUVWXYZ
ZABCDEFGHIJKLMNOPQRSTUVWXY
N ABCDEFGHIJKLMNOPQRSTUVWXYZ
OPQRSTUVWXYZABCDEFGHIJKLMN
I ABCDEFGHIJKLMNOPQRSTUVWXYZ
 JKLMNOPQRSTUVWXYZABCDEFGHI
L
A
S
S
I
S
O
V
C
E
R

Instead of a finite key, how about an infinite supply of random numbers?

From Better to Best

The One-Time Pad

Cryptography 101: One-Time Pads

infinite supply of random "numbers"

plaintext here

cyphertext here

You encode your message using the OTP and then you burn the OTP. I can decode because I have a copy of the OTP.

STOP+THINK: Decrypt CWJHJDVOKVXHIATBEGFPSSGK

D

1

2

3

4

STOP+THINK: Encrypt "meet me at eight"
key:YHMTMUBGHGBYE

STOP+THINK: Decrypt CWJHJDVOKVXHIATBEGFPSSGK