0% found this document useful (0 votes)
83 views13 pages

02 Mathematics

This document introduces several key concepts in number theory and modular arithmetic that are important for cryptography. It discusses modular arithmetic, properties like associativity and commutativity, finding residues modulo n, the greatest common divisor algorithm, and computing multiplicative inverses, which are important for encryption algorithms like RSA. Multiplicative inverses are numbers that when multiplied together modulo n produce 1, and each number relatively prime to the modulus n is guaranteed to have a unique inverse.

Uploaded by

Mohd Afiif
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
83 views13 pages

02 Mathematics

This document introduces several key concepts in number theory and modular arithmetic that are important for cryptography. It discusses modular arithmetic, properties like associativity and commutativity, finding residues modulo n, the greatest common divisor algorithm, and computing multiplicative inverses, which are important for encryption algorithms like RSA. Multiplicative inverses are numbers that when multiplied together modulo n produce 1, and each number relatively prime to the modulus n is guaranteed to have a unique inverse.

Uploaded by

Mohd Afiif
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

Introduction to Cryptography Semester 2, 14/15

Number Theory

 The branch of mathematics that is important in IT security especially in cryptography.

 Deals only in integer numbers and the process can be done in a very fast manner.

Modular Arithmetic

• Primarily interested only in modular


arithmetic rather than the
congruence in general.

• Modular arithmetic is often


introduced as ‘clock arithmetic’.

 Example:

o 14 hrs after 3 pm is 5 am the next morning that is


o 14 + 3  5 (mod 12) or 14 + 3 = 1 × 12 + 5

 a  b (mod n) if and only if a mod n = b mod n

 The notation a  b (mod n) is said as ‘a is congruent to b modulo n’.


It holds for integer a, b and n  0.

 b is called a residue of ‘a modulo n’.

 Has features that are appropriate for cryptography e.g. it can be used to compute inverse in
fast mode.

 The intermediates results are restricted to a finite range, usually within (0, n-1), so it has less
likelihood of overflow during computation.

 Some problems involving inverses are very, very hard to solve, yet when one of the inverses is
known, to solve the other is simple.

 “Inverses” are important because they are good candidate for E/D keys.

Page 1 of 13
Introduction to Cryptography Semester 2, 14/15

Laws of Associativity, Commutativity, and Distributivity

 Associativity: (a + b) mod n + c mod n = a + (b + c) mod n

 Commutativity: (a + b) mod n = b mod n + a mod n

 Distributivity: (a + b) mod n  c = (a  c) mod n + ( b  c) mod n

a +/-b mod n = [a mod n +/- b mod n] mod n

Residues of Modulo n

 A set of n integers {r1, …, rn} is called complete set of residues of modulo n.

 For any modulus n, the set of integers {0, 1, ..., n-1} forms a complete set of residues of
modulo n.

 Note: -12(mod 7)  -5(mod 7)  2(mod 7)  9(mod 7)

 Example:

• Find (87 + 114) mod 11


(87 + 114) mod 11 = (10 + 4) mod 11 = 14 mod 11 = 3 mod 11.
(And in fact, 87 + 114 = 201 = 11×18 + 3)

• Find 14(34 mod 16)


14(34 mod 16) = 14(2 mod 16) = 28 mod 16 = 12 mod 16.
(And, in fact, 14·34 = 476 = 29·16 + 12.)

• Find (1234 - 456) mod 7


(1234 - 456) mod 7 = 1234 mod 7 - 456 mod 7 = (2 - 1) mod 7 = 1 mod 7.
(And in fact, 1234 -456 = 778 = 1 mod 7.

Page 2 of 13
Introduction to Cryptography Semester 2, 14/15
• Find 35 mod 7

1. Square 3 3×3=9 3 mod 7 × 3 mod 7 = 2 mod 7


2. Square the result 9 × 9 = 81 2 mod 7 × 2 mod 7 = 4 mod 7
3. Multiply by 3 81 × 3 = 243 4 mod 7 × 3 mod 7 = 5 mod 7
4. Reduce mod 7 243 mod 7 = 5

• Find 312 (mod 7)

32  3 mod 7 × 3 mod 7 = 2 mod 7


34 2 mod 7 × 2 mod 7 = 4 mod 7
38 4 mod 7 × 4 mod 7 = 2 mod 7

312 (mod 7) = 38 (mod 7) × 34 (mod 7) = 2 mod 7 × 4 mod 7 = (mod 7)

• Find 320 mod 5

32  3 × 3 (mod 5)
(32)2 =3 4
 4 × 4 (mod 5)
(34)2 = 38  1 × 1 (mod 5)
(38)2 = 316  1 × 1 (mod 5)
316 * 34 = 320  1 × 1 (mod 5)

• Find 12200 mod 5

Start with (12 × 12) mod 5 


124
128
1216
:
:
12200

Page 3 of 13
Introduction to Cryptography Semester 2, 14/15
gcd : greatest common divisor

 Any positive integer has at least two divisors, 1 and itself (but it can have more).

 The largest integer that evenly divides the set of numbers.

 Given gcd (p, q) = r

• If r is a divisor for p and q.

• Any divisor for p and q is also a divisor for r.

• Divisor – number used to divide another. In the equation 15 ÷ 3 = 5, 3 is the divisor.

 Example:

If p = 8, q = 9

8=1×2×2×2

9=1×3×3

Then gcd (8, 9) = 1

p = 48, q = 72

48 = 1 × 2 × 2 × 2 × 2 × 3

72 = 1 × 2 × 2 × 2 × 3 × 3

Then gcd(48,72) = 2 × 2 × 2 × 3 = 24

Page 4 of 13
Introduction to Cryptography Semester 2, 14/15
 Example:

gcd ( 4, 6) = 2

gcd ( 12, 25) = 1

gcd ( 12, 24) =12

gcd ( 3, 11) = 1

gcd ( 64, 63) = 1

 When gcd (a, n) = 1, it means that a and n do not share any other common factor except 1.

 Then we say that a is relatively prime to n.

 Example:

p = 7, q =11

p = 9, q = 16

Euclid's Algorithm

 Used to find the Greatest Common Divisor (GCD) of two numbers a and n, a < n.

 Fact 1:
gcd (a, 0) = a

Fact 2:
gcd (a, b) = gcd (b, r), where r is the remainder of dividing a by b

Page 5 of 13
Introduction to Cryptography Semester 2, 14/15
 Euclid's Algorithm

 Find the gcd(2740, 1760)

We have gcd (2740, 1760) = 20.

Find gcd (56, 98)

q r1 r2 r
1 98 56 42
1 56 42 14
3 42 14 0
14 0

Find gcd (36, 123)

q r1 r2 r
3 123 36 15
2 36 15 6
2 15 6 3
2 6 3 0
3 0

Page 6 of 13
Introduction to Cryptography Semester 2, 14/15
Find gcd (81, 57)

q r1 r2 r
1 81 57 24
2 57 24 9
2 24 9 6
1 9 6 3
2 6 3 0
3 0

Multiplicative Inverses

 Computation of multiplicative inverses i.e. given an integer a in the range [0, n-1], it may be
possible to find a unique integer x in the range such that
a  x mod n = 1
then a and x are said to be multiplicative inverses one another.

Example:

3 and 7 are multiplicative inverses mod 10


because 21 mod 10 = 1.

 If n is very, very large, say 200 digits, then finding the inverses is very, very hard.

 Such features are the basis for highly secure cryptosystem such as RSA / public key encryption.
(RSA is Rivest + Shamir + Adleman, the gang thet try to break DES using CRAY)

 How do we solve an equation of the form a  x mod n = b?


Example: 6x mod 10 = 4. Find x.

Unique Inverse

 a-1 is inverse of a mod n if a  a-1 = 1 mod n

 Given a  [0, n-1], a has a unique inverse mod n when a and n are relatively prime i.e. a and x
are guarantee unique iff
gcd (a, n) = 1

Page 7 of 13
Introduction to Cryptography Semester 2, 14/15
 Example:
i. if n = 5 and a = 3
3  0 mod 5 = 0
3  1 mod 5 = 3
3  2 mod 5 = 1
3  3 mod 5 = 4
3  4 mod 5 = 2

ii. Find the multiplicative inverse of 4 mod 7.

a = 4 and n = 7

4  0 mod 7 = 0
4  1 mod 7 = 4
4  2 mod 7 = 1
4  3 mod 7 = 5
4  4 mod 7 = 2
4  5 mod 7 = 6
4  6 mod 7 = 3

Find the multiplicative inverse of 2 mod 4.

2 *0 mod 4 = 0
2 *1 mod 4 = 2
2 *2 mod 4 = 0
2 *3 mod 4 = 2

Page 8 of 13
Introduction to Cryptography Semester 2, 14/15
Extended Euclid's (or Binary GCD) Algorithm

 To find Inverse of a number a mod n (where gcd (a, n) = 1) that is mod 26 = ?

 Example: Find d, if 17 × d mod 19800 = 1

 In other words, to find the inverse of (17, 19800).

The answer exist because gcd (17, 19800) = 1

 Extended Euclid's (or Binary GCD) Algorithm  t = multiplicative inverse

Given gcd (n, b) = 1, then (s × n) + (b × t) = gcd (n, b)

If there exist a multiplicative inverse then the relationship (s × n) + (b × t) = 1

Example:

i. Given a = 161 and b = 28, find gcd (a, b) and the values of s and t.

Page 9 of 13
Introduction to Cryptography Semester 2, 14/15

We get gcd (161, 28) = 7, s = −1 and t = 6.

Since gcd (161, 28)  1, there is no multiplicative inverse.

ii. Find the multiplicative inverse of 3 mod 460.

q r1 r2 r s1 s2 s t1 t2 t
153 460 3 1 1 0 1 0 1 -153
3 3 1 0 0 1 -3 1 -153 460
1 0 1 -3 -153 460

From the extended Euclid’s Algorithm, we get gcd (3, 460) = 1, s = 1 and t1 = -153.
Since gcd (3, 460) = 1, the multiplicative inverse = t = -153 mod 460 = 307
Check: (3  307) mod 460 = 921 mod 460 = 1 mod 460
Hence Inverse (3, 460) = -153 = 307 mod 460

Page 10 of 13
Introduction to Cryptography Semester 2, 14/15
iii. Find multiplicative inverse of 15 mod 26

q r1 r2 r t1 t2 t
1 26 15 11 0 1 -1
1 15 11 4 1 -1 2
2 11 4 3 -1 2 -5
1 4 3 1 2 -5 7
2 3 1 0 -5 7 -21
1 0 7 -21

From the extended Euclid’s Algorithm, we get gcd (15, 26) = 1, s1 = -4 and t1 = 7.
Since gcd (15, 26) = 1, the multiplicative inverse = t1 = 7 mod 26
Check: (15  7) mod 26 = 1 mod 26

Reduced Residues and Euler Totient Function, (n)

 Euler’s phi-function, (n), which is sometimes referred to as the Euler’s totient function plays a
very important role in cryptography.

 Reduced set of residues mod n is the subset of residues {0, ….., n-1} relatively prime to n.
Example: Reduced set of residues mod 10 is {1, 3, 7, 9}

 If n is prime, the reduced set of residues is the set of n-1 elements {1, 2,…, n-1}

 Euler Totient function,  (n) is the number of elements in the reduced set of residues modulo
n.

 We can combine the above four rules to find the value of f(n). For example, if n can be
factored as n = p1e1 × p2e2 × … × pkek
then we combine the third and the fourth rule to find

Page 11 of 13
Introduction to Cryptography Semester 2, 14/15
 Example

i. Find  (15)
 (15) =  (3)   (5) = (3 - 1) (5 - 1) = 8.
Check: Reduced set of residues mod 15 {1, 2, 4, 7, 8, 11, 13, 14}.

ii. Find  (n) for n = 24 = 2331


 (24) =  (2331) = 22(2 - 1)  30(3 - 1) = 8

iii. Find the value of  (13)?


Because 13 is a prime, (13) = (13 −1) = 12.

iv. What is the value of  (10)?


Use the third rule:  (10) =  (2) ×  (5) = 1 × 4 = 4, because 2 and 5 are primes.

v. What is the value of (240)?

Write 240 = 24 × 31 × 51
Then  (240) = (24 −23) × (31 − 30) × (51 − 50) = 64

vi. What is the number of elements in Z14*?


The answer is (14) = (7) × (2) = 6 × 1 = 6. The members are 1, 3, 5, 9, 11, and 13.

Page 12 of 13
Introduction to Cryptography Semester 2, 14/15
Other Theorems

 Fermat’s Theorem
Let p be prime. Then for every a such that gcd (a, p) = 1,

ap - 1 mod p =1 mod p.
or
ap = a mod p

 Example:

i. Find the result of 610 mod 11.

We have 610 mod 11 = 1. This is the first version of Fermat’s little theorem where p =
11.

ii. Find the result of 312 mod 11.

312 mod 11 = 310  32 mod 11 = 310 mod 11  32 mod 11 = 1  9 = 9

 Euler’s Generalization
For every a and n such that gcd (a, n) = 1, then

a  (n) mod n =1.

Algorithm for solving ax mod n = 1, where gcd (a, n) = 1 is

x = a  (n)-1 mod n

If n is prime, then x = a (n-1)-1 mod n or x = a (n-2) mod n

Page 13 of 13

You might also like