Public-Key Cryptography - amatyc

furiouserectAI and Robotics

Nov 21, 2013 (3 years and 7 months ago)

72 views




Public
-
Key Cryptography


The convergence of prime numbers, the
history of math, inverse functions, and a
contemporary application




Introduction to Cryptography

»
Cryptography is the study of ways of writing a
message that hides its meaning from everyone
except the intended recipient.

»
Encryption is a method of changing plaintext,
the message to be hidden, to ciphertext, the
message in its hidden form.

»
Decryption is the procedure that changes
ciphertext back to plaintext.




Basic Example

Plaintext

-

MATH RULES


Encryption rule

-

W
rite the plaintext
backwards


Ciphertext

-

SELUR HTAM




Function Example
-

Encrypt

»
Choose a function that has an inverse.


»
Rewrite the message as blocks of numbers.


2210 2917 3627 3021 1428



M A T H R U L E S

»
Evaluate the function at each block. This
becomes the encrypted message.

(2210) 2(2210) 1 4421
f
  



Function Example
-
Decrypt

»
Find the inverse of the encryption function
.
This is the decryption function.

»
Evaluate the decryption function at each
received block.

1
1 1
( )
2 2
f x x

 



Path to a Public Function

»
Create a function whose inverse is extremely
difficult to determine without precise details of
how the function was created.

»
Publish this function in a data base of public
functions.

»
Use the inverse function only you can
determine to decrypt messages intended for
you.




Egyptian Multiplication

1


26



2


52

4


104

8


208

16


416

32 >

23

Find 23 26




Egyptian Multiplication

1


26



2


52

4


104

8


208

16


416




New Egyptian Multiplication

23 26

1 2
L {1,1,1,0,1} L {26,52,104,208,416}
 


1 2
1 2
L L {26,52,104,0,416}
Sum L L 598
 
 
10 2
23 10111




Egyptian Exponentiation

23
26



Modular Arithmetic







mod mod mod
a n b n a b n
  






mod mod mod
a n b n a b n
  


mod mod
p
p
a n a n




Modular Exponentiation

233
25

mod 537

1 233 mod 537

2 233
2

mod 537 = 52 mod 537

4 233
4

mod 537 = 52
2

mod 537 = 19 mod 537

8 233
8

mod 537 = 19
2

mod 537 = 361 mod 537

16 233
16

mod 537 = 361
2

mod 537 = 367 mod 537




Modular Exponentiation

233
25

mod 537

1 233 mod 537

2
233
2

mod 537 = 52 mod 537

4 233
4

mod 537 = 52
2

mod 537 = 19 mod 537

8

233
8

mod 537 = 19
2

mod 537 =
361 mod 537

16

233
16

mod 537 = 361
2

mod 537 =
367 mod 537




Modular Exponentiation

Because the exponent 25 = 1 + 8 + 16
, the
product of the nonzero elements is




Public
-
Key Cryptography

»
Choose two large prime numbers,
p

and
q
,
and form their product
n

=
pq
.

»
Calculate

»
Randomly choose
e

such that


and

»
The values of
e

and
n

are the public key.

»
The
ciphertext
,
c
,

is
c

=
m
e

mod
n
, where
m

is the message being encrypted.




An Encryption Example

»
Let
p

= 83 and
q

= 89. Then
n

= 7387.




= (83


1)(89


1) = 7216

»
Randomly choose
e

= 23. Verify



»
The encryption function is
c

=
m
23

mod
7387,
where
m

is a plaintext message block and
c

is
a cipher block.




An Encryption Example

Encrypt

M A T H R U L E S


2210
2917 3627 3021 1428

23
23
23
23
23
2210 mod7387 6117
2917 mod7387 1088
3627 mod7387 6030
3021 mod7387 1874
1428 mod7387 5878








Decryption Function

The decryption function is
m

=
c
1255

mod 7387.

1255
1255
1255
1255
1255
6117 mod7387 2210
1088 mod7387 2917
6030 mod7387 3627
1874 mod7387 3021
5878 mod7387 1428








Public
-
Key Cryptography

»
Theorem:
The decryption function is given
by
m

=
c
d

mod
n
,
where
d

is the solution of


»
Basically, we have to prove that



c
d

= (
m
e

mod
n
)
d

=
m
ed

mod
n

=
m
.




Other Applications

»
Digital signatures


Olivia encrypts a message using her private
key
. Henry
decrypts the message using her
public key.


Better: Olivia first encrypts her message using
Henry’s public key. Then uses her private key
to encrypt that message.

»
HTTPS




Contact Information

»
galoisgroup@mac.com

»
http://
public.me.com/galoisgroup