number theory in cryptography

1
General Number Theoretic Tools I used for programming Cryptographic Algorithms MODULAR ARITHMETIC The set of integers mod n is the set of remainders when the set of integers is divided by “n”. Performing operations under this modulus is important because it constrains the set of integers so the message can be decrypted. Example: Z / 12 Z = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 } What is number theory and what are the key topics in Crypto? Number theory is the study of integers, and their properties Modular arithmetic Primality Divisibility Functions Inverse functions Base systems Algorithms Elliptic Curves 13 + 5 mod 12 = 18 mod 12 = 6 mod 12 12- 13 mod 12 = (-1) mod 12 = 11 mod 12 The Fundamental Theorem of Arithmetic “Unique Prime Factorisation” All integers “n” are written uniquely as a product of their prime factors, e.g. 12 = 2*2*3 Its application to cryptography: It can be computationally unfeasible to deduce the prime factors of large keys, if the product of only several prime numbers, can be hard to deduce because each number has to be trialled computationally Base Number Systems and Lettering A different way of expressing quantity, leads to higher efficiency in some cases Typical alphabet —> Base 26 number system which is converted into base 2 binary Number “x” in base n = (d k d k-1 d k-2…. d 1 d 0 ) n = d k n k + d k-1 n k-1 + d k-2 n k-2 + …+ d 1 n 1 + d 0 n 0 MODULAR multiplicative inverses - an important tool Coprime integers: where the greatest common divisor between a and b = 1. Computational time expressions refer to the amount of operations required to multiply / add / exponentiate numbers in a relative sense. Because computers work in BINARY - a bit refers to the amount of digits of a number in base 2. Its application to cryptography: Finding inverses are an invaluable tool for decryption, creating asymmetric decryption keys as they can inverse the original key to that the original message is recovered (used in the RSA encryption algorithm, and decrypting affine-encrypted messages) The mod inverse “x” of “a” is the integer x such that ax = 1 (mod b). In other words, ax = nb + 1, where a has to be coprime to b. Inverses can be calculated using Euclid’s extended algorithm. Inverses are also useful for performing calculations on elliptic curves (mod prime).

Upload: afiq-hatta

Post on 12-Jan-2016

219 views

Category:

Documents


0 download

DESCRIPTION

A short poster on key fields of number theory in Cryptography

TRANSCRIPT

Page 1: Number Theory in Cryptography

General Number Theoretic Tools I used for programming Cryptographic Algorithms

MODULAR ARITHMETIC

The set of integers mod n is the set of remainders when the set of integers is divided by “n”. Performing operations under this

modulus is important because it constrains the set of integers so the message can be decrypted.

Example: Z / 12 Z = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 }

What is number theory and what are the key topics in Crypto?

Number theory is the study of integers, and their properties

Modular arithmetic PrimalityDivisibility

Functions Inverse functions Base systems

Algorithms

Elliptic Curves

13 + 5 mod 12 = 18 mod 12 = 6 mod 12

12- 13 mod 12 = (-1) mod 12 = 11 mod 12

The Fundamental Theorem of Arithmetic

“Unique Prime Factorisation”

All integers “n” are written uniquely as a product of their prime factors, e.g. 12 = 2*2*3

Its application to cryptography:

It can be computationally unfeasible to deduce the prime factors of large keys, if the product of only several prime numbers, can be hard to deduce because each number has

to be trialled computationally

Base Number Systems and Lettering

A different way of expressing quantity, leads to higher efficiency in some cases

Typical alphabet —> Base 26 number system which is converted into base 2 binary

Number “x” in base n = (dkdk-1dk-2….d1d0)n = dknk + dk-1nk-1 + dk-2nk-2 + …+ d1n1 + d0n0

MODULAR multiplicative inverses - an important tool

Coprime integers: where the greatest

common divisor between a and b = 1.

Computational time expressions refer to the amount of operations required

to multiply / add / exponentiate numbers in a relative sense. Because

computers work in BINARY - a bit refers to the amount of digits of a

number in base 2.

Its application to cryptography:Finding inverses are an invaluable tool for decryption, creating asymmetric decryption keys as they can inverse the original key to that the original message is recovered (used in the

RSA encryption algorithm, and decrypting affine-encrypted messages)

The mod inverse “x” of “a” is the integer x such that ax = 1 (mod b). In other words, ax = nb + 1, where a has to be coprime to b.

Inverses can be calculated using Euclid’s extended

algorithm. Inverses are also useful for

performing calculations on elliptic curves (mod prime).