introduction to cryptography lecture 2. functions f(x1) x3 x2 x1 f(x3) f(x2) f domain range

22
Introduction to Cryptography Lecture 2

Upload: sandra-rodgers

Post on 16-Jan-2016

237 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Introduction to Cryptography

Lecture 2

Page 2: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Functions

f(x1)

x3

x2

x1

f(x3)

f(x2)

f

Domain Range

Page 3: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Functions

Definition: A function is a relation, such that each element of a set (the domain) is associated with a unique element of another (possibly the same) set (the range)

f(x1)

x3

x2

x1

f(x2)

f

Domain Range

f(x1)

x2

x1

f(x2)

f

Domain Range

Function Not a function

Page 4: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Definition: A function is called one to one if each element of domain is associated with precisely one element of the range.

Definition: A function is called onto if each element of range is associated with at least one element of the domain.

Functions

Page 5: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Functions

f(x1)

x3

x2

x1

f(x2)

f

Domain Range

f(x1)

x3

x2

x1

f(x2)

f

Domain Range

Not one to one One to one

Onto Not onto

f(x1)

y

Page 6: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Functions

f

A one to one and onto function always has an inverse function

Definition: Given a function an inverse function is computed by rule: if .

Example: If , then .

1f xyf )(1

yxf )(

xyf log)(1 xexf )(

Page 7: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Functions and Cryptography

Cipher can be represented as a function

Example 1:

f(Secret message)= YpbzobqjbZqqyec

Example 2:

f(son) = girl (girl) = son

f(girl) = son (son) = girl

1f1f

Page 8: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

For each key, an encryption method defines a one-to-one and onto function; and the corresponding decryption method is the inverse of this function.

Functions and Cryptography

Page 9: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Permutations

Definition: A permutation of n ordered objects is a way of reordering them.

It is a mathematical function It is one-to-one and onto An inverse of permutation is a permutation

Page 10: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Permutations

Example: x 1 2 3 4 5

p(x) 3 1 5 4 2

x 1 2 3 4 5

q(x) 2 5 1 4 3

Page 11: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Prime Numbers

Definition: A prime number is an integer number that has only two divisors: one and itself.

Example: 1, 2,17, 31. Prime numbers distributed irregularly

among the integers There are infinitely many prime numbers

Page 12: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Factoring

The Fundamental Theorem of Arithmetic tells us that every positive integer can be written as a product of powers of primes in essentially one way.

Example: 23176647 2

53290 2

Page 13: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Factoring

Problem of factoring a number is very hard The decision if n is a prime or composite

number is much easier Fermat’s factoring method sometimes can

be used to find any large factors of a number fair quickly (pg.251)

Page 14: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Greatest Common Divisors - GCD

Definition: Let x and y be two integers. The greatest common divisor of x and y is number d such that d divides x and d divides y.

Definition: x and y are relatively prime if gcd(x,y)=1.

Page 15: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Example: gcd(3,16) = 1

gcd(-28,8) = 4 One way to find gcd is by finding

factorization of both numbers Euclidean Algorithm is usually used in

order to find gcd

Greatest Common Divisors - GCD

Page 16: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Let m be a positive integer and let b be any integer. Then there is exactly one pair of integers q (quotient) and r (remainder) such that b = qm +r.

Division Principle

Page 17: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Euclidean Algorithm

Input x and y x0 = x, y0 = y For I >= 0 do xi+1 = yi, yi+1 = xi mod yi

If yi =0, stop Output gcd(x,y) = xi

Page 18: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Euclidean Algorithm

Example: Let x = 4200 and y = 1485

i xi yi qi ri

0 4200 1485 2 1230

1 1485 1230 1 255

2 1230 255 4 210

3 255 210 1 45

4 210 45 4 30

5 45 30 1 15

6 30 15 2 0

7 15 0    

Page 19: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

For every x and y there are integers s and t such that sx + ty = gcd(x,y)

We can find s and t using Euclidean Algorithm

Extended Euclidean Algorithm

Page 20: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Extended Euclidean Algorithm

Input x and y x0 = x, y0 = y, s0 = t-1 = 0, t0 = s-1 = 1 For I >= 0 do

xi+1 = yi, yi+1 = xi mod yi,

si+1 = si-1 – qisi, ti+1 = ti-1 - qiti

If yi =0, stop Output gcd(x,y) = xi, si-1,ti-1

Page 21: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Extended Euclidean Algorithm

Example: Let x = 4200 and y = 1485

i xi yi qi ri si ti

0 4200 1485 2 1230 0 1

1 1485 1230 1 255 1 -2

2 1230 255 4 210 -1 3

3 255 210 1 45 5 -14

4 210 45 4 30 -6 17

5 45 30 1 15 29 -82

6 30 15 2 0 -35 99

7 15 0        

Page 22: Introduction to Cryptography Lecture 2. Functions f(x1) x3 x2 x1 f(x3) f(x2) f Domain Range

Homework

Read Section 1.2. Exercises: 4, 5 on pg.46-47. Read Section 4.1. Exercises: 6(a,c), 11(b,d), on pg.260-262

Those questions will be a part of your collected homework.