Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
How to Send a Secret Message
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Breandan Considine
September 17, 2016
Education
73
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
How to Send a Secret Message
https://github.com/breandan/crypto-exercises
Breandan Considine
September 17, 2016
More Decks by Breandan Considine
See All by Breandan Considine
Intrinsic social motivation via causal influence in multi-agent RL
breandan
0
180
Deep, Skinny Neural Networks are not Universal Approximators
breandan
0
160
PRM-RL: Long-range Robotic Navigation Tasks by Combining Reinforcement Learning and Sampling-based Planning
breandan
0
190
DeepTest: Automated Testing of Deep-Neural-Network-driven Autonomous Cars
breandan
0
150
Idiolect: A Reconfigurable Voice Coding Assisant
breandan
0
260
Interactive Programming with Automated Reasoning
breandan
0
100
Learning Structural Edits via Incremental Tree Transformations
breandan
0
77
Thinking Like Transformers
breandan
0
120
Discriminative Embeddings of Latent Variable Models for Structured Data
breandan
0
87
Other Decks in Education
See All in Education
2026年度春学期 統計学 第2回 統計資料の収集と読み方 (2026. 4. 16)
akiraasano
PRO
0
180
LinkedIn
matleenalaakso
0
4.4k
2026年度春学期 統計学 第7回 データの関係を知る(2)ー 回帰と決定係数 (2026. 5. 21)
akiraasano
PRO
0
140
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
signer
PRO
1
2.7k
Soluciones al examen de Geografía 2026. JUNIO (Convocatoria Ordinaria)
juanmartin2026
0
4k
Data Physicalisation - Lecture 9 - Next Generation User Interfaces (4018166FNR)
signer
PRO
1
1.1k
AI時代に、 なぜ英語を勉強するのか
empelt
0
110
Catecismo 26 #2 - Do Credo; Introdução ao 1º artigo
cm_manaus
0
120
We部コミュニティスライド2026-04-24
junhat6
0
180
Data Management and Analytics Specialisation
signer
PRO
0
1.8k
2026年度春学期 統計学 第6回 データの関係を知る(1)ー 相関関係 (2026. 5. 14)
akiraasano
PRO
0
120
Public Space Is Not For Sale
drikkes
0
110
Featured
See All Featured
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
200
Are puppies a ranking factor?
jonoalderson
1
3.6k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
200
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
610
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.3k
How to Think Like a Performance Engineer
csswizardry
28
2.7k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
310
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
Transcript
How to Send a Secret Message GZS WZ PMJR Y
PMTDMW NMPPYKM Breandan Considine QDMYJRYJ TZJPOROJM Nikhil Nanivadekar JOBGOC JYJOVYRMBYD
What is cryptology?
Cryptology is the study of codes.
U V W X Y Z A B C D
E F G H I J K L M N O Q P R S T 1 2 3 4 5 6 7 8 9 0
None
None
None
Cryptology is the study of codes. ^ secret
Cryptology is the study of codes. ^ secret TOP SECRET
How do you share a secret message?
Let’s meet Tuesday afternoon at three.
Let’s meet Tuesday afternoon at three.
Let’s meet Tuesday afternoon at three. Lxt’s mxxt Tuxsday aftxrnoon
at thrxx.
Can we do better?
Exercise #1: Let’s write a cipher!
What is a key?
None
None
One path forward... Many paths backward
Exercise #2: Let’s crack a cipher!
Just like the key, a message can be...
907461028 123877499 129830976 123974729
“three o’clock”
“ ” हहलल वररर
None
Exercise #3: What is a key?
What happens if someone learns our algorithm?
What happens if someone learns our message?
What happens if someone learns our key?
What is a prime number?
None
None
None
None
31 32 33 34 35 36 37 13 14 15
16 17 30 38 3 4 5 12 18 29 39 1 2 6 11 19 28 40 7 8 9 10 20 27 41 21 22 23 24 25 26 42 43 44 45 46 47 48 49...
31 37 13 17 3 5 29 2 11 19
7 41 23 43 47 ...
None
How do we know if an integer is a prime
number?
Exercise #4: What is an algorithm?
Can we share a secret message without sharing a secret
key?
One day in 1977...
Exercise #5: What is a public key?
Step #1: Choose two large random prime numbers (p, q)
Step #2: Choose a number e, that is co-prime to
(p-1)(q-1) (let’s call ^ φ)
Step #3: Publish p*q and e.
Step #5: Encrypt with c(m) = me (mod pq)
Step #6: Decrypt with p(c) = cd (mod pq)
Step #6a: Where d is the inverse modulus of e
(mod φ) ie. e*d = 1 (mod (p-1)(q-1))
Step #2: Choose a number e, that is co-prime to
(p-1)(q-1)
Step #2: Choose a number e, that is co-prime to
(p-1)(q-1)
Exercise #6: Solve for d.