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
Breandan Considine
September 17, 2016
Education
0
64
How to Send a Secret Message
https://github.com/breandan/crypto-exercises
Breandan Considine
September 17, 2016
Tweet
Share
More Decks by Breandan Considine
See All by Breandan Considine
Intrinsic social motivation via causal influence in multi-agent RL
breandan
0
53
Deep, Skinny Neural Networks are not Universal Approximators
breandan
0
55
PRM-RL: Long-range Robotic Navigation Tasks by Combining Reinforcement Learning and Sampling-based Planning
breandan
0
51
DeepTest: Automated Testing of Deep-Neural-Network-driven Autonomous Cars
breandan
0
56
Idiolect: A Reconfigurable Voice Coding Assisant
breandan
0
67
Interactive Programming with Automated Reasoning
breandan
0
53
Learning Structural Edits via Incremental Tree Transformations
breandan
0
21
Thinking Like Transformers
breandan
0
41
Discriminative Embeddings of Latent Variable Models for Structured Data
breandan
0
13
Other Decks in Education
See All in Education
HyRead2324
cbtlibrary
0
130
6 занятие. Четыре тактики метода "8 кубиков"бизнес-модели #ideaNN 1.03.2024.
karlov
0
160
情報Iの「縦糸」と「横糸」を意識したプログラム教育の実践
asial_edu
0
210
Pen-based Interaction - Lecture 4 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
1.2k
@ngrx/signals
yannickbaron
0
180
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
signer
PRO
0
1.8k
Sähköiset kyselyt, kokeet ja arviointi
matleenalaakso
1
16k
AI教育の未来『おもしろい』を作れる人材の育て方 #東京AI祭
o_ob
1
1k
SUMMER SCHOOL 2024
pnuslide
0
150
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
signer
PRO
0
1.3k
LightSail2324
cbtlibrary
0
130
MySmartSTEAM2324
cbtlibrary
0
130
Featured
See All Featured
Robots, Beer and Maslow
schacon
PRO
155
7.9k
A Tale of Four Properties
chriscoyier
152
22k
[RailsConf 2023] Rails as a piece of cake
palkan
27
4k
Imperfection Machines: The Place of Print at Facebook
scottboms
261
12k
Stop Working from a Prison Cell
hatefulcrawdad
267
19k
A Philosophy of Restraint
colly
197
16k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
8.9k
Building a Modern Day E-commerce SEO Strategy
aleyda
21
6.4k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
188
16k
Facilitating Awesome Meetings
lara
43
5.6k
RailsConf 2023
tenderlove
8
550
From Idea to $5000 a Month in 5 Months
shpigford
378
45k
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.