Você está na página 1de 229

2.

Introdução à Teoria dos Números

Matemática Discreta (LEI) 22/23

Diana Rodelo

2. Introdução à Teoria dos Números


2.1 Divisibilidade
2.2 Números primos
2.3 mdc e mmc
2.4 Equações Diofantinas lineares
2.5 Aritmética modular
2.6 Aplicação das congruências aos algarismos de controlo
2.7 Criptograa
2.8 RSA

2. Introdução à Teoria dos Números


Divisão inteira

· Queremos distribuir 11 maçãs por 4 pessoas. Faz-se a divisão inteira de 11 por 4

2. Introdução à Teoria dos Números 2.1 Divisibilidade 1/1


Divisão inteira

· Queremos distribuir 11 maçãs por 4 pessoas. Faz-se a divisão inteira de 11 por 4

- cada pessoa recebe 2 maçãs

2. Introdução à Teoria dos Números 2.1 Divisibilidade 1/1


Divisão inteira

· Queremos distribuir 11 maçãs por 4 pessoas. Faz-se a divisão inteira de 11 por 4

- cada pessoa recebe 2 maçãs

- sobram 3 maçãs

2. Introdução à Teoria dos Números 2.1 Divisibilidade 1/1


Divisão inteira

· Queremos distribuir 11 maçãs por 4 pessoas. Faz-se a divisão inteira de 11 por 4

- cada pessoa recebe 2 maçãs

- sobram 3 maçãs

11 = 2 × 4 + 3 divisão Euclideana
dividendo quociente divisor resto de inteiros

2. Introdução à Teoria dos Números 2.1 Divisibilidade 1/1


Divisão inteira

· Queremos distribuir 11 maçãs por 4 pessoas. Faz-se a divisão inteira de 11 por 4

- cada pessoa recebe 2 maçãs

- sobram 3 maçãs

11 = 2 × 4 + 3 divisão Euclideana
dividendo quociente divisor resto de inteiros

· b divide a (a, b ∈ Z, b ̸= 0): a = qb, para algum q ∈ Z

2. Introdução à Teoria dos Números 2.1 Divisibilidade 1/1


Divisão inteira

· Queremos distribuir 11 maçãs por 4 pessoas. Faz-se a divisão inteira de 11 por 4

- cada pessoa recebe 2 maçãs

- sobram 3 maçãs

11 = 2 × 4 + 3 divisão Euclideana
dividendo quociente divisor resto de inteiros

· b divide a (a, b ∈ Z, b ̸= 0): a = qb, para algum q ∈ Z


- o resto da divisão inteira de a por b é 0

2. Introdução à Teoria dos Números 2.1 Divisibilidade 1/1


Divisão inteira

· Queremos distribuir 11 maçãs por 4 pessoas. Faz-se a divisão inteira de 11 por 4

- cada pessoa recebe 2 maçãs

- sobram 3 maçãs

11 = 2 × 4 + 3 divisão Euclideana
dividendo quociente divisor resto de inteiros

· b divide a (a, b ∈ Z, b ̸= 0): a = qb, para algum q ∈ Z


- o resto da divisão inteira de a por b é 0

- notação b | a

2. Introdução à Teoria dos Números 2.1 Divisibilidade 1/1


Divisão inteira

· Queremos distribuir 11 maçãs por 4 pessoas. Faz-se a divisão inteira de 11 por 4

- cada pessoa recebe 2 maçãs

- sobram 3 maçãs

11 = 2 × 4 + 3 divisão Euclideana
dividendo quociente divisor resto de inteiros

· b divide a (a, b ∈ Z, b ̸= 0): a = qb, para algum q ∈ Z


- o resto da divisão inteira de a por b é 0

- notação b | a

- b é divisor de a ; a é divisível por b ; a é múltiplo de b

2. Introdução à Teoria dos Números 2.1 Divisibilidade 1/1


Divisão inteira

· Queremos distribuir 11 maçãs por 4 pessoas. Faz-se a divisão inteira de 11 por 4

- cada pessoa recebe 2 maçãs

- sobram 3 maçãs

11 = 2 × 4 + 3 divisão Euclideana
dividendo quociente divisor resto de inteiros

· b divide a (a, b ∈ Z, b ̸= 0): a = qb, para algum q ∈ Z


- o resto da divisão inteira de a por b é 0

- notação b | a

- b é divisor de a ; a é divisível por b ; a é múltiplo de b

· Exemplos
- 1 | 307, 2 ∤ 307, −2 | 400, 400 ∤ 2, 6 | (−24), 17 | 17, −18 | 18, 111 | 0

2. Introdução à Teoria dos Números 2.1 Divisibilidade 1/1


Os divisores vêm aos pares

· Os divisores vêm aos pares b|a ⇒ a = qb ⇒ q|a

2. Introdução à Teoria dos Números 2.1 Divisibilidade 2/1


Os divisores vêm aos pares

· Os divisores vêm aos pares b|a ⇒ a = qb ⇒ q|a


- se a=b 2
é um quadrado perfeito, o par do divisor b é b (q = b )

2. Introdução à Teoria dos Números 2.1 Divisibilidade 2/1


Os divisores vêm aos pares

· Os divisores vêm aos pares b|a ⇒ a = qb ⇒ q|a


- se a=b 2
é um quadrado perfeito, o par do divisor b é b (q = b )

· Queremos saber todos os divisores de um número a∈N

2. Introdução à Teoria dos Números 2.1 Divisibilidade 2/1


Os divisores vêm aos pares

· Os divisores vêm aos pares b|a ⇒ a = qb ⇒ q|a


- se a=b 2
é um quadrado perfeito, o par do divisor b é b (q = b )

· Queremos saber todos os divisores de um número a∈N



- basta testar os valores b, com 2 ⩽ b ⩽ [ a]

2. Introdução à Teoria dos Números 2.1 Divisibilidade 2/1


Os divisores vêm aos pares

· Os divisores vêm aos pares b|a ⇒ a = qb ⇒ q|a


- se a=b 2
é um quadrado perfeito, o par do divisor b é b (q = b )

· Queremos saber todos os divisores de um número a∈N



- basta testar os valores b, com 2 ⩽ b ⩽ [ a]
([x ] representa a parte inteira de um número real x ; por exemplo [2.45] = 2)

2. Introdução à Teoria dos Números 2.1 Divisibilidade 2/1


Os divisores vêm aos pares

· Os divisores vêm aos pares b|a ⇒ a = qb ⇒ q|a


- se a=b 2
é um quadrado perfeito, o par do divisor b é b (q = b )

· Queremos saber todos os divisores de um número a∈N



- basta testar os valores b, com 2 ⩽ b ⩽ [ a]
([x ] representa a parte inteira de um número real x ; por exemplo [2.45] = 2)
√ √
- a cada divisor b ⩽ [ a ], corresponde outro divisor q ⩾ [ a ]

2. Introdução à Teoria dos Números 2.1 Divisibilidade 2/1


Os divisores vêm aos pares

· Os divisores vêm aos pares b|a ⇒ a = qb ⇒ q|a


- se a=b 2
é um quadrado perfeito, o par do divisor b é b (q = b )

· Queremos saber todos os divisores de um número a∈N



- basta testar os valores b, com 2 ⩽ b ⩽ [ a]
([x ] representa a parte inteira de um número real x ; por exemplo [2.45] = 2)
√ √
- a cada divisor b ⩽ [ a ], corresponde outro divisor q ⩾ [ a ]

· Aplicação: vericar se um número n ∈ N é primo

2. Introdução à Teoria dos Números 2.1 Divisibilidade 2/1


Os divisores vêm aos pares

· Os divisores vêm aos pares b|a ⇒ a = qb ⇒ q|a


- se a=b 2
é um quadrado perfeito, o par do divisor b é b (q = b )

· Queremos saber todos os divisores de um número a∈N



- basta testar os valores b, com 2 ⩽ b ⩽ [ a]
([x ] representa a parte inteira de um número real x ; por exemplo [2.45] = 2)
√ √
- a cada divisor b ⩽ [ a ], corresponde outro divisor q ⩾ [ a ]

· Aplicação: vericar se um número n ∈ N é primo



- 41 é um número primo porque não é divisível por nenhum valor: 2,3,4,5,6=[ 41]

2. Introdução à Teoria dos Números 2.1 Divisibilidade 2/1


Os divisores vêm aos pares

· Os divisores vêm aos pares b|a ⇒ a = qb ⇒ q|a


- se a=b 2
é um quadrado perfeito, o par do divisor b é b (q = b )

· Queremos saber todos os divisores de um número a∈N



- basta testar os valores b, com 2 ⩽ b ⩽ [ a]
([x ] representa a parte inteira de um número real x ; por exemplo [2.45] = 2)
√ √
- a cada divisor b ⩽ [ a ], corresponde outro divisor q ⩾ [ a ]

· Aplicação: vericar se um número n ∈ N é primo



- 41 é um número primo porque não é divisível por nenhum valor: 2,3,4,5,6=[ 41]

- 53 é um número primo porque não é divisível por nenhum valor: 2,3,4,5,6, 7=[ 53]

2. Introdução à Teoria dos Números 2.1 Divisibilidade 2/1


Os divisores vêm aos pares

· Os divisores vêm aos pares b|a ⇒ a = qb ⇒ q|a


- se a=b 2
é um quadrado perfeito, o par do divisor b é b (q = b )

· Queremos saber todos os divisores de um número a∈N



- basta testar os valores b, com 2 ⩽ b ⩽ [ a]
([x ] representa a parte inteira de um número real x ; por exemplo [2.45] = 2)
√ √
- a cada divisor b ⩽ [ a ], corresponde outro divisor q ⩾ [ a ]

· Aplicação: vericar se um número n ∈ N é primo



- 41 é um número primo porque não é divisível por nenhum valor: 2,3,4,5,6=[ 41]

- 53 é um número primo porque não é divisível por nenhum valor: 2,3,4,5,6, 7=[ 53]

- 65 não é um número primo porque é divisível por 5 (⩽ 8 = [ 65])

2. Introdução à Teoria dos Números 2.1 Divisibilidade 2/1


Propriedades dos divisores

Sejam a, a′ , b, c , d ∈Z
1. b|0 (0 = 0 × b)
2. 1 |a ( a = a × 1)
3. b|b ( propriedade reexiva da relação binária |)

4. c|b ∧ b | a ⇒ c | a (propriedade transitiva da relação binária |)


5. b|a ⇒ b | αa, ∀α ∈ Z (se b divide a, então b divide qualquer múltiplo de a)
6. b|a ∧ b | a ′ ⇒ b | (a + a ′ )
7. b|a ∧ b | a ′ ⇒ b | (αa + β a ′ ), ∀α, β ∈ Z (se b divide a e a ′ , então b
divide qualquer combinação linear de a e a )

8. b | a ⇔ bc | ac , (⇐ se c ̸= 0)
9. b | a ∧ d | c ⇒ bd | ac

2. Introdução à Teoria dos Números 2.1 Divisibilidade 3/1


Critérios de divisibilidade
· a = rn · · · r2 r1 r0 ∈ N ( a = r0 + r1 × 10 + r2 × 102 + · · · + rn × 10n )

2. Introdução à Teoria dos Números 2.1 Divisibilidade 4/1


Critérios de divisibilidade
· a = rn · · · r2 r1 r0 ∈ N ( a = r0 + r1 × 10 + r2 × 102 + · · · + rn × 10n )

· j
Divisibilidade por 2 : 2
j
| rn · · · r2 r1 r0 ⇔ 2
j
| rj −1 · · · r1 r0 j
( ⩽ n + 1)

2. Introdução à Teoria dos Números 2.1 Divisibilidade 4/1


Critérios de divisibilidade
· a = rn · · · r2 r1 r0 ∈ N ( a = r0 + r1 × 10 + r2 × 102 + · · · + rn × 10n )

· Divisibilidade por 2 : 2
j j
| rn · · · r2 r1 r0 ⇔ 2
j
| rj −1 · · · r1 r0 j
( ⩽ n + 1)
2 | 20056 pois 2 | 6; 2 ∤ 3337 pois 2 ∤ 7

2. Introdução à Teoria dos Números 2.1 Divisibilidade 4/1


Critérios de divisibilidade
· a = rn · · · r2 r1 r0 ∈ N ( a = r0 + r1 × 10 + r2 × 102 + · · · + rn × 10n )

· Divisibilidade por 2 : 2
j j
| rn · · · r2 r1 r0 ⇔ 2
j
| rj −1 · · · r1 r0 j
( ⩽ n + 1)
2 | 20056 pois 2 | 6; 2 ∤ 3337 pois 2 ∤ 7
16(= 24 ) | 230064 porque 16 | 64(= 0064); 16(= 24 ) ∤ 91601 porque 16 ∤ 1601

2. Introdução à Teoria dos Números 2.1 Divisibilidade 4/1


Critérios de divisibilidade
· a = rn · · · r2 r1 r0 ∈ N ( a = r0 + r1 × 10 + r2 × 102 + · · · + rn × 10n )

· Divisibilidade por 2 : 2
j j
| rn · · · r2 r1 r0 ⇔ 2
j
| rj −1 · · · r1 r0 j
( ⩽ n + 1)
2 | 20056 pois 2 | 6; 2 ∤ 3337 pois 2 ∤ 7
16(= 24 ) | 230064 porque 16 | 64(= 0064); 16(= 24 ) ∤ 91601 porque 16 ∤ 1601

· Divisibilidade por 5 : 5
j j
| rn · · · r2 r1 r0 ⇔ 5
j
| rj −1 · · · r1 r0 j
( ⩽ n + 1)

2. Introdução à Teoria dos Números 2.1 Divisibilidade 4/1


Critérios de divisibilidade
· a = rn · · · r2 r1 r0 ∈ N ( a = r0 + r1 × 10 + r2 × 102 + · · · + rn × 10n )

· Divisibilidade por 2 : 2
j j
| rn · · · r2 r1 r0 ⇔ 2
j
| rj −1 · · · r1 r0 j
( ⩽ n + 1)
2 | 20056 pois 2 | 6; 2 ∤ 3337 pois 2 ∤ 7
16(= 24 ) | 230064 porque 16 | 64(= 0064); 16(= 24 ) ∤ 91601 porque 16 ∤ 1601

· Divisibilidade por 5 : 5
j j
| rn · · · r2 r1 r0 ⇔ 5
j
| rj −1 · · · r1 r0 j
( ⩽ n + 1)

· Divisibilidade por 3: 3 | rn · · · r2 r1 r0 ⇔ 3 | (r0 + r1 + r2 + · · · + rn )

2. Introdução à Teoria dos Números 2.1 Divisibilidade 4/1


Critérios de divisibilidade
· a = rn · · · r2 r1 r0 ∈ N ( a = r0 + r1 × 10 + r2 × 102 + · · · + rn × 10n )

· Divisibilidade por 2 : 2
j j
| rn · · · r2 r1 r0 ⇔ 2
j
| rj −1 · · · r1 r0 ( j ⩽ n + 1)
2 | 20056 pois 2 | 6; 2 ∤ 3337 pois 2 ∤ 7
16(= 24 ) | 230064 porque 16 | 64(= 0064); 16(= 24 ) ∤ 91601 porque 16 ∤ 1601

· Divisibilidade por 5 : 5
j j
| rn · · · r2 r1 r0 ⇔ 5
j
| rj −1 · · · r1 r0 ( j ⩽ n + 1)

· Divisibilidade por 3: 3 | rn · · · r2 r1 r0 ⇔ 3 | (r0 + r1 + r2 + · · · + rn )


3 | 1032 pois 3 | (1 + 0+3+2 = 6); 3 ∤ 96010 pois 3 ∤ (9 + 6+0+1+0 = 16)

2. Introdução à Teoria dos Números 2.1 Divisibilidade 4/1


Critérios de divisibilidade
· a = rn · · · r2 r1 r0 ∈ N ( a = r0 + r1 × 10 + r2 × 102 + · · · + rn × 10n )

· Divisibilidade por 2 : 2
j j
| rn · · · r2 r1 r0 ⇔ 2
j
| rj −1 · · · r1 r0 ( j ⩽ n + 1)
2 | 20056 pois 2 | 6; 2 ∤ 3337 pois 2 ∤ 7
16(= 24 ) | 230064 porque 16 | 64(= 0064); 16(= 24 ) ∤ 91601 porque 16 ∤ 1601

· Divisibilidade por 5 : 5
j j
| rn · · · r2 r1 r0 ⇔ 5
j
| rj −1 · · · r1 r0 ( j ⩽ n + 1)

· Divisibilidade por 3: 3 | rn · · · r2 r1 r0 ⇔ 3 | (r0 + r1 + r2 + · · · + rn )


3 | 1032 pois 3 | (1 + 0+3+2 = 6); 3 ∤ 96010 pois 3 ∤ (9 + 6+0+1+0 = 16)

· Divisibilidade por 9: 9 | rn · · · r2 r1 r0 ⇔ 9 | (r0 + r1 + r2 + · · · + rn )

2. Introdução à Teoria dos Números 2.1 Divisibilidade 4/1


Critérios de divisibilidade
· a = rn · · · r2 r1 r0 ∈ N ( a = r0 + r1 × 10 + r2 × 102 + · · · + rn × 10n )

· Divisibilidade por 2 : 2
j j
| rn · · · r2 r1 r0 ⇔ 2
j
| rj −1 · · · r1 r0 ( j ⩽ n + 1)
2 | 20056 pois 2 | 6; 2 ∤ 3337 pois 2 ∤ 7
16(= 24 ) | 230064 porque 16 | 64(= 0064); 16(= 24 ) ∤ 91601 porque 16 ∤ 1601

· Divisibilidade por 5 : 5
j j
| rn · · · r2 r1 r0 ⇔ 5
j
| rj −1 · · · r1 r0 ( j ⩽ n + 1)

· Divisibilidade por 3: 3 | rn · · · r2 r1 r0 ⇔ 3 | (r0 + r1 + r2 + · · · + rn )


3 | 1032 pois 3 | (1 + 0+3+2 = 6); 3 ∤ 96010 pois 3 ∤ (9 + 6+0+1+0 = 16)

· Divisibilidade por 9: 9 | rn · · · r2 r1 r0 ⇔ 9 | (r0 + r1 + r2 + · · · + rn )

· Divisibilidade por 11: 11 | rn · · · r2 r1 r0 ⇔ 11 | (r0 − r1 + r2 + · · · + (−1)n rn )

2. Introdução à Teoria dos Números 2.1 Divisibilidade 4/1


Critérios de divisibilidade
· a = rn · · · r2 r1 r0 ∈ N ( a = r0 + r1 × 10 + r2 × 102 + · · · + rn × 10n )

· Divisibilidade por 2 : 2
j j
| rn · · · r2 r1 r0 ⇔ 2
j
| rj −1 · · · r1 r0 ( j ⩽ n + 1)
2 | 20056 pois 2 | 6; 2 ∤ 3337 pois 2 ∤ 7
16(= 24 ) | 230064 porque 16 | 64(= 0064); 16(= 24 ) ∤ 91601 porque 16 ∤ 1601

· Divisibilidade por 5 : 5
j j
| rn · · · r2 r1 r0 ⇔ 5
j
| rj −1 · · · r1 r0 ( j ⩽ n + 1)

· Divisibilidade por 3: 3 | rn · · · r2 r1 r0 ⇔ 3 | (r0 + r1 + r2 + · · · + rn )


3 | 1032 pois 3 | (1 + 0+3+2 = 6); 3 ∤ 96010 pois 3 ∤ (9 + 6+0+1+0 = 16)

· Divisibilidade por 9: 9 | rn · · · r2 r1 r0 ⇔ 9 | (r0 + r1 + r2 + · · · + rn )

· Divisibilidade por 11: 11 | rn · · · r2 r1 r0 ⇔ 11 | (r0 − r1 + r2 + · · · + (−1)n rn )


Exercício: 11 | 4202; 11 | 704000; 11 | 6281913; 11 ∤ 2239

2. Introdução à Teoria dos Números 2.1 Divisibilidade 4/1


2.1 Divisibilidade
2.2 Números primos
2.3 mdc e mmc
2.4 Equações Diofantinas lineares
2.5 Aritmética modular
2.6 Aplicação das congruências aos algarismos de controlo
2.7 Criptograa
2.8 RSA

2. Introdução à Teoria dos Números


Teorema Fundamental da Aritmética

· p ∈ N2 é primo sse os únicos divisores (inteiros positivos) de p são 1 e p

2. Introdução à Teoria dos Números 2.2 Números primos 5/1


Teorema Fundamental da Aritmética

· p ∈ N2 é primo sse os únicos divisores (inteiros positivos) de p são 1 e p

· Teorema Fundamental da Aritmética: a ∈ N2 , a = p1α1 × · · · × pkα k

2. Introdução à Teoria dos Números 2.2 Números primos 5/1


Teorema Fundamental da Aritmética

· p ∈ N2 é primo sse os únicos divisores (inteiros positivos) de p são 1 e p

· Teorema Fundamental da Aritmética: a ∈ N2 , a = p1α1 × · · · × pkα k

(1 < p1 < · · · < pk primos, α1 , · · · , αk ∈ N)

2. Introdução à Teoria dos Números 2.2 Números primos 5/1


Teorema Fundamental da Aritmética

· p ∈ N2 é primo sse os únicos divisores (inteiros positivos) de p são 1 e p

· Teorema Fundamental da Aritmética: a ∈ N2 , a = p1α1 × · · · × pkα k

(1 < p1 < · · · < pk primos, α1 , · · · , αk ∈ N)

· a = p1α1 × · · · × pkα k
tem (α1 + 1) × · · · × (αk + 1) divisores

2. Introdução à Teoria dos Números 2.2 Números primos 5/1


Teorema Fundamental da Aritmética

· p ∈ N2 é primo sse os únicos divisores (inteiros positivos) de p são 1 e p

· Teorema Fundamental da Aritmética: a ∈ N2 , a = p1α1 × · · · × pkα k

(1 < p1 < · · · < pk primos, α1 , · · · , αk ∈ N)

· a = p1α1 × · · · × pkα k
tem (α1 + 1) × · · · × (αk + 1) divisores

· Exemplo: - 1960 = 23 × 5 × 72 tem 4 ×2×3= 24 divisores; 1960 2


980 2
490 2
245 5
49 7
7 7
1

2. Introdução à Teoria dos Números 2.2 Números primos 5/1


Teorema Fundamental da Aritmética

· p ∈ N2 é primo sse os únicos divisores (inteiros positivos) de p são 1 e p

· Teorema Fundamental da Aritmética: a ∈ N2 , a = p1α1 × · · · × pkα k

(1 < p1 < · · · < pk primos, α1 , · · · , αk ∈ N)

· a = p1α1 × · · · × pkα k
tem (α1 + 1) × · · · × (αk + 1) divisores

· Exemplo: - 1960 = 23 × 5 × 72 tem 4 ×2×3= 24 divisores; 1960 2


980 2
490 2
245 5
49 7
7 7
1

2
- 3 × 103 não tem o número total de divisores igual a 3 ×4= 12. Porquê?

2. Introdução à Teoria dos Números 2.2 Números primos 5/1


2.1 Divisibilidade
2.2 Números primos
2.3 mdc e mmc
2.4 Equações Diofantinas lineares
2.5 Aritmética modular
2.6 Aplicação das congruências aos algarismos de controlo
2.7 Criptograa
2.8 RSA

2. Introdução à Teoria dos Números


mdc

· d é o máximo divisor comum de a e b (a, b, d ∈ N; escreve-se mdc(a , b ) = d)


- d | a e d | b;
- se d ′ ∈ N é tal que d ′ | a e d ′ | b, então d ′ | d (⇝ d′ ⩽ d)

2. Introdução à Teoria dos Números 2.3 mdc e mmc 6/1


mdc

· d é o máximo divisor comum de a e b (a, b, d ∈ N; escreve-se mdc(a , b ) = d)


- d | a e d | b;
- se d ′ ∈ N é tal que d ′ | a e d ′ | b, então d ′ | d (⇝ d′ ⩽ d)

· d é o maior divisor (positivo) comum a aeb

2. Introdução à Teoria dos Números 2.3 mdc e mmc 6/1


mdc

· d é o máximo divisor comum de a e b (a, b, d ∈ N; escreve-se mdc(a , b ) = d)


- d | a e d | b;
- se d ′ ∈ N é tal que d ′ | a e d ′ | b, então d ′ | d (⇝ d′ ⩽ d)

· d é o maior divisor (positivo) comum a aeb

· mdc(a , b ) = 1 ⇝ a e b são primos entre si

2. Introdução à Teoria dos Números 2.3 mdc e mmc 6/1


mdc

· d é o máximo divisor comum de a e b (a, b, d ∈ N; escreve-se mdc(a , b ) = d)


- d | a e d | b;
- se d ′ ∈ N é tal que d ′ | a e d ′ | b, então d ′ | d (⇝ d′ ⩽ d)

· d é o maior divisor (positivo) comum a aeb

· mdc(a , b ) = 1 ⇝ a e b são primos entre si


α′j
· mdc(p1α1 × · · · × pk , p ′ 1 1 × · · · × p ′ j ) = p1′′ × · · · × pt′′
αk α′ β1 βt

(p1′′ , · · · , p ′′ são os primos comuns; para p ′′


t i
= pj = pk′ , faz-se βi = min(α j
, α′k )

2. Introdução à Teoria dos Números 2.3 mdc e mmc 6/1


mdc

· d é o máximo divisor comum de a e b (a, b, d ∈ N; escreve-se mdc(a , b ) = d)


- d | a e d | b;
- se d ′ ∈ N é tal que d ′ | a e d ′ | b, então d ′ | d (⇝ d′ ⩽ d)

· d é o maior divisor (positivo) comum a aeb

· mdc(a , b ) = 1 ⇝ a e b são primos entre si


α′j
· mdc(p1α1 × · · · × pk , p ′ 1 1 × · · · × p ′ j ) = p1′′ × · · · × pt′′
αk α′ β1 βt

(p1′′ , · · · , p ′′ são os primos comuns; para p ′′


t i
= pj = pk′ , faz-se βi = min(α j
, α′k )

· Exemplo: - mdc(23 × 5 × 72 , 53 × 72 × 113 × 13) = 5 × 72

2. Introdução à Teoria dos Números 2.3 mdc e mmc 6/1


mdc

· d é o máximo divisor comum de a e b (a, b, d ∈ N; escreve-se mdc(a , b ) = d)


- d | a e d | b;
- se d ′ ∈ N é tal que d ′ | a e d ′ | b, então d ′ | d (⇝ d′ ⩽ d)

· d é o maior divisor (positivo) comum a aeb

· mdc(a , b ) = 1 ⇝ a e b são primos entre si


α′j
· mdc(p1α1 × · · · × pk , p ′ 1 1 × · · · × p ′ j ) = p1′′ × · · · × pt′′
αk α′ β1 βt

(p1′′ , · · · , p ′′ são os primos comuns; para p ′′


t i
= pj = pk′ , faz-se βi = min(α j
, α′k )

· Exemplo: - mdc(23 × 5 × 72 , 53 × 72 × 113 × 13) = 5 × 72


- mdc(2 × 3 × 114 , 24 × 7) = 2

2. Introdução à Teoria dos Números 2.3 mdc e mmc 6/1


mdc

· d é o máximo divisor comum de a e b (a, b, d ∈ N; escreve-se mdc(a , b ) = d)


- d | a e d | b;
- se d ′ ∈ N é tal que d ′ | a e d ′ | b, então d ′ | d (⇝ d′ ⩽ d)

· d é o maior divisor (positivo) comum a aeb

· mdc(a , b ) = 1 ⇝ a e b são primos entre si


α′j
· mdc(p1α1 × · · · × pk , p ′ 1 1 × · · · × p ′ j ) = p1′′ × · · · × pt′′
αk α′ β1 βt

(p1′′ , · · · , p ′′ são os primos comuns; para p ′′


t i
= pj = pk′ , faz-se βi = min(α j
, α′k )

· Exemplo: - mdc(23 × 5 × 72 , 53 × 72 × 113 × 13) = 5 × 72


- mdc(2 × 3 × 114 , 24 × 7) = 2

- mdc(3 × 53 × 17, 25 × 113 ) = 1

2. Introdução à Teoria dos Números 2.3 mdc e mmc 6/1


Propriedades do mdc

· a , b , c ∈ N, com mdc(a , b ) = 1

- b | (ac ) ⇒ b | c ;
- a | c e b | c ⇒ (ab) | c

2. Introdução à Teoria dos Números 2.3 mdc e mmc 7/1


Propriedades do mdc

· a , b , c ∈ N, com mdc(a , b ) = 1

- b | (ac ) ⇒ b | c ;
- a | c e b | c ⇒ (ab) | c

· Propriedade fundamental dos primos: p primo, a, b ∈ N

2. Introdução à Teoria dos Números 2.3 mdc e mmc 7/1


Propriedades do mdc

· a , b , c ∈ N, com mdc(a , b ) = 1

- b | (ac ) ⇒ b | c ;
- a | c e b | c ⇒ (ab) | c

· Propriedade fundamental dos primos: p primo, a, b ∈ N


p | (ab) ⇒ ( p | a ∨ p | b )

2. Introdução à Teoria dos Números 2.3 mdc e mmc 7/1


Propriedades do mdc

· a , b , c ∈ N, com mdc(a , b ) = 1

- b | (ac ) ⇒ b | c ;
- a | c e b | c ⇒ (ab) | c

· Propriedade fundamental dos primos: p primo, a, b ∈ N


p | (ab) ⇒ ( p | a ∨ p | b )

· Contra-exemplo: 10 | 5 × 6(= 30), mas 10 ∤ 5 e 10 ∤ 6

2. Introdução à Teoria dos Números 2.3 mdc e mmc 7/1


Propriedades do mdc

· a , b , c ∈ N, com mdc(a , b ) = 1

- b | (ac ) ⇒ b | c ;
- a | c e b | c ⇒ (ab) | c

· Propriedade fundamental dos primos: p primo, a, b ∈ N


p | (ab) ⇒ ( p | a ∨ p | b )

· Contra-exemplo: 10 | 5 × 6(= 30), mas 10 ∤ 5 e 10 ∤ 6

· a , b ∈ N, mdc(a , b ) = d

2. Introdução à Teoria dos Números 2.3 mdc e mmc 7/1


Propriedades do mdc

· a , b , c ∈ N, com mdc(a , b ) = 1

- b | (ac ) ⇒ b | c ;
- a | c e b | c ⇒ (ab) | c

· Propriedade fundamental dos primos: p primo, a, b ∈ N


p | (ab) ⇒ ( p | a ∨ p | b )

· Contra-exemplo: 10 | 5 × 6(= 30), mas 10 ∤ 5 e 10 ∤ 6

· a , b ∈ N, mdc(a , b ) = d
⇝ a = dk1 , b = dk2 , onde k1 , k2 ∈ N

2. Introdução à Teoria dos Números 2.3 mdc e mmc 7/1


Propriedades do mdc

· a , b , c ∈ N, com mdc(a , b ) = 1

- b | (ac ) ⇒ b | c ;
- a | c e b | c ⇒ (ab) | c

· Propriedade fundamental dos primos: p primo, a, b ∈ N


p | (ab) ⇒ ( p | a ∨ p | b )

· Contra-exemplo: 10 | 5 × 6(= 30), mas 10 ∤ 5 e 10 ∤ 6

· a , b ∈ N, mdc(a , b ) = d
⇝ a = dk1 , b = dk2 , onde k1 , k2 ∈ N
⇝ mdc(k1 , k2 ) =

2. Introdução à Teoria dos Números 2.3 mdc e mmc 7/1


Propriedades do mdc

· a , b , c ∈ N, com mdc(a , b ) = 1

- b | (ac ) ⇒ b | c ;
- a | c e b | c ⇒ (ab) | c

· Propriedade fundamental dos primos: p primo, a, b ∈ N


p | (ab) ⇒ ( p | a ∨ p | b )

· Contra-exemplo: 10 | 5 × 6(= 30), mas 10 ∤ 5 e 10 ∤ 6

· a , b ∈ N, mdc(a , b ) = d
⇝ a = dk1 , b = dk2 , onde k1 , k2 ∈ N
⇝ mdc(k1 , k2 ) = 1

2. Introdução à Teoria dos Números 2.3 mdc e mmc 7/1


Propriedades do mdc

· a , b , c ∈ N, com mdc(a , b ) = 1

- b | (ac ) ⇒ b | c ;
- a | c e b | c ⇒ (ab) | c

· Propriedade fundamental dos primos: p primo, a, b ∈ N


p | (ab) ⇒ ( p | a ∨ p | b )

· Contra-exemplo: 10 | 5 × 6(= 30), mas 10 ∤ 5 e 10 ∤ 6

· a , b ∈ N, mdc(a , b ) = d
⇝ a = dk1 , b = dk2 , onde k1 , k2 ∈ N
⇝ mdc(k1 , k2 ) = 1
(se mdc(k1 , k2 ) = d ̸= 1, então dd (> d ) seria um divisor comum a a e b )
′ ′

2. Introdução à Teoria dos Números 2.3 mdc e mmc 7/1


Algoritmo de Euclides

· a , b ∈ N, a>b
com

1. Faz-se x = a , y = b

2. Faz-se a divisão inteira dex por y e obtém-se resto r , (0 ⩽ r < y )


3. r = 0 ⇝ mdc(a, b) = y ; r ̸= 0 ⇝ x = y , y = r e repete-se o passo 2

2. Introdução à Teoria dos Números 2.3 mdc e mmc 8/1


Algoritmo de Euclides

· a , b ∈ N, com a>b
1. Faz-se x = a , y = b

2. Faz-se a divisão inteira dex por y e obtém-se resto r , (0 ⩽ r < y )


3. r = 0 ⇝ mdc(a, b) = y ; r ̸= 0 ⇝ x = y , y = r e repete-se o passo 2

· Exemplo: mdc(153, 45) = 9, pois 153 = 3 × 45 + 18


45 = 2 × 18 + 9
18 = 2 × 9 (+0)

2. Introdução à Teoria dos Números 2.3 mdc e mmc 8/1


Algoritmo de Euclides

· a , b ∈ N, com a>b
1. Faz-se x = a , y = b

2. Faz-se a divisão inteira dex por y e obtém-se resto r , (0 ⩽ r < y )


3. r = 0 ⇝ mdc(a, b) = y ; r ̸= 0 ⇝ x = y , y = r e repete-se o passo 2

· Exemplo: mdc(153, 45) = 9, pois 153 = 3 × 45 + 18


45 = 2 × 18 + 9
18 = 2 × 9 (+0)

mdc(56, 15) = 1, pois 56 = 3× 15 + 11


15 = 1× 11 + 4
11 = 2×4+3
4 = 1×3+1
3 = 3×1

2. Introdução à Teoria dos Números 2.3 mdc e mmc 8/1


Algoritmo de Euclides

· a , b ∈ N, com a>b
1. Faz-se x = a , y = b

2. Faz-se a divisão inteira dex por y e obtém-se resto r , (0 ⩽ r < y )


3. r = 0 ⇝ mdc(a, b) = y ; r ̸= 0 ⇝ x = y , y = r e repete-se o passo 2

· Exemplo: mdc(153, 45) = 9, pois 153 = 3 × 45 + 18


45 = 2 × 18 + 9
18 = 2 × 9 (+0)

mdc(56, 15) = 1, pois 56 = 3× 15 + 11


15 = 1× 11 + 4
11 = 2×4+3
4 = 1×3+1
3 = 3×1

· Obs: mdc(qb + r , b ) = mdc(r , b )

2. Introdução à Teoria dos Números 2.3 mdc e mmc 8/1


Algoritmo de Euclides

· a , b ∈ N, com a>b
1. Faz-se x = a , y = b

2. Faz-se a divisão inteira dex por y e obtém-se resto r , (0 ⩽ r < y )


3. r = 0 ⇝ mdc(a, b) = y ; r ̸= 0 ⇝ x = y , y = r e repete-se o passo 2

· Exemplo: mdc(153, 45) = 9, pois 153 = 3 × 45 + 18


45 = 2 × 18 + 9
18 = 2 × 9 (+0)

mdc(56, 15) = 1, pois 56 = 3× 15 + 11


15 = 1× 11 + 4
11 = 2×4+3
4 = 1×3+1
3 = 3×1

· Obs: mdc(qb + r , b ) = mdc(r , b )


Ex: mdc(153, 45) = mdc(3 × 45 + 18, 45) = mdc(18, 45) = mdc(18, 2 × 18 + 9) = mdc(18, 9) = 9

2. Introdução à Teoria dos Números 2.3 mdc e mmc 8/1


mdc(a, b ) escrito como combinação linear de aeb

· a, b ∈ N e mdc(a , b ) = d ⇝ existem α, β ∈ Z tais que d = αa + β b

2. Introdução à Teoria dos Números 2.3 mdc e mmc 9/1


mdc(a, b ) escrito como combinação linear de aeb

· a, b ∈ N e mdc(a , b ) = d ⇝ existem α, β ∈ Z tais que d = αa + β b

· Exemplo: mdc(153, 45) = 9 e 9 = −2 × 153 + 7 × 45, pois


1
153 = 3 × 45 + 18 ⇔ 18 = 153 − 3 × 45
2
45 = 2 × 18 + 9 ⇔ 9 = 45 − 2 × 18
18 = 2 ×9

2. Introdução à Teoria dos Números 2.3 mdc e mmc 9/1


mdc(a, b ) escrito como combinação linear de aeb

· a, b ∈ N e mdc(a , b ) = d ⇝ existem α, β ∈ Z tais que d = αa + β b

· Exemplo: mdc(153, 45) = 9 e 9 = −2 × 153 + 7 × 45, pois


1
153 = 3 × 45 + 18 ⇔ 18 = 153 − 3 × 45
2
45 = 2 × 18 + 9 ⇔ 9 = 45 − 2 × 18
18 = 2×9
2 1
9 = 45 − 2 × 18 = 45 − 2 × (153 − 3 × 45) = −2 × 153 + 7 × 45

2. Introdução à Teoria dos Números 2.3 mdc e mmc 9/1


mdc(a, b ) escrito como combinação linear de aeb

· a, b ∈ N e mdc(a , b ) = d ⇝ existem α, β ∈ Z tais que d = αa + β b

· Exemplo: mdc(153, 45) = 9 e 9 = −2 × 153 + 7 × 45, pois


1
153 = 3 × 45 + 18 ⇔ 18 = 153 − 3 × 45
2
45 = 2 × 18 + 9 ⇔ 9 = 45 − 2 × 18
18 = 2×9
2 1
9 = 45 − 2 × 18 = 45 − 2 × (153 − 3 × 45) = −2 × 153 + 7 × 45

mdc(56, 15) = 1 e 1 = −4 × 56 + 15 × 15, pois


1
56 = 3 × 15 + 11 ⇔ 11 = 56 − 3 × 15
2
15 = 1 × 11 + 4 ⇔ 4 = 15 − 11
3
11 = 2 ×4+3 ⇔ 3 = 11 −2×4
4
4 = 1 ×3+1 ⇔ 1 = 4 −3

2. Introdução à Teoria dos Números 2.3 mdc e mmc 9/1


mdc(a, b ) escrito como combinação linear de aeb

· a, b ∈ N e mdc(a , b ) = d ⇝ existem α, β ∈ Z tais que d = αa + β b

· Exemplo: mdc(153, 45) = 9 e 9 = −2 × 153 + 7 × 45, pois


1
153 = 3 × 45 + 18 ⇔ 18 = 153 − 3 × 45
2
45 = 2 × 18 + 9 ⇔ 9 = 45 − 2 × 18
18 = 2×9
2 1
9 = 45 − 2 × 18 = 45 − 2 × (153 − 3 × 45) = −2 × 153 + 7 × 45

mdc(56, 15) = 1 e 1 = −4 × 56 + 15 × 15, pois


1
56 = 3 × 15 + 11 ⇔ 11 = 56 − 3 × 15
2
15 = 1 × 11 + 4 ⇔ 4 = 15 − 11
3
11 = 2 ×4+3 ⇔ 3 = 11 −2×4
4
4 = 1 ×3+1 ⇔ 1 = 4 −3
4 3 2
1 = 4 −3= 4 − (11 − 2 × 4) = −11 + 3 × 4 = −11 + 3 × (15 − 11)
1
= 3 × 15 − 4 × 11 = 3 × 15 − 4 × (56 − 3 × 15) = −4 × 56 + 15 × 15

2. Introdução à Teoria dos Números 2.3 mdc e mmc 9/1


mmc

· m é o mínimo múltiplo comum de a e b (a, b, m ∈ N; escreve-se mmc(a, b) = m )


- a | m e b | m;

- se m ∈ N é tal que a | m e b | m , então m | m (⇝ m ⩽ m )


′ ′ ′ ′ ′

2. Introdução à Teoria dos Números 2.3 mdc e mmc 10/1


mmc

· m é o mínimo múltiplo comum de a e b (a, b, m ∈ N; escreve-se mmc(a, b) = m )


- a | m e b | m;

- se m ∈ N é tal que a | m e b | m , então m | m (⇝ m ⩽ m )


′ ′ ′ ′ ′

· m é o menor múltiplo (positivo) comum a a e b; mmc(a, b) = ab ⇔ mdc(a, b) = 1

2. Introdução à Teoria dos Números 2.3 mdc e mmc 10/1


mmc

· m é o mínimo múltiplo comum de a e b (a, b, m ∈ N; escreve-se mmc(a, b) = m )


- a | m e b | m;

- se m ∈ N é tal que a | m e b | m , então m | m (⇝ m ⩽ m )


′ ′ ′ ′ ′

· m é o menor múltiplo (positivo) comum a a e b; mmc(a, b) = ab ⇔ mdc(a, b) = 1


α′j
· mmc(p1α1 × · · · × pk , p ′ 1 1 × · · · × p ′ j ) = p1′′ × · · · × pt′′
αk α′ β1 βt

max(α , α′ ), quando pi′′ = pmi = pn′



m n
i

α , quando p ′′ = p
 i i

(p1′′ , · · · , p ′′ são todos os primos de a e b; faz-se


t
βi = u
i u u
i

α , quando p ′′ = p ′
 i

v v v
i i i

2. Introdução à Teoria dos Números 2.3 mdc e mmc 10/1


mmc

· m é o mínimo múltiplo comum de a e b (a, b, m ∈ N; escreve-se mmc(a, b) = m )


- a | m e b | m;

- se m ∈ N é tal que a | m e b | m , então m | m (⇝ m ⩽ m )


′ ′ ′ ′ ′

· m é o menor múltiplo (positivo) comum a a e b; mmc(a, b) = ab ⇔ mdc(a, b) = 1


α′j
· mmc(p1α1 × · · · × pk , p ′ 1 1 × · · · × p ′ j ) = p1′′ × · · · × pt′′
αk α′ β1 βt

max(α , α′ ), quando pi′′ = pmi = pn′



m n
i

α , quando p ′′ = p
 i i

(p1′′ , · · · , p ′′ são todos os primos de a e b; faz-se


t
βi = u
i u u
i

α , quando p ′′ = p ′
 i

v v v
i i i

· Exemplo: - mmc(23 × 5 × 72 , 53 × 72 × 113 × 13) = 23 × 53 × 72 × 113 × 13

2. Introdução à Teoria dos Números 2.3 mdc e mmc 10/1


mmc

· m é o mínimo múltiplo comum de a e b (a, b, m ∈ N; escreve-se mmc(a, b) = m )


- a | m e b | m;

- se m ∈ N é tal que a | m e b | m , então m | m (⇝ m ⩽ m )


′ ′ ′ ′ ′

· m é o menor múltiplo (positivo) comum a a e b; mmc(a, b) = ab ⇔ mdc(a, b) = 1


α′j
· mmc(p1α1 × · · · × pk , p ′ 1 1 × · · · × p ′ j ) = p1′′ × · · · × pt′′
αk α′ β1 βt

max(α , α′ ), quando pi′′ = pmi = pn′



m n
i

α , quando p ′′ = p
 i i

(p1′′ , · · · , p ′′ são todos os primos de a e b; faz-se


t
βi = u
i u u
i

α , quando p ′′ = p ′
 i

v v v
i i i

· Exemplo: - mmc(23 × 5 × 72 , 53 × 72 × 113 × 13) = 23 × 53 × 72 × 113 × 13


- mmc(2 × 3 × 114 , 24 × 7) = 24 × 3 × 7 × 114

2. Introdução à Teoria dos Números 2.3 mdc e mmc 10/1


mmc

· m é o mínimo múltiplo comum de a e b (a, b, m ∈ N; escreve-se mmc(a, b) = m )


- a | m e b | m;

- se m ∈ N é tal que a | m e b | m , então m | m (⇝ m ⩽ m )


′ ′ ′ ′ ′

· m é o menor múltiplo (positivo) comum a a e b; mmc(a, b) = ab ⇔ mdc(a, b) = 1


α′j
· mmc(p1α1 × · · · × pk , p ′ 1 1 × · · · × p ′ j ) = p1′′ × · · · × pt′′
αk α′ β1 βt

max(α , α′ ), quando pi′′ = pmi = pn′



m n
i

α , quando p ′′ = p
 i i

(p1′′ , · · · , p ′′ são todos os primos de a e b; faz-se


t
βi = u
i u u
i

α , quando p ′′ = p ′
 i

v v v
i i i

· Exemplo: - mmc(23 × 5 × 72 , 53 × 72 × 113 × 13) = 23 × 53 × 72 × 113 × 13


- mmc(2 × 3 × 114 , 24 × 7) = 24 × 3 × 7 × 114
- mmc(3 × 53 × 17, 25 × 113 ) = 25 × 3 × 53 × 113 × 17

2. Introdução à Teoria dos Números 2.3 mdc e mmc 10/1


Propriedades do mmc

· a , b ∈ N, mmc(a , b ) = m

2. Introdução à Teoria dos Números 2.3 mdc e mmc 11/1


Propriedades do mmc

· a , b ∈ N, mmc(a , b ) = m
⇝ m = ah1 , m = bh2 , onde h1 , h2 ∈ N

2. Introdução à Teoria dos Números 2.3 mdc e mmc 11/1


Propriedades do mmc

· a , b ∈ N, mmc(a , b ) = m
⇝ m = ah1 , m = bh2 , onde h1 , h2 ∈ N
⇝ mdc(h1 , h2 ) =

2. Introdução à Teoria dos Números 2.3 mdc e mmc 11/1


Propriedades do mmc

· a , b ∈ N, mmc(a , b ) = m
⇝ m = ah1 , m = bh2 , onde h1 , h2 ∈ N
⇝ mdc(h1 , h2 ) = 1

2. Introdução à Teoria dos Números 2.3 mdc e mmc 11/1


Propriedades do mmc

· a , b ∈ N, mmc(a , b ) = m
⇝ m = ah1 , m = bh2 , onde h1 , h2 ∈ N
⇝ mdc(h1 , h2 ) = 1

(se mdc(h1 , h2 ) = δ > h1 = δn1 (n1 < h1 ) e h2 = δn2 (n2 < h2 );


1, então

ah1 = bh2 ⇒ an1 = bn2 ⇝ m = an1 < ah1 = m é múltiplo de a e b)


2. Introdução à Teoria dos Números 2.3 mdc e mmc 11/1


Propriedades do mmc

· a , b ∈ N, mmc(a , b ) = m
⇝ m = ah1 , m = bh2 , onde h1 , h2 ∈ N
⇝ mdc(h1 , h2 ) = 1

(se mdc(h1 , h2 ) = δ > h1 = δn1 (n1 < h1 ) e h2 = δn2 (n2 < h2 );


1, então

ah1 = bh2 ⇒ an1 = bn2 ⇝ m = an1 < ah1 = m é múltiplo de a e b)


· a , b ∈ N, ab = mdc(a, b)mmc(a, b)

2. Introdução à Teoria dos Números 2.3 mdc e mmc 11/1


Propriedades do mmc

· a , b ∈ N, mmc(a , b ) = m
⇝ m = ah1 , m = bh2 , onde h1 , h2 ∈ N
⇝ mdc(h1 , h2 ) = 1

(se mdc(h1 , h2 ) = δ > h1 = δn1 (n1 < h1 ) e h2 = δn2 (n2 < h2 );


1, então

ah1 = bh2 ⇒ an1 = bn2 ⇝ m = an1 < ah1 = m é múltiplo de a e b)


· a , b ∈ N, ab = mdc(a, b)mmc(a, b)

· Exemplo: - a = 23 × 5 × 72 , b = 53 × 72 × 113 × 13

2. Introdução à Teoria dos Números 2.3 mdc e mmc 11/1


Propriedades do mmc

· a , b ∈ N, mmc(a , b ) = m
⇝ m = ah1 , m = bh2 , onde h1 , h2 ∈ N
⇝ mdc(h1 , h2 ) = 1

(se mdc(h1 , h2 ) = δ > h1 = δn1 (n1 < h1 ) e h2 = δn2 (n2 < h2 );


1, então

ah1 = bh2 ⇒ an1 = bn2 ⇝ m = an1 < ah1 = m é múltiplo de a e b)


· a , b ∈ N, ab = mdc(a, b)mmc(a, b)

· Exemplo: - a = 23 × 5 × 72 , b = 53 × 72 × 113 × 13
mdc(23 × 5 × 72 , 53 × 72 × 113 × 13) = 5 × 72

2. Introdução à Teoria dos Números 2.3 mdc e mmc 11/1


Propriedades do mmc

· a , b ∈ N, mmc(a , b ) = m
⇝ m = ah1 , m = bh2 , onde h1 , h2 ∈ N
⇝ mdc(h1 , h2 ) = 1

(se mdc(h1 , h2 ) = δ > h1 = δn1 (n1 < h1 ) e h2 = δn2 (n2 < h2 );


1, então

ah1 = bh2 ⇒ an1 = bn2 ⇝ m = an1 < ah1 = m é múltiplo de a e b)


· a , b ∈ N, ab = mdc(a, b)mmc(a, b)

· Exemplo: - a = 23 × 5 × 72 , b = 53 × 72 × 113 × 13
mdc(23 × 5 × 72 , 53 × 72 × 113 × 13) = 5 × 72
mmc(23 × 5 × 72 , 53 × 72 × 113 × 13) = 23 × 53 × 72 × 113 × 13

2. Introdução à Teoria dos Números 2.3 mdc e mmc 11/1


Propriedades do mmc

· a , b ∈ N, mmc(a , b ) = m
⇝ m = ah1 , m = bh2 , onde h1 , h2 ∈ N
⇝ mdc(h1 , h2 ) = 1

(se mdc(h1 , h2 ) = δ > h1 = δn1 (n1 < h1 ) e h2 = δn2 (n2 < h2 );


1, então

ah1 = bh2 ⇒ an1 = bn2 ⇝ m = an1 < ah1 = m é múltiplo de a e b)


· a , b ∈ N, ab = mdc(a, b)mmc(a, b)

· Exemplo: - a = 23 × 5 × 72 , b = 53 × 72 × 113 × 13
mdc(23 × 5 × 72 , 53 × 72 × 113 × 13) = 5 × 72
mmc(23 × 5 × 72 , 53 × 72 × 113 × 13) = 23 × 53 × 72 × 113 × 13
ab = 23 × 54 × 74 × 113 × 13

2. Introdução à Teoria dos Números 2.3 mdc e mmc 11/1


Propriedades do mmc

· a , b ∈ N, mmc(a , b ) = m
⇝ m = ah1 , m = bh2 , onde h1 , h2 ∈ N
⇝ mdc(h1 , h2 ) = 1

(se mdc(h1 , h2 ) = δ > h1 = δn1 (n1 < h1 ) e h2 = δn2 (n2 < h2 );


1, então

ah1 = bh2 ⇒ an1 = bn2 ⇝ m = an1 < ah1 = m é múltiplo de a e b)


· a , b ∈ N, ab = mdc(a, b)mmc(a, b)

· Exemplo: - a = 23 × 5 × 72 , b = 53 × 72 × 113 × 13
mdc(23 × 5 × 72 , 53 × 72 × 113 × 13) = 5 × 72
mmc(23 × 5 × 72 , 53 × 72 × 113 × 13) = 23 × 53 × 72 × 113 × 13
ab = 23 × 54 × 74 × 113 × 13
- a = 15 = 3 × 5, b = 44 = 2 × 11, mdc(15, 44) = 1,
2

mmc(15, 44) = 22 × 3 × 5 × 11 = 15 × 44 = 660

2. Introdução à Teoria dos Números 2.3 mdc e mmc 11/1


2.1 Divisibilidade
2.2 Números primos
2.3 mdc e mmc
2.4 Equações Diofantinas lineares
2.5 Aritmética modular
2.6 Aplicação das congruências aos algarismos de controlo
2.7 Criptograa
2.8 RSA

2. Introdução à Teoria dos Números


Equações Diofantinas lineares

· ax + by (∗)
= c , a, b, c , ∈ N

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 12/1


Equações Diofantinas lineares

· ax + by (∗)
= c , a, b, c , ∈ N
- procuramos soluções inteiras para x, y

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 12/1


Equações Diofantinas lineares

· ax + by (∗)
= c , a, b, c , ∈ N
- procuramos soluções inteiras para x, y
- a equação (*) tem soluções se e só se mdc(a , b ) = d |c

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 12/1


Equações Diofantinas lineares

· ax + by (∗)
= c , a, b, c , ∈ N
- procuramos soluções inteiras para x, y
- a equação (*) tem soluções se e só se mdc(a , b ) = d |c
- quando (∗) admite soluções inteiras, existe uma innidade de soluções

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 12/1


Equações Diofantinas lineares

· ax + by (∗)
= c , a, b, c , ∈ N
- procuramos soluções inteiras para x, y
- a equação (*) tem soluções se e só se mdc(a , b ) = d |c
- quando (∗) admite soluções inteiras, existe uma innidade de soluções

- se x0 , y0 é uma solução particular de (∗), a solução geral é da forma


 x = x0 + b k

d , k∈Z

 y = y0 − a k
d

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 12/1


Equações Diofantinas lineares

· ax + by (∗)
= c , a, b, c , ∈ N
- procuramos soluções inteiras para x, y
- a equação (*) tem soluções se e só se mdc(a , b ) = d |c
- quando (∗) admite soluções inteiras, existe uma innidade de soluções

- se x0 , y0 é uma solução particular de (∗), a solução geral é da forma


 x = x0 + b k

d , k∈Z

 y = y0 − a k
d

- x0 , y0 obtém-se a partir do Algoritmo de Euclides aplicado a mdc(a , b ) = d

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 12/1


Equações Diofantinas lineares

· ax + by (∗)
= c , a, b, c , ∈ N
- procuramos soluções inteiras para x, y
- a equação (*) tem soluções se e só se mdc(a , b ) = d |c
- quando (∗) admite soluções inteiras, existe uma innidade de soluções

- se x0 , y0 é uma solução particular de (∗), a solução geral é da forma


 x = x0 + b k

d , k∈Z

 y = y0 − a k
d

- x0 , y0 obtém-se a partir do Algoritmo de Euclides aplicado a mdc(a , b ) = d

d |c ⇒ c = dδ e a(α) + b(β) Euclides


= d

a(αδ) + b(βδ) = c (= d δ)

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 12/1


Equações Diofantinas lineares

· ax + by (∗)
= c , a, b, c , ∈ N
- procuramos soluções inteiras para x, y
- a equação (*) tem soluções se e só se mdc(a , b ) = d |c
- quando (∗) admite soluções inteiras, existe uma innidade de soluções

- se x0 , y0 é uma solução particular de (∗), a solução geral é da forma


 x = x0 + b k

d , k∈Z

 y = y0 − a k
d

- x0 , y0 obtém-se a partir do Algoritmo de Euclides aplicado a mdc(a , b ) = d

d |c ⇒ c = dδ e a(α) + b(β) Euclides


= d

a(αδ) + b(βδ) = c (= d δ)
x0 y0
|{z} |{z}

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 12/1


Equações Diofantinas lineares - exemplo
· Exemplo: Num exame de Matemática pretende-se distribuir 322 alunos por salas com

capacidade para 40 alunos e para 28 alunos (mdc(40, 28) = 4)

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 13/1


Equações Diofantinas lineares - exemplo
· Exemplo: Num exame de Matemática pretende-se distribuir 322 alunos por salas com

capacidade para 40 alunos e para 28 alunos (mdc(40, 28) = 4)

- pretendemos encontrar soluções inteiras e positivas para 40 x + 28y = 322

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 13/1


Equações Diofantinas lineares - exemplo
· Exemplo: Num exame de Matemática pretende-se distribuir 322 alunos por salas com

capacidade para 40 alunos e para 28 alunos (mdc(40, 28) = 4)

- pretendemos encontrar soluções inteiras e positivas para 40 x + 28y = 322

- não é possível fazer essa distribuição de modo a ocupar totalmente as salas: 4 ∤ 322

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 13/1


Equações Diofantinas lineares - exemplo
· Exemplo: Num exame de Matemática pretende-se distribuir 322 alunos por salas com

capacidade para 40 alunos e para 28 alunos (mdc(40, 28) = 4)

- pretendemos encontrar soluções inteiras e positivas para 40 x + 28y = 322

- não é possível fazer essa distribuição de modo a ocupar totalmente as salas: 4 ∤ 322

- a alternativa é resolver a equação 40 x + 28y = 324 que tem soluções (4 | 324)

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 13/1


Equações Diofantinas lineares - exemplo
· Exemplo: Num exame de Matemática pretende-se distribuir 322 alunos por salas com

capacidade para 40 alunos e para 28 alunos (mdc(40, 28) = 4)

- pretendemos encontrar soluções inteiras e positivas para 40 x + 28y = 322

- não é possível fazer essa distribuição de modo a ocupar totalmente as salas: 4 ∤ 322

- a alternativa é resolver a equação 40 x + 28y = 324 que tem soluções (4 | 324)

- aplica-se algoritmo de Euclides para obter: 40 × (−2) + 28 × (3) = 4

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 13/1


Equações Diofantinas lineares - exemplo
· Exemplo: Num exame de Matemática pretende-se distribuir 322 alunos por salas com

capacidade para 40 alunos e para 28 alunos (mdc(40, 28) = 4)

- pretendemos encontrar soluções inteiras e positivas para 40 x + 28y = 322

- não é possível fazer essa distribuição de modo a ocupar totalmente as salas: 4 ∤ 322

- a alternativa é resolver a equação 40 x + 28y = 324 que tem soluções (4 | 324)

- aplica-se algoritmo de Euclides para obter: 40 × (−2) + 28 × (3) = 4

- deduz-se que 40 × (−162) + 28 × (243) = 324 ⇝ x0 = −162, y0 = 243

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 13/1


Equações Diofantinas lineares - exemplo
· Exemplo: Num exame de Matemática pretende-se distribuir 322 alunos por salas com

capacidade para 40 alunos e para 28 alunos (mdc(40, 28) = 4)

- pretendemos encontrar soluções inteiras e positivas para 40 x + 28y = 322

- não é possível fazer essa distribuição de modo a ocupar totalmente as salas: 4 ∤ 322

- a alternativa é resolver a equação 40 x + 28y = 324 que tem soluções (4 | 324)

- aplica-se algoritmo de Euclides para obter: 40 × (−2) + 28 × (3) = 4

- deduz-se que 40 × (−162) + 28 × (243) = 324 ⇝ x0 = −162, y0 = 243


x = −162 + 7k
(
- a solução geral é , k ∈Z
y = 243 − 10k

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 13/1


Equações Diofantinas lineares - exemplo
· Exemplo: Num exame de Matemática pretende-se distribuir 322 alunos por salas com

capacidade para 40 alunos e para 28 alunos (mdc(40, 28) = 4)

- pretendemos encontrar soluções inteiras e positivas para 40 x + 28y = 322

- não é possível fazer essa distribuição de modo a ocupar totalmente as salas: 4 ∤ 322

- a alternativa é resolver a equação 40 x + 28y = 324 que tem soluções (4 | 324)

- aplica-se algoritmo de Euclides para obter: 40 × (−2) + 28 × (3) = 4

- deduz-se que 40 × (−162) + 28 × (243) = 324 ⇝ x0 = −162, y0 = 243


x = −162 + 7k
(
- a solução geral é , k ∈Z
y = 243 − 10k
- resolve-se −162 + 7k ⩾ 0 e 243 − 10k ⩾ 0 ⇝ k ⩾ 23, 1 · · · e k ⩽ 24, 9 · · ·

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 13/1


Equações Diofantinas lineares - exemplo
· Exemplo: Num exame de Matemática pretende-se distribuir 322 alunos por salas com

capacidade para 40 alunos e para 28 alunos (mdc(40, 28) = 4)

- pretendemos encontrar soluções inteiras e positivas para 40 x + 28y = 322

- não é possível fazer essa distribuição de modo a ocupar totalmente as salas: 4 ∤ 322

- a alternativa é resolver a equação 40 x + 28y = 324 que tem soluções (4 | 324)

- aplica-se algoritmo de Euclides para obter: 40 × (−2) + 28 × (3) = 4

- deduz-se que 40 × (−162) + 28 × (243) = 324 ⇝ x0 = −162, y0 = 243


x = −162 + 7k
(
- a solução geral é , k ∈Z
y = 243 − 10k
- resolve-se −162 + 7k ⩾ 0 e 243 − 10k ⩾ 0 ⇝ k ⩾ 23, 1 · · · e k ⩽ 24, 9 · · ·
x
(
= −162 + 7 × 24 = 6
- há uma solução possível para k = 24:
y = 243 − 10 × 24 = 3

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 13/1


Equações Diofantinas lineares - exemplo
· Exemplo: Num exame de Matemática pretende-se distribuir 322 alunos por salas com

capacidade para 40 alunos e para 28 alunos (mdc(40, 28) = 4)

- pretendemos encontrar soluções inteiras e positivas para 40 x + 28y = 322

- não é possível fazer essa distribuição de modo a ocupar totalmente as salas: 4 ∤ 322

- a alternativa é resolver a equação 40 x + 28y = 324 que tem soluções (4 | 324)

- aplica-se algoritmo de Euclides para obter: 40 × (−2) + 28 × (3) = 4

- deduz-se que 40 × (−162) + 28 × (243) = 324 ⇝ x0 = −162, y0 = 243


x = −162 + 7k
(
- a solução geral é , k ∈Z
y = 243 − 10k
- resolve-se −162 + 7k ⩾ 0 e 243 − 10k ⩾ 0 ⇝ k ⩾ 23, 1 · · · e k ⩽ 24, 9 · · ·
x
(
= −162 + 7 × 24 = 6
- há uma solução possível para k = 24:
y = 243 − 10 × 24 = 3

Solução: é possível distribuir os alunos por 6 salas de 40 alunos e 3 salas de 28 alunos;

uma sala terá dois lugares livres

2. Introdução à Teoria dos Números 2.4 Equações Diofantinas lineares 13/1


2.1 Divisibilidade
2.2 Números primos
2.3 mdc e mmc
2.4 Equações Diofantinas lineares
2.5 Aritmética modular
2.6 Aplicação das congruências aos algarismos de controlo
2.7 Criptograa
2.8 RSA

2. Introdução à Teoria dos Números


Congruências

· a , b ∈ Z, m ∈ N2 , a é congruente a b, módulo m : m |(a − b)

2. Introdução à Teoria dos Números 2.5 Aritmética modular 14/1


Congruências

· a , b ∈ Z,m ∈ N2 , a é congruente a b, módulo m : m |(a − b)


- escreve-se a ≡m b

2. Introdução à Teoria dos Números 2.5 Aritmética modular 14/1


Congruências

· a , b ∈ Z,m ∈ N2 , a é congruente a b, módulo m : m |(a − b)


- escreve-se a ≡m b

- a = k × m + b , para algum k ∈ Z

2. Introdução à Teoria dos Números 2.5 Aritmética modular 14/1


Congruências

· a , b ∈ Z,m ∈ N2 , a é congruente a b, módulo m : m |(a − b)


- escreve-se a ≡m b

- a = k × m + b , para algum k ∈ Z

- a e b têm o mesmo resto quando se faz a divisão por m

2. Introdução à Teoria dos Números 2.5 Aritmética modular 14/1


Congruências

· a , b ∈ Z,m ∈ N2 , a é congruente a b, módulo m : m |(a − b)


- escreve-se a ≡m b

- a = k × m + b , para algum k ∈ Z

- a e b têm o mesmo resto quando se faz a divisão por m

- habitualmente interessa determinar a congruência a ≡m r , com 0 ⩽ r ⩽ m−1


nesse caso: a ≡m r sse r é o resto da divisão inteira de a por m

2. Introdução à Teoria dos Números 2.5 Aritmética modular 14/1


Congruências

· a , b ∈ Z, m ∈ N2 , a é congruente a b, módulo m : m |(a − b)


- escreve-se a ≡m b

- a = k × m + b , para algum k ∈ Z

- a e b têm o mesmo resto quando se faz a divisão por m

- habitualmente interessa determinar a congruência a ≡m r , com 0 ⩽ r ⩽ m−1


nesse caso: a ≡m r sse r é o resto da divisão inteira de a por m

· Exemplos: para ≡23 , obtemos as congruências r com 0 ⩽ r ⩽ 22

- 100 ≡23 8, porque 100 = 4 × 23 + 8

2. Introdução à Teoria dos Números 2.5 Aritmética modular 14/1


Congruências

· a , b ∈ Z, m ∈ N2 , a é congruente a b, módulo m : m |(a − b)


- escreve-se a ≡m b

- a = k × m + b , para algum k ∈ Z

- a e b têm o mesmo resto quando se faz a divisão por m

- habitualmente interessa determinar a congruência a ≡m r , com 0 ⩽ r ⩽ m−1


nesse caso: a ≡m r sse r é o resto da divisão inteira de a por m

· Exemplos: para ≡23 , obtemos as congruências r com 0 ⩽ r ⩽ 22

- 100 ≡23 8, porque 100 = 4 × 23 + 8


- 2299 ≡23 22, porque 2299 = 99 × 23 + 22

2. Introdução à Teoria dos Números 2.5 Aritmética modular 14/1


Congruências

· a , b ∈ Z, m ∈ N2 , a é congruente a b, módulo m : m |(a − b)


- escreve-se a ≡m b

- a = k × m + b , para algum k ∈ Z

- a e b têm o mesmo resto quando se faz a divisão por m

- habitualmente interessa determinar a congruência a ≡m r , com 0 ⩽ r ⩽ m−1


nesse caso: a ≡m r sse r é o resto da divisão inteira de a por m

· Exemplos: para ≡23 , obtemos as congruências r com 0 ⩽ r ⩽ 22

- 100 ≡23 8, porque 100 = 4 × 23 + 8


- 2299 ≡23 22, porque 2299 = 99 × 23 + 22
- 253 ≡23 0, porque 253 = 11 × 23 (+0)

2. Introdução à Teoria dos Números 2.5 Aritmética modular 14/1


Congruências

· a , b ∈ Z, m ∈ N2 , a é congruente a b, módulo m : m |(a − b)


- escreve-se a ≡m b

- a = k × m + b , para algum k ∈ Z

- a e b têm o mesmo resto quando se faz a divisão por m

- habitualmente interessa determinar a congruência a ≡m r , com 0 ⩽ r ⩽ m−1


nesse caso: a ≡m r sse r é o resto da divisão inteira de a por m

· Exemplos: para ≡23 , obtemos as congruências r com 0 ⩽ r ⩽ 22

- 100 ≡23 8, porque 100 = 4 × 23 + 8


- 2299 ≡23 22, porque 2299 = 99 × 23 + 22
- 253 ≡23 0, porque 253 = 11 × 23 (+0)
- −11 ≡23 12, porque −11 + 23 = 12

2. Introdução à Teoria dos Números 2.5 Aritmética modular 14/1


Congruências

· a , b ∈ Z, m ∈ N2 , a é congruente a b, módulo m : m |(a − b)


- escreve-se a ≡m b

- a = k × m + b , para algum k ∈ Z

- a e b têm o mesmo resto quando se faz a divisão por m

- habitualmente interessa determinar a congruência a ≡m r , com 0 ⩽ r ⩽ m−1


nesse caso: a ≡m r sse r é o resto da divisão inteira de a por m

· Exemplos: para ≡23 , obtemos as congruências r com 0 ⩽ r ⩽ 22

- 100 ≡23 8, porque 100 = 4 × 23 + 8


- 2299 ≡23 22, porque 2299 = 99 × 23 + 22
- 253 ≡23 0, porque 253 = 11 × 23 (+0)
- −11 ≡23 12, porque −11 + 23 = 12

- −35 ≡23 11, porque −35 + 2 × 23 = 11

2. Introdução à Teoria dos Números 2.5 Aritmética modular 14/1


Congruências

· a , b ∈ Z, m ∈ N2 , a é congruente a b, módulo m : m |(a − b)


- escreve-se a ≡m b

- a = k × m + b , para algum k ∈ Z

- a e b têm o mesmo resto quando se faz a divisão por m

- habitualmente interessa determinar a congruência a ≡m r , com 0 ⩽ r ⩽ m−1


nesse caso: a ≡m r sse r é o resto da divisão inteira de a por m

· Exemplos: para ≡23 , obtemos as congruências r com 0 ⩽ r ⩽ 22

- 100 ≡23 8, porque 100 = 4 × 23 + 8


- 2299 ≡23 22, porque 2299 = 99 × 23 + 22
- 253 ≡23 0, porque 253 = 11 × 23 (+0)
- −11 ≡23 12, porque −11 + 23 = 12

- −35 ≡23 11, porque −35 + 2 × 23 = 11

- −95 ≡23 20, porque −95 + 5 × 23 = 20

2. Introdução à Teoria dos Números 2.5 Aritmética modular 14/1


Inversos em Zm

· m ∈ N2 , a ∈ Zm = {0, 1, · · · , m − 1}, a admite inverso em Zm sse mdc(a , m ) = 1

2. Introdução à Teoria dos Números 2.5 Aritmética modular 15/1


Inversos em Zm

· m ∈ N2 , a ∈ Zm = {0, 1, · · · , m − 1}, a admite inverso em Zm sse mdc(a, m ) = 1


- o inverso de a (quando existe) é um número α ∈ Zm : a α ≡m 1; denota-se a
−1

2. Introdução à Teoria dos Números 2.5 Aritmética modular 15/1


Inversos em Zm

· m ∈ N2 , a ∈ Zm = {0, 1, · · · , m − 1}, a admite inverso em Zm sse mdc(a, m ) = 1


- o inverso de a (quando existe) é um número α ∈ Zm : a α ≡m 1; denota-se a
−1

- ⇒ a α = k × m + 1, para algum k ∈ Z

2. Introdução à Teoria dos Números 2.5 Aritmética modular 15/1


Inversos em Zm

· m ∈ N2 , a ∈ Zm = {0, 1, · · · , m − 1}, a admite inverso em Zm sse mdc(a, m ) = 1


- o inverso de a (quando existe) é um número α ∈ Zm : a α ≡m 1; denota-se a
−1

- ⇒ a α = k × m + 1, para algum k ∈ Z

- ⇒ a α − km = 1, ⇝ a equação Diofantina linear: ax + my = 1

2. Introdução à Teoria dos Números 2.5 Aritmética modular 15/1


Inversos em Zm

· m ∈ N2 , a ∈ Zm = {0, 1, · · · , m − 1}, a admite inverso em Zm sse mdc(a, m ) = 1


- o inverso de a (quando existe) é um número α ∈ Zm : a α ≡m 1; denota-se a
−1

- ⇒ a α = k × m + 1, para algum k ∈ Z

- ⇒ a α − km = 1, ⇝ a equação Diofantina linear: ax + my = 1

- ax + my = 1 tem soluções sse mdc(a , m ) | 1 sse mdc(a , m ) = 1

2. Introdução à Teoria dos Números 2.5 Aritmética modular 15/1


Inversos em Zm

· m ∈ N2 , a ∈ Zm = {0, 1, · · · , m − 1}, a admite inverso em Zm sse mdc(a, m ) = 1


- o inverso de a (quando existe) é um número α ∈ Zm : a α ≡m 1; denota-se a
−1

- ⇒ a α = k × m + 1, para algum k ∈ Z

- ⇒ a α − km = 1, ⇝ a equação Diofantina linear: ax + my = 1

- ax + my = 1 tem soluções sse mdc(a , m ) | 1 sse mdc(a , m ) = 1

- a é a solução particular de x que está entre 0 e m − 1


−1

2. Introdução à Teoria dos Números 2.5 Aritmética modular 15/1


Inversos em Zm

· m ∈ N2 , a ∈ Zm = {0, 1, · · · , m − 1}, a admite inverso em Zm sse mdc(a, m ) = 1


- o inverso de a (quando existe) é um número α ∈ Zm : a α ≡m 1; denota-se a
−1

- ⇒ a α = k × m + 1, para algum k ∈ Z

- ⇒ a α − km = 1, ⇝ a equação Diofantina linear: ax + my = 1

- ax + my = 1 tem soluções sse mdc(a , m ) | 1 sse mdc(a , m ) = 1

- a é a solução particular de x que está entre 0 e m − 1


−1

· Exemplo: o inverso de 10 em Z27 existe porque mdc(10, 27) = 1

- para o determinar vamos resolver 10 x + 27y = 1

2. Introdução à Teoria dos Números 2.5 Aritmética modular 15/1


Inversos em Zm

· m ∈ N2 , a ∈ Zm = {0, 1, · · · , m − 1}, a admite inverso em Zm sse mdc(a, m ) = 1


- o inverso de a (quando existe) é um número α ∈ Zm : a α ≡m 1; denota-se a
−1

- ⇒ a α = k × m + 1, para algum k ∈ Z

- ⇒ a α − km = 1, ⇝ a equação Diofantina linear: ax + my = 1

- ax + my = 1 tem soluções sse mdc(a , m ) | 1 sse mdc(a , m ) = 1

- a é a solução particular de x que está entre 0 e m − 1


−1

· Exemplo: o inverso de 10 em Z27 existe porque mdc(10, 27) = 1

- para o determinar vamos resolver 10 x + 27y = 1

- 27 = 2× 10 + 7 ⇔ 7 = 27 − 2 × 10
10 = 1×7+3 ⇔ 3 = 10 − 7
7 = 2×3+1 ⇔ 1 = 7−2×3

2. Introdução à Teoria dos Números 2.5 Aritmética modular 15/1


Inversos em Zm

· m ∈ N2 , a ∈ Zm = {0, 1, · · · , m − 1}, a admite inverso em Zm sse mdc(a, m ) = 1


- o inverso de a (quando existe) é um número α ∈ Zm : a α ≡m 1; denota-se a
−1

- ⇒ a α = k × m + 1, para algum k ∈ Z

- ⇒ a α − km = 1, ⇝ a equação Diofantina linear: ax + my = 1

- ax + my = 1 tem soluções sse mdc(a , m ) | 1 sse mdc(a , m ) = 1

- a é a solução particular de x que está entre 0 e m − 1


−1

· Exemplo: o inverso de 10 em Z27 existe porque mdc(10, 27) = 1

- para o determinar vamos resolver 10 x + 27y = 1

- 27 = 2 × 10 + 7 ⇔ 7 = 27 − 2 × 10
10 = 1×7+3 ⇔ 3 = 10 − 7
7 = 2×3+1 ⇔ 1 = 7−2×3
- 1 = 7 − 2 × 3 = 7 − 2 × (11 − 7) = −2 × 10 + 3 × 7

= −2 × +3 × (27 − 2 × 10) = 3 × 27−8 × 10

2. Introdução à Teoria dos Números 2.5 Aritmética modular 15/1


Inversos em Zm

· m ∈ N2 , a ∈ Zm = {0, 1, · · · , m − 1}, a admite inverso em Zm sse mdc(a, m ) = 1


- o inverso de a (quando existe) é um número α ∈ Zm : a α ≡m 1; denota-se a
−1

- ⇒ a α = k × m + 1, para algum k ∈ Z

- ⇒ a α − km = 1, ⇝ a equação Diofantina linear: ax + my = 1

- ax + my = 1 tem soluções sse mdc(a , m ) | 1 sse mdc(a , m ) = 1

- a é a solução particular de x que está entre 0 e m − 1


−1

· Exemplo: o inverso de 10 em Z27 existe porque mdc(10, 27) = 1

- para o determinar vamos resolver 10 x + 27y = 1

- 27 = 2 × 10 + 7 ⇔ 7 = 27 − 2 × 10
10 = 1×7+3 ⇔ 3 = 10 − 7
7 = 2×3+1 ⇔ 1 = 7−2×3
- 1 = 7 − 2 × 3 = 7 − 2 × (11 − 7) = −2 × 10 + 3 × 7
⇒ x0 = −8 (particular)
= −2 × +3 × (27 − 2 × 10) = 3 × 27−8 × 10

2. Introdução à Teoria dos Números 2.5 Aritmética modular 15/1


Inversos em Zm

· m ∈ N2 , a ∈ Zm = {0, 1, · · · , m − 1}, a admite inverso em Zm sse mdc(a, m ) = 1


- o inverso de a (quando existe) é um número α ∈ Zm : a α ≡m 1; denota-se a
−1

- ⇒ a α = k × m + 1, para algum k ∈ Z

- ⇒ a α − km = 1, ⇝ a equação Diofantina linear: ax + my = 1

- ax + my = 1 tem soluções sse mdc(a , m ) | 1 sse mdc(a , m ) = 1

- a é a solução particular de x que está entre 0 e m − 1


−1

· Exemplo: o inverso de 10 em Z27 existe porque mdc(10, 27) = 1

- para o determinar vamos resolver 10 x + 27y = 1

- 27 = 2 × 10 + 7 ⇔ 7 = 27 − 2 × 10
10 = 1×7+3 ⇔ 3 = 10 − 7
7 = 2×3+1 ⇔ 1 = 7−2×3
- 1 = 7 − 2 × 3 = 7 − 2 × (11 − 7) = −2 × 10 + 3 × 7
⇒ x0 = −8 (particular)
= −2 × +3 × (27 − 2 × 10) = 3 × 27−8 × 10
- x = −8 + 27k , k ∈ Z (geral) ⇝ a−1 = 19 (solução de x quando k = 1)
2. Introdução à Teoria dos Números 2.5 Aritmética modular 15/1
2.1 Divisibilidade
2.2 Números primos
2.3 mdc e mmc
2.4 Equações Diofantinas lineares
2.5 Aritmética modular
2.6 Aplicação das congruências aos algarismos de controlo
2.7 Criptograa
2.8 RSA

2. Introdução à Teoria dos Números


2.1 Divisibilidade
2.2 Números primos
2.3 mdc e mmc
2.4 Equações Diofantinas lineares
2.5 Aritmética modular
2.6 Aplicação das congruências aos algarismos de controlo
2.7 Criptograa
2.8 RSA

2. Introdução à Teoria dos Números


Cifra de César

· A=0, B=1, · · · , Z=25 (só maiúsculas, A=a=à, C=c=ç, etc.)

2. Introdução à Teoria dos Números 2.7 Criptograa 16/1


Cifra de César

· A=0, B=1, · · · , Z=25 (só maiúsculas, A=a=à, C=c=ç, etc.)

· Cifra de César: C ≡26 P + 3 , P -valor da letra original, C -valor da letra codicada

2. Introdução à Teoria dos Números 2.7 Criptograa 16/1


Cifra de César

· A=0, B=1, · · · , Z=25 (só maiúsculas, A=a=à, C=c=ç, etc.)

· Cifra de César: C ≡26 P + 3 , P -valor da letra original, C -valor da letra codicada


original A B C D E F G H I J K L M
0 1 2 3 4 5 6 7 8 9 10 11 12
3 4 5 6 7 8 9 10 11 12 13 14 15
codicado D E F G H I J K L M N O P
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
16 17 18 19 20 21 22 23 24 25 0 1 2
codicado Q R S T U V W X Y Z A B C

2. Introdução à Teoria dos Números 2.7 Criptograa 16/1


Cifra de César

· A=0, B=1, · · · , Z=25 (só maiúsculas, A=a=à, C=c=ç, etc.)

· Cifra de César: C ≡26 P + 3 , P -valor da letra original, C -valor da letra codicada


original A B C D E F G H I J K L M
0 1 2 3 4 5 6 7 8 9 10 11 12
3 4 5 6 7 8 9 10 11 12 13 14 15
codicar

codicado D E F G H I J K L M N O P
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
16 17 18 19 20 21 22 23 24 25 0 1 2
? codicado Q R S T U V W X Y Z A B C

2. Introdução à Teoria dos Números 2.7 Criptograa 16/1


Cifra de César

· A=0, B=1, · · · , Z=25 (só maiúsculas, A=a=à, C=c=ç, etc.)

· Cifra de César: C ≡26 P + 3 , P -valor da letra original, C -valor da letra codicada


original A B C D E F G H I J K L M
0 1 2 3 4 5 6 7 8 9 10 11 12 6
3 4 5 6 7 8 9 10 11 12 13 14 15

descodicar
codicar

codicado D E F G H I J K L M N O P
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
16 17 18 19 20 21 22 23 24 25 0 1 2
? codicado Q R S T U V W X Y Z A B C

2. Introdução à Teoria dos Números 2.7 Criptograa 16/1


Cifra de César

· A=0, B=1, · · · , Z=25 (só maiúsculas, A=a=à, C=c=ç, etc.)

· Cifra de César: C ≡26 P + 3 , P -valor da letra original, C -valor da letra codicada


original A B C D E F G H I J K L M
0 1 2 3 4 5 6 7 8 9 10 11 12 6
3 4 5 6 7 8 9 10 11 12 13 14 15

descodicar
codicar

codicado D E F G H I J K L M N O P
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
16 17 18 19 20 21 22 23 24 25 0 1 2
? codicado Q R S T U V W X Y Z A B C

· Para codicar mensagens (só de texto), formamos blocos de 5 letras; ignora-se espaços

2. Introdução à Teoria dos Números 2.7 Criptograa 16/1


Cifra de César

· A=0, B=1, · · · , Z=25 (só maiúsculas, A=a=à, C=c=ç, etc.)

· Cifra de César: C ≡26 P + 3 , P -valor da letra original, C -valor da letra codicada


original A B C D E F G H I J K L M
0 1 2 3 4 5 6 7 8 9 10 11 12 6
3 4 5 6 7 8 9 10 11 12 13 14 15

descodicar
codicar

codicado D E F G H I J K L M N O P
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
16 17 18 19 20 21 22 23 24 25 0 1 2
? codicado Q R S T U V W X Y Z A B C

· Para codicar mensagens (só de texto), formamos blocos de 5 letras; ignora-se espaços

- Exemplo: a codicação de A password nova é

2. Introdução à Teoria dos Números 2.7 Criptograa 16/1


Cifra de César

· A=0, B=1, · · · , Z=25 (só maiúsculas, A=a=à, C=c=ç, etc.)

· Cifra de César: C ≡26 P + 3 , P -valor da letra original, C -valor da letra codicada


original A B C D E F G H I J K L M
0 1 2 3 4 5 6 7 8 9 10 11 12 6
3 4 5 6 7 8 9 10 11 12 13 14 15

descodicar
codicar

codicado D E F G H I J K L M N O P
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
16 17 18 19 20 21 22 23 24 25 0 1 2
? codicado Q R S T U V W X Y Z A B C

· Para codicar mensagens (só de texto), formamos blocos de 5 letras; ignora-se espaços

- Exemplo: a codicação de A password nova é

DSDVV ZRUGQ RYDHZ URWVV D

2. Introdução à Teoria dos Números 2.7 Criptograa 16/1


Cifra de César

· A=0, B=1, · · · , Z=25 (só maiúsculas, A=a=à, C=c=ç, etc.)

· Cifra de César: C ≡26 P + 3 , P -valor da letra original, C -valor da letra codicada


original A B C D E F G H I J K L M
0 1 2 3 4 5 6 7 8 9 10 11 12 6
3 4 5 6 7 8 9 10 11 12 13 14 15

descodicar
codicar

codicado D E F G H I J K L M N O P
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
16 17 18 19 20 21 22 23 24 25 0 1 2
? codicado Q R S T U V W X Y Z A B C

· Para codicar mensagens (só de texto), formamos blocos de 5 letras; ignora-se espaços

- Exemplo: a codicação de A password nova é

DSDVV ZRUGQ RYDHZ URWVV D


- Exemplo: a descodicação de MDHVW XGDVW HPGKR MH? é

2. Introdução à Teoria dos Números 2.7 Criptograa 16/1


Cifra de César

· A=0, B=1, · · · , Z=25 (só maiúsculas, A=a=à, C=c=ç, etc.)

· Cifra de César: C ≡26 P + 3 , P -valor da letra original, C -valor da letra codicada


original A B C D E F G H I J K L M
0 1 2 3 4 5 6 7 8 9 10 11 12 6
3 4 5 6 7 8 9 10 11 12 13 14 15

descodicar
codicar

codicado D E F G H I J K L M N O P
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
16 17 18 19 20 21 22 23 24 25 0 1 2
? codicado Q R S T U V W X Y Z A B C

· Para codicar mensagens (só de texto), formamos blocos de 5 letras; ignora-se espaços

- Exemplo: a codicação de A password nova é

DSDVV ZRUGQ RYDHZ URWVV D


- Exemplo: a descodicação de MDHVW XGDVW HPGKR MH? é (TPC)

2. Introdução à Teoria dos Números 2.7 Criptograa 16/1


Cifra am
· Cifra am: C ≡26 aP + b , P -valor da letra original, C -valor da letra codicada

2. Introdução à Teoria dos Números 2.7 Criptograa 17/1


Cifra am
· Cifra am: C ≡26 aP + b , P -valor da letra original, C -valor da letra codicada
- a ∈ {1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25} (porquê?), b ∈ {0, · · · , 25}

2. Introdução à Teoria dos Números 2.7 Criptograa 17/1


Cifra am
· Cifra am: C ≡26 aP + b , P -valor da letra original, C -valor da letra codicada
- a ∈ {1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25} (porquê?), b ∈ {0, · · · , 25}

- cifra de César é cifra am com a = 1 e b = 3

2. Introdução à Teoria dos Números 2.7 Criptograa 17/1


Cifra am
· Cifra am: C aP + b , P -valor da letra original, C -valor da letra codicada
≡26
- a ∈ {1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25} (porquê?), b ∈ {0, · · · , 25}

- cifra de César é cifra am com a = 1 e b = 3

· Exemplo: C ≡26 5 P +8
original A B C D E F G H I J K L M
0 1 2 3 4 5 6 7 8 9 10 11 12
8 13 18 23 2 7 12 17 22 1 6 11 16
codicado I N S X C H M R W B G L Q
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
21 0 5 10 15 20 25 4 9 14 19 24 3
codicado V A F K P U Z E J O T Y D

2. Introdução à Teoria dos Números 2.7 Criptograa 17/1


Cifra am
· Cifra am: C aP + b , P -valor da letra original, C -valor da letra codicada
≡26
- a ∈ {1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25} (porquê?), b ∈ {0, · · · , 25}

- cifra de César é cifra am com a = 1 e b = 3

· Exemplo: C ≡26 5 P +8
original A +5 B C D E F G H I J K L M
0 ↷1 2 3 4 5 6 7 8 9 10 11 12
8 13 18 23 2 7 12 17 22 1 6 11 16
codicado I N S X C H M R W B G L Q
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
21 0 5 10 15 20 25 4 9 14 19 24 3
codicado V A F K P U Z E J O T Y D

2. Introdução à Teoria dos Números 2.7 Criptograa 17/1


Cifra am
· Cifra am: C aP + b , P -valor da letra original, C -valor da letra codicada
≡26
- a ∈ {1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25} (porquê?), b ∈ {0, · · · , 25}

- cifra de César é cifra am com a = 1 e b = 3

· Exemplo: C ≡26 5 P +8
original A +5 B +5 C D E F G H I J K L M
0 ↷1 ↷2 3 4 5 6 7 8 9 10 11 12
8 13 18 23 2 7 12 17 22 1 6 11 16
codicado I N S X C H M R W B G L Q
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
21 0 5 10 15 20 25 4 9 14 19 24 3
codicado V A F K P U Z E J O T Y D

2. Introdução à Teoria dos Números 2.7 Criptograa 17/1


Cifra am
· Cifra am: C aP + b , P -valor da letra original, C -valor da letra codicada
≡26
- a ∈ {1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25} (porquê?), b ∈ {0, · · · , 25}

- cifra de César é cifra am com a = 1 e b = 3

· Exemplo: C ≡26 5 P +8
original A +5 B +5 C D E F G H I J K L M
0 ↷1 ↷2 3 4 5 6 7 8 9 10 11 12
8 13 18 23 2 7 12 17 22 1 6 11 16
codicar

codicado I N S X C H M R W B G L Q
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
21 0 5 10 15 20 25 4 9 14 19 24 3
? codicado V A F K P U Z E J O T Y D

2. Introdução à Teoria dos Números 2.7 Criptograa 17/1


Cifra am
· Cifra am: C aP + b , P -valor da letra original, C -valor da letra codicada
≡26
- a ∈ {1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25} (porquê?), b ∈ {0, · · · , 25}

- cifra de César é cifra am com a = 1 e b = 3

· Exemplo: C ≡26 5 P +8
original A +5 B +5 C D E F G H I J K L M
0 ↷1 ↷2 3 4 5 6 7 8 9 10 11 12 6

descodicar
8 13 18 23 2 7 12 17 22 1 6 11 16
codicar

codicado I N S X C H M R W B G L Q
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
21 0 5 10 15 20 25 4 9 14 19 24 3
? codicado V A F K P U Z E J O T Y D

2. Introdução à Teoria dos Números 2.7 Criptograa 17/1


Cifra am
· Cifra am: C aP + b , P -valor da letra original, C -valor da letra codicada
≡26
- a ∈ {1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25} (porquê?), b ∈ {0, · · · , 25}

- cifra de César é cifra am com a = 1 e b = 3

· Exemplo: C ≡26 5 P +8
original A +5 B +5 C D E F G H I J K L M
0 ↷1 ↷2 3 4 5 6 7 8 9 10 11 12 6

descodicar
8 13 18 23 2 7 12 17 22 1 6 11 16
codicar

codicado I N S X C H M R W B G L Q
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
21 0 5 10 15 20 25 4 9 14 19 24 3
? codicado V A F K P U Z E J O T Y D

· A descodicação de uma cifra am é outra cifra am

2. Introdução à Teoria dos Números 2.7 Criptograa 17/1


Cifra am
· Cifra am: C aP + b , P -valor da letra original, C -valor da letra codicada
≡26
- a ∈ {1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25} (porquê?), b ∈ {0, · · · , 25}

- cifra de César é cifra am com a = 1 e b = 3

· Exemplo: C ≡26 5 P +8
original A +5 B +5 C D E F G H I J K L M
0 ↷1 ↷2 3 4 5 6 7 8 9 10 11 12 6

descodicar
8 13 18 23 2 7 12 17 22 1 6 11 16
codicar

codicado I N S X C H M R W B G L Q
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
21 0 5 10 15 20 25 4 9 14 19 24 3
? codicado V A F K P U Z E J O T Y D

· A descodicação de uma cifra am é outra cifra am

- Exemplo: C ≡26 5P + 8 ⇔ 5P ≡26 C − 8 ⇔ P ≡26 5−1 (C − 8)

2. Introdução à Teoria dos Números 2.7 Criptograa 17/1


Cifra am
· Cifra am: C aP + b , P -valor da letra original, C -valor da letra codicada
≡26
- a ∈ {1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25} (porquê?), b ∈ {0, · · · , 25}

- cifra de César é cifra am com a = 1 e b = 3

· Exemplo: C ≡26 5 P +8
original A +5 B +5 C D E F G H I J K L M
0 ↷1 ↷2 3 4 5 6 7 8 9 10 11 12 6

descodicar
8 13 18 23 2 7 12 17 22 1 6 11 16
codicar

codicado I N S X C H M R W B G L Q
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
21 0 5 10 15 20 25 4 9 14 19 24 3
? codicado V A F K P U Z E J O T Y D

· A descodicação de uma cifra am é outra cifra am

- Exemplo: C ≡26 5P + 8 ⇔ 5P ≡26 C − 8 ⇔ P ≡26 5−1 (C − 8)


−1
(5 × (−5) + 26 = 1 ⇒ 5 = −5 ≡26 21)

2. Introdução à Teoria dos Números 2.7 Criptograa 17/1


Cifra am
· Cifra am: C aP + b , P -valor da letra original, C -valor da letra codicada
≡26
- a ∈ {1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25} (porquê?), b ∈ {0, · · · , 25}

- cifra de César é cifra am com a = 1 e b = 3

· Exemplo: C ≡26 5 P +8
original A +5 B +5 C D E F G H I J K L M
0 ↷1 ↷2 3 4 5 6 7 8 9 10 11 12 6

descodicar
8 13 18 23 2 7 12 17 22 1 6 11 16
codicar

codicado I N S X C H M R W B G L Q
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
21 0 5 10 15 20 25 4 9 14 19 24 3
? codicado V A F K P U Z E J O T Y D

· A descodicação de uma cifra am é outra cifra am

- Exemplo: C ≡26 5P + 8 ⇔ 5P ≡26 C − 8 ⇔ P ≡26 5−1 (C − 8)


−1
(5 × (−5) + 26 = 1 ⇒ 5 = −5 ≡26 21)

⇔ P ≡26 21(C − 8) ⇔ P ≡26 21C − 168 ⇔ P ≡26 21C + 14

2. Introdução à Teoria dos Números 2.7 Criptograa 17/1


Cifra am
· Cifra am: C aP + b , P -valor da letra original, C -valor da letra codicada
≡26
- a ∈ {1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25} (porquê?), b ∈ {0, · · · , 25}

- cifra de César é cifra am com a = 1 e b = 3

· Exemplo: C ≡26 5 P +8 
original A +5 B +5 C D E F G H I J K L M
0 ↷1 ↷2 3 4 5 6 7 8 9 10 11 12 6

descodicar
8 13 18 23 2 7 12 17 22 1 6 11 16
codicar

codicado I N S X C H M R W B G L Q
original N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
21 0 5 10 15 20 25 4 9 14 19 24 3
codicado V A F K P U Z E J O T Y D
? 

· A descodicação de uma cifra am é outra cifra am

- Exemplo: C ≡26 5P + 8 ⇔ 5P ≡26 C − 8 ⇔ P ≡26 5−1 (C − 8)


−1
(5 × (−5) + 26 = 1 ⇒ 5 = −5 ≡26 21)

⇔ P ≡26 21(C − 8) ⇔ P ≡26 21C − 168 ⇔ P ≡26 21C + 14

2. Introdução à Teoria dos Números 2.7 Criptograa 17/1


Codicação de blocos de caracteres
· Codicação por blocos: codica grupos de letras por outros de igual comprimento

2. Introdução à Teoria dos Números 2.7 Criptograa 18/1


Codicação de blocos de caracteres
· Codicação por blocos: codica grupos de letras por outros de igual comprimento

- os grupos de letras podem ser xos ou variáveis

2. Introdução à Teoria dos Números 2.7 Criptograa 18/1


Codicação de blocos de caracteres
· Codicação por blocos: codica grupos de letras por outros de igual comprimento

- os grupos de letras podem ser xos ou variáveis

- a mesma letra num texto pode ser codicada em letras diferentes

2. Introdução à Teoria dos Números 2.7 Criptograa 18/1


Codicação de blocos de caracteres
· Codicação por blocos: codica grupos de letras por outros de igual comprimento

- os grupos de letras podem ser xos ou variáveis

- a mesma letra num texto pode ser codicada em letras diferentes

- o que interessa são os grupos de letras e não cada letra a codicar

2. Introdução à Teoria dos Números 2.7 Criptograa 18/1


Codicação de blocos de caracteres
· Codicação por blocos: codica grupos de letras por outros de igual comprimento

- os grupos de letras podem ser xos ou variáveis

- a mesma letra num texto pode ser codicada em letras diferentes

- o que interessa são os grupos de letras e não cada letra a codicar

- utiliza-se uma matriz n × n para (des)codifcar um grupo de n letras

2. Introdução à Teoria dos Números 2.7 Criptograa 18/1


Codicação de blocos de caracteres
· Codicação por blocos: codica grupos de letras por outros de igual comprimento

- os grupos de letras podem ser xos ou variáveis

- a mesma letra num texto pode ser codicada em letras diferentes

- o que interessa são os grupos de letras e não cada letra a codicar

- utiliza-se uma matrizn × n para (des)codifcar um grupo de n letras


- se A é a matriz de codicação, então mdc(det(A), 26) = 1

2. Introdução à Teoria dos Números 2.7 Criptograa 18/1


Codicação de blocos de caracteres
· Codicação por blocos: codica grupos de letras por outros de igual comprimento

- os grupos de letras podem ser xos ou variáveis

- a mesma letra num texto pode ser codicada em letras diferentes

- o que interessa são os grupos de letras e não cada letra a codicar

- utiliza-se uma matriz n × n para (des)codifcar um grupo de n letras


- se A é a matriz de codicação, então mdc(det(A), 26) = 1

- isso garante que existe A


−1
que é a matriz de descodicação

2. Introdução à Teoria dos Números 2.7 Criptograa 18/1


Codicação de blocos de caracteres
· Codicação por blocos: codica grupos de letras por outros de igual comprimento

- os grupos de letras podem ser xos ou variáveis

- a mesma letra num texto pode ser codicada em letras diferentes

- o que interessa são os grupos de letras e não cada letra a codicar

- utiliza-se uma matriz n × n para (des)codifcar um grupo de n letras


- se A é a matriz de codicação, então mdc(det(A), 26) = 1

- isso garante que existe A


−1
que é a matriz de descodicação

- quando o comprimento da mensagem não está de acordo com o número de grupos

que se pretende formar acrescentamos letras (como W, Y, por exemplo) que não

comprometam a mensagem

2. Introdução à Teoria dos Números 2.7 Criptograa 18/1


Codicação de blocos de caracteres
· Codicação por blocos: codica grupos de letras por outros de igual comprimento

- os grupos de letras podem ser xos ou variáveis

- a mesma letra num texto pode ser codicada em letras diferentes

- o que interessa são os grupos de letras e não cada letra a codicar

- utiliza-se uma matriz n × n para (des)codifcar um grupo de n letras


- se A é a matriz de codicação, então mdc(det(A), 26) = 1

- isso garante que existe A


−1
que é a matriz de descodicação

- quando o comprimento da mensagem não está de acordo com o número de grupos

que se pretende formar acrescentamos letras (como W, Y, por exemplo) que não

comprometam a mensagem

· Este método é mais difícil de quebrar

2. Introdução à Teoria dos Números 2.7 Criptograa 18/1


Codicação de blocos de caracteres
· Codicação por blocos: codica grupos de letras por outros de igual comprimento

- os grupos de letras podem ser xos ou variáveis

- a mesma letra num texto pode ser codicada em letras diferentes

- o que interessa são os grupos de letras e não cada letra a codicar

- utiliza-se uma matriz n × n para (des)codifcar um grupo de n letras


- se A é a matriz de codicação, então mdc(det(A), 26) = 1

- isso garante que existe A


−1
que é a matriz de descodicação

- quando o comprimento da mensagem não está de acordo com o número de grupos

que se pretende formar acrescentamos letras (como W, Y, por exemplo) que não

comprometam a mensagem

· Este método é mais difícil de quebrar

- mais ainda se os grupos de letras variam de comprimento

2. Introdução à Teoria dos Números 2.7 Criptograa 18/1


Codicação de blocos de caracteres
· Codicação por blocos: codica grupos de letras por outros de igual comprimento

- os grupos de letras podem ser xos ou variáveis

- a mesma letra num texto pode ser codicada em letras diferentes

- o que interessa são os grupos de letras e não cada letra a codicar

- utiliza-se uma matriz n × n para (des)codifcar um grupo de n letras


- se A é a matriz de codicação, então mdc(det(A), 26) = 1

- isso garante que existe A


−1
que é a matriz de descodicação

- quando o comprimento da mensagem não está de acordo com o número de grupos

que se pretende formar acrescentamos letras (como W, Y, por exemplo) que não

comprometam a mensagem

· Este método é mais difícil de quebrar

- mais ainda se os grupos de letras variam de comprimento

- haverá várias matrizes de codicação

2. Introdução à Teoria dos Números 2.7 Criptograa 18/1


Codicação de blocos de caracteres - exemplo

· Exemplo: codicação em blocos de comprimento 2; matriz codicação

2. Introdução à Teoria dos Números 2.7 Criptograa 19/1


Codicação de blocos de caracteres - exemplo
 
· Exemplo: codicação em blocos de comprimento 2; matriz codicação A= 2
−1
1
0

2. Introdução à Teoria dos Números 2.7 Criptograa 19/1


Codicação de blocos de caracteres - exemplo
 
· Exemplo: codicação em blocos de comprimento 2; matriz codicação A= 2
−1
1
0
C1 P1
    
2 1
≡26
-
C2 −1 0 P2

2. Introdução à Teoria dos Números 2.7 Criptograa 19/1


Codicação de blocos de caracteres - exemplo
 
· Exemplo: codicação em blocos de comprimento 2; matriz codicação A= 2
−1
1
0
C1 P1
    
2 1
≡26
-
C2 −1 0 P2
- vamos codicar Estes, que dividimos nos grupos ES, TE, SY (acrescentámos Y)

2. Introdução à Teoria dos Números 2.7 Criptograa 19/1


Codicação de blocos de caracteres - exemplo
 
· Exemplo: codicação em blocos de comprimento 2; matriz codicação A= 2
−1
1
0
C1 P1
    
2 1
≡26
-
C2 −1 0 P2
- vamos codicar Estes, que dividimos nos grupos ES, TE, SY (acrescentámos Y)

- ES é codicado em AW (E=4, S=18, A=0, W=22)

2. Introdução à Teoria dos Números 2.7 Criptograa 19/1


Codicação de blocos de caracteres - exemplo
 
· Exemplo: codicação em blocos de comprimento 2; matriz codicação A= 2
−1
1
0
C1 P1
    
2 1
≡26
-
C2 −1 0 P2
- vamos codicar Estes, que dividimos nos grupos ES, TE, SY (acrescentámos Y)

- ES é codicado em AW (E=4, S=18, A=0, W=22)


      
2 1 4 26 0
= ≡26
−1 0 18 −4 22

2. Introdução à Teoria dos Números 2.7 Criptograa 19/1


Codicação de blocos de caracteres - exemplo
 
· Exemplo: codicação em blocos de comprimento 2; matriz codicação A= 2
−1
1
0
C1 P1
    
2 1
≡26
-
C2 −1 0 P2
- vamos codicar Estes, que dividimos nos grupos ES, TE, SY (acrescentámos Y)

- ES é codicado em AW (E=4, S=18, A=0, W=22)


      
2 1 4 26 0
= ≡26
−1 0 18 −4 22

- TE é codicado em QH (T=19, E=4, Q=16, H=7)

2. Introdução à Teoria dos Números 2.7 Criptograa 19/1


Codicação de blocos de caracteres - exemplo
 
· Exemplo: codicação em blocos de comprimento 2; matriz codicação A= 2
−1
1
0
C1 P1
    
2 1
≡26
-
C2 −1 0 P2
- vamos codicar Estes, que dividimos nos grupos ES, TE, SY (acrescentámos Y)

- ES é codicado em AW (E=4, S=18, A=0, W=22)


      
2 1 4 26 0
= ≡26
−1 0 18 −4 22

- TE é codicado em QH (T=19, E=4, Q=16, H=7)


      
2 1 19 42 16
= ≡26
−1 0 4 −19 7

2. Introdução à Teoria dos Números 2.7 Criptograa 19/1


Codicação de blocos de caracteres - exemplo
 
· Exemplo: codicação em blocos de comprimento 2; matriz codicação A= 2
−1
1
0
C1 P1
    
2 1
≡26
-
C2 −1 0 P2
- vamos codicar Estes, que dividimos nos grupos ES, TE, SY (acrescentámos Y)

- ES é codicado em AW (E=4, S=18, A=0, W=22)


      
2 1 4 26 0
= ≡26
−1 0 18 −4 22

- TE é codicado em QH (T=19, E=4, Q=16, H=7)


      
2 1 19 42 16
= ≡26
−1 0 4 −19 7

- SY é codicado em II (S=18, Y=24, I=8)

2. Introdução à Teoria dos Números 2.7 Criptograa 19/1


Codicação de blocos de caracteres - exemplo
 
· Exemplo: codicação em blocos de comprimento 2; matriz codicação A= 2
−1
1
0
C1 P1
    
2 1
≡26
-
C2 −1 0 P2
- vamos codicar Estes, que dividimos nos grupos ES, TE, SY (acrescentámos Y)

- ES é codicado em AW (E=4, S=18, A=0, W=22)


      
2 1 4 26 0
= ≡26
−1 0 18 −4 22

- TE é codicado em QH (T=19, E=4, Q=16, H=7)


      
2 1 19 42 16
= ≡26
−1 0 4 −19 7

- SY é codicado em II (S=18, Y=24, I=8)


      
2 1 18 60 8
= ≡26
−1 0 24 −18 8

2. Introdução à Teoria dos Números 2.7 Criptograa 19/1


Codicação de blocos de caracteres - exemplo
 
· Exemplo: codicação em blocos de comprimento 2; matriz codicação A= 2
−1
1
0
C1 P1
    
2 1
≡26
-
C2 −1 0 P2
- vamos codicar Estes, que dividimos nos grupos ES, TE, SY (acrescentámos Y)

- ES é codicado em AW (E=4, S=18, A=0, W=22)


      
2 1 4 26 0
= ≡26
−1 0 18 −4 22

- TE é codicado em QH (T=19, E=4, Q=16, H=7)


      
2 1 19 42 16
= ≡26
−1 0 4 −19 7

- SY é codicado em II (S=18, Y=24, I=8)


      
2 1 18 60 8
= ≡26
−1 0 24 −18 8

- Estes é codicado em AWQHII

2. Introdução à Teoria dos Números 2.7 Criptograa 19/1


Codicação de blocos de caracteres - exemplo
 
· Exemplo: codicação em blocos de comprimento 2; matriz codicação A= 2
−1
1
0
C1 P1
    
2 1
≡26
-
C2 −1 0 P2
- vamos codicar Estes, que dividimos nos grupos ES, TE, SY (acrescentámos Y)

- ES é codicado em AW (E=4, S=18, A=0, W=22)


      
2 1 4 26 0
= ≡26
−1 0 18 −4 22

- TE é codicado em QH (T=19, E=4, Q=16, H=7)


      
2 1 19 42 16
= ≡26
−1 0 4 −19 7

- SY é codicado em II (S=18, Y=24, I=8)


      
2 1 18 60 8
= ≡26
−1 0 24 −18 8

- Estes é codicado em AWQHII


- a mensagem codicada tem comprimento diferente da mensagem original

2. Introdução à Teoria dos Números 2.7 Criptograa 19/1


Codicação de blocos de caracteres - exemplo (continuação)

· Exemplo: para descodicar AWQHII usamos matriz descodicação

2. Introdução à Teoria dos Números 2.7 Criptograa 20/1


Codicação de blocos de caracteres - exemplo (continuação)
 
−1
· Exemplo: para descodicar AWQHII usamos matriz descodicação A −1 = 0
1 2

2. Introdução à Teoria dos Números 2.7 Criptograa 20/1


Codicação de blocos de caracteres - exemplo (continuação)
 
−1
· Exemplo: para descodicar AWQHII usamos matriz descodicação A −1 = 0
1 2

- a inversa de A existe porque (mdc(det(A), 26) = 1: A −1


= (det(A))
−1
adj(A),
onde (det(A))−1 é o inverso de det(A), módulo 26

- AW é descodicado em ES (E=4, S=18, A=0, W=22)

2. Introdução à Teoria dos Números 2.7 Criptograa 20/1


Codicação de blocos de caracteres - exemplo (continuação)
 
−1
· Exemplo: para descodicar AWQHII usamos matriz descodicação A −1 = 0
1 2

- a inversa de A existe porque (mdc(det(A), 26) = 1: A −1


= (det(A))
−1
adj(A),
onde (det(A))−1 é o inverso de det(A), módulo 26

- AW é descodicado em ES (E=4, S=18, A=0, W=22)


      
0 −1 0 −22 4
= ≡26
1 2 22 44 18

2. Introdução à Teoria dos Números 2.7 Criptograa 20/1


Codicação de blocos de caracteres - exemplo (continuação)
 
−1
· Exemplo: para descodicar AWQHII usamos matriz descodicação A −1 = 0
1 2

- a inversa de A existe porque (mdc(det(A), 26) = 1: A −1


= (det(A))
−1
adj(A),
onde (det(A))−1 é o inverso de det(A), módulo 26

- AW é descodicado em ES (E=4, S=18, A=0, W=22)


      
0 −1 0 −22 4
= ≡26
1 2 22 44 18

- QH é descodicado em TE (T=19, E=4, Q=16, H=7)

2. Introdução à Teoria dos Números 2.7 Criptograa 20/1


Codicação de blocos de caracteres - exemplo (continuação)
 
−1
· Exemplo: para descodicar AWQHII usamos matriz descodicação A −1 = 0
1 2

- a inversa de A existe porque (mdc(det(A), 26) = 1: A −1


= (det(A))
−1
adj(A),
onde (det(A))−1 é o inverso de det(A), módulo 26

- AW é descodicado em ES (E=4, S=18, A=0, W=22)


      
0 −1 0 −22 4
= ≡26
1 2 22 44 18

- QH é descodicado em TE (T=19, E=4, Q=16, H=7)


      
0 −1 16 −7 19
= ≡26
1 2 7 30 4

2. Introdução à Teoria dos Números 2.7 Criptograa 20/1


Codicação de blocos de caracteres - exemplo (continuação)
 
−1
· Exemplo: para descodicar AWQHII usamos matriz descodicação A −1 = 0
1 2

- a inversa de A existe porque (mdc(det(A), 26) = 1: A −1


= (det(A))
−1
adj(A),
onde (det(A))−1 é o inverso de det(A), módulo 26

- AW é descodicado em ES (E=4, S=18, A=0, W=22)


      
0 −1 0 −22 4
= ≡26
1 2 22 44 18

- QH é descodicado em TE (T=19, E=4, Q=16, H=7)


      
0 −1 16 −7 19
= ≡26
1 2 7 30 4

- II é descodicado em SY (S=18, Y=24, I=8)

2. Introdução à Teoria dos Números 2.7 Criptograa 20/1


Codicação de blocos de caracteres - exemplo (continuação)
 
−1
· Exemplo: para descodicar AWQHII usamos matriz descodicação A −1 = 0
1 2

- a inversa de A existe porque (mdc(det(A), 26) = 1: A −1


= (det(A))
−1
adj(A),
onde (det(A))−1 é o inverso de det(A), módulo 26

- AW é descodicado em ES (E=4, S=18, A=0, W=22)


      
0 −1 0 −22 4
= ≡26
1 2 22 44 18

- QH é descodicado em TE (T=19, E=4, Q=16, H=7)


      
0 −1 16 −7 19
= ≡26
1 2 7 30 4

- II é descodicado em SY (S=18, Y=24, I=8)


      
0 −1 8 −8 18
= ≡26
1 2 8 24 24

2. Introdução à Teoria dos Números 2.7 Criptograa 20/1


Codicação de blocos de caracteres - exemplo (continuação)
 
−1
· Exemplo: para descodicar AWQHII usamos matriz descodicação A −1 = 0
1 2

- a inversa de A existe porque (mdc(det(A), 26) = 1: A −1


= (det(A))
−1
adj(A),
onde (det(A))−1 é o inverso de det(A), módulo 26

- AW é descodicado em ES (E=4, S=18, A=0, W=22)


      
0 −1 0 −22 4
= ≡26
1 2 22 44 18

- QH é descodicado em TE (T=19, E=4, Q=16, H=7)


      
0 −1 16 −7 19
= ≡26
1 2 7 30 4

- II é descodicado em SY (S=18, Y=24, I=8)


      
0 −1 8 −8 18
= ≡26
1 2 8 24 24

- AWQHII é descodicado em ESTESY

2. Introdução à Teoria dos Números 2.7 Criptograa 20/1


Codicação de blocos de caracteres - exemplo (continuação)
 
−1
· Exemplo: para descodicar AWQHII usamos matriz descodicação A −1 = 0
1 2

- a inversa de A existe porque (mdc(det(A), 26) = 1: A −1


= (det(A))
−1
adj(A),
onde (det(A))−1 é o inverso de det(A), módulo 26

- AW é descodicado em ES (E=4, S=18, A=0, W=22)


      
0 −1 0 −22 4
= ≡26
1 2 22 44 18

- QH é descodicado em TE (T=19, E=4, Q=16, H=7)


      
0 −1 16 −7 19
= ≡26
1 2 7 30 4

- II é descodicado em SY (S=18, Y=24, I=8)


      
0 −1 8 −8 18
= ≡26
1 2 8 24 24

- AWQHII é descodicado em ESTESY


- percebemos que Y não faz parte da mensagem, logo a mensagem original é Estes

2. Introdução à Teoria dos Números 2.7 Criptograa 20/1


2.1 Divisibilidade
2.2 Números primos
2.3 mdc e mmc
2.4 Equações Diofantinas lineares
2.5 Aritmética modular
2.6 Aplicação das congruências aos algarismos de controlo
2.7 Criptograa
2.8 RSA

2. Introdução à Teoria dos Números


RSA - fundamentos

· RSA: é uma cifra de chave pública

2. Introdução à Teoria dos Números 2.8 RSA 21/1


RSA - fundamentos

· RSA: é uma cifra de chave pública


- -a chave pública diz como codicar mensagem e é do conhecimento de todos

2. Introdução à Teoria dos Números 2.8 RSA 21/1


RSA - fundamentos

· RSA: é uma cifra de chave pública


- -a chave pública diz como codicar mensagem e é do conhecimento de todos

- saber codicar mensagens não implica saber descodicar mensagens

2. Introdução à Teoria dos Números 2.8 RSA 21/1


RSA - fundamentos

· RSA: é uma cifra de chave pública


- -a chave pública diz como codicar mensagem e é do conhecimento de todos

- saber codicar mensagens não implica saber descodicar mensagens

- a chave pública é da forma (n , e )

2. Introdução à Teoria dos Números 2.8 RSA 21/1


RSA - fundamentos

· RSA: é uma cifra de chave pública


- -a chave pública diz como codicar mensagem e é do conhecimento de todos

- saber codicar mensagens não implica saber descodicar mensagens

- a chave pública é da forma (n , e )


- n = p × q é produto de dois primos p e q distintos (desconhecidos)

2. Introdução à Teoria dos Números 2.8 RSA 21/1


RSA - fundamentos

· RSA: é uma cifra de chave pública


- -a chave pública diz como codicar mensagem e é do conhecimento de todos

- saber codicar mensagens não implica saber descodicar mensagens

- a chave pública é da forma (n , e )


- n = p × q é produto de dois primos p e q distintos (desconhecidos)
- ϕ(n ) = (p − 1) × (q − 1) é o número de Euler de n

2. Introdução à Teoria dos Números 2.8 RSA 21/1


RSA - fundamentos

· RSA: é uma cifra de chave pública


- -a chave pública diz como codicar mensagem e é do conhecimento de todos

- saber codicar mensagens não implica saber descodicar mensagens

- a chave pública é da forma (n , e )


- n = p × q é produto de dois primos p e q distintos (desconhecidos)
- ϕ(n ) = (p − 1) × (q − 1) é o número de Euler de n
- mdc(e , ϕ(n )) = 1

2. Introdução à Teoria dos Números 2.8 RSA 21/1


RSA - fundamentos

· RSA: é uma cifra de chave pública


- -a chave pública diz como codicar mensagem e é do conhecimento de todos

- saber codicar mensagens não implica saber descodicar mensagens

- a chave pública é da forma (n , e )


- n = p × q é produto de dois primos p e q distintos (desconhecidos)
- ϕ(n ) = (p − 1) × (q − 1) é o número de Euler de n
- mdc(e , ϕ(n )) = 1

- a chave privada é da forma (n , d ), com d o inverso de e , módulo ϕ(n )

2. Introdução à Teoria dos Números 2.8 RSA 21/1


RSA - fundamentos

· RSA: é uma cifra de chave pública


- -a chave pública diz como codicar mensagem e é do conhecimento de todos

- saber codicar mensagens não implica saber descodicar mensagens

- a chave pública é da forma (n , e )


- n = p × q é produto de dois primos p e q distintos (desconhecidos)
- ϕ(n ) = (p − 1) × (q − 1) é o número de Euler de n
- mdc(e , ϕ(n )) = 1

- a chave privada é da forma (n , d ), com d o inverso de e , módulo ϕ(n )

(que existe porque mdc(e , ϕ(n )) = 1)

2. Introdução à Teoria dos Números 2.8 RSA 21/1


RSA - fundamentos

· RSA: é uma cifra de chave pública


- -a chave pública diz como codicar mensagem e é do conhecimento de todos

- saber codicar mensagens não implica saber descodicar mensagens

- a chave pública é da forma (n , e )


- n = p × q é produto de dois primos p e q distintos (desconhecidos)
- ϕ(n ) = (p − 1) × (q − 1) é o número de Euler de n
- mdc(e , ϕ(n )) = 1

- a chave privada é da forma (n , d ), com d o inverso de e , módulo ϕ(n )

(que existe porque mdc(e , ϕ(n )) = 1)

- é preciso conhecer a decomposição n = p × q para determinar a chave privada

2. Introdução à Teoria dos Números 2.8 RSA 21/1


RSA - fundamentos

· RSA: é uma cifra de chave pública


- -a chave pública diz como codicar mensagem e é do conhecimento de todos

- saber codicar mensagens não implica saber descodicar mensagens

- a chave pública é da forma (n , e )


- n = p × q é produto de dois primos p e q distintos (desconhecidos)
- ϕ(n ) = (p − 1) × (q − 1) é o número de Euler de n
- mdc(e , ϕ(n )) = 1

- a chave privada é da forma (n , d ), com d o inverso de e , módulo ϕ(n )

(que existe porque mdc(e , ϕ(n )) = 1)

- é preciso conhecer a decomposição n = p × q para determinar a chave privada

- o segredo do RSA está na diculdade em determinar os primos p e q

2. Introdução à Teoria dos Números 2.8 RSA 21/1


RSA - fundamentos

· RSA: é uma cifra de chave pública


- -a chave pública diz como codicar mensagem e é do conhecimento de todos

- saber codicar mensagens não implica saber descodicar mensagens

- a chave pública é da forma (n , e )


- n = p × q é produto de dois primos p e q distintos (desconhecidos)
- ϕ(n ) = (p − 1) × (q − 1) é o número de Euler de n
- mdc(e , ϕ(n )) = 1

- a chave privada é da forma (n , d ), com d o inverso de e , módulo ϕ(n )

(que existe porque mdc(e , ϕ(n )) = 1)

- é preciso conhecer a decomposição n = p × q para determinar a chave privada

- o segredo do RSA está na diculdade em determinar os primos p e q

- o número n é muito grande (com 300 ou mais algarismos) e é bem escolhido de

forma a ser (idealmente) impossível determinar p e q em tempo útil

2. Introdução à Teoria dos Números 2.8 RSA 21/1


RSA - fundamentos

· RSA: é uma cifra de chave pública


- -a chave pública diz como codicar mensagem e é do conhecimento de todos

- saber codicar mensagens não implica saber descodicar mensagens

- a chave pública é da forma (n , e )


- n = p × q é produto de dois primos p e q distintos (desconhecidos)
- ϕ(n ) = (p − 1) × (q − 1) é o número de Euler de n
- mdc(e , ϕ(n )) = 1

- a chave privada é da forma (n , d ), com d o inverso de e , módulo ϕ(n )

(que existe porque mdc(e , ϕ(n )) = 1)

- é preciso conhecer a decomposição n = p × q para determinar a chave privada

- o segredo do RSA está na diculdade em determinar os primos p e q

- o número n é muito grande (com 300 ou mais algarismos) e é bem escolhido de

forma a ser (idealmente) impossível determinar p e q em tempo útil

- não existem algoritmos ecientes para obter p e q para números n tão grandes

2. Introdução à Teoria dos Números 2.8 RSA 21/1


RSA - codicação

· Codicação de mensagens (só letras e espaços)

2. Introdução à Teoria dos Números 2.8 RSA 22/1


RSA - codicação

· Codicação de mensagens (só letras e espaços)

- A=10, B=11, · · · , Z=35 (só maiúsculas, A=a=à, C=c=ç, etc.); espaço=99

2. Introdução à Teoria dos Números 2.8 RSA 22/1


RSA - codicação

· Codicação de mensagens (só letras e espaços)

- A=10, B=11, · · · , Z=35 (só maiúsculas, A=a=à, C=c=ç, etc.); espaço=99


- pré-codicação: traduzir a mensagem numa sequência de números

2. Introdução à Teoria dos Números 2.8 RSA 22/1


RSA - codicação

· Codicação de mensagens (só letras e espaços)

- A=10, B=11, · · · , Z=35 (só maiúsculas, A=a=à, C=c=ç, etc.); espaço=99


- pré-codicação: traduzir a mensagem numa sequência de números

- exemplo: início das aulas é pré-codicado em 18231812182499131028991030211028

2. Introdução à Teoria dos Números 2.8 RSA 22/1


RSA - codicação

· Codicação de mensagens (só letras e espaços)

- A=10, B=11, · · · , Z=35 (só maiúsculas, A=a=à, C=c=ç, etc.); espaço=99


- pré-codicação: traduzir a mensagem numa sequência de números

- exemplo: início das aulas é pré-codicado em 18231812182499131028991030211028

- agrupar os algarismos em blocos cujo valor é menor que n tal que:

o bloco não comece com 0

2. Introdução à Teoria dos Números 2.8 RSA 22/1


RSA - codicação

· Codicação de mensagens (só letras e espaços)

- A=10, B=11, · · · , Z=35 (só maiúsculas, A=a=à, C=c=ç, etc.); espaço=99


- pré-codicação: traduzir a mensagem numa sequência de números

- exemplo: início das aulas é pré-codicado em 18231812182499131028991030211028

- agrupar os algarismos em blocos cujo valor é menor que n tal que:

o bloco não comece com 0

o bloco não represente uma palavra do texto (o, a, etc.) ou espaço, se possível

2. Introdução à Teoria dos Números 2.8 RSA 22/1


RSA - codicação

· Codicação de mensagens (só letras e espaços)

- A=10, B=11, · · · , Z=35 (só maiúsculas, A=a=à, C=c=ç, etc.); espaço=99


- pré-codicação: traduzir a mensagem numa sequência de números

- exemplo: início das aulas é pré-codicado em 18231812182499131028991030211028

- agrupar os algarismos em blocos cujo valor é menor que n tal que:

o bloco não comece com 0

o bloco não represente uma palavra do texto (o, a, etc.) ou espaço, se possível

haja o menor número de blocos possível

2. Introdução à Teoria dos Números 2.8 RSA 22/1


RSA - codicação

· Codicação de mensagens (só letras e espaços)

- A=10, B=11, · · · , Z=35 (só maiúsculas, A=a=à, C=c=ç, etc.); espaço=99


- pré-codicação: traduzir a mensagem numa sequência de números

- exemplo: início das aulas é pré-codicado em 18231812182499131028991030211028

- agrupar os algarismos em blocos cujo valor é menor que n tal que:

o bloco não comece com 0

o bloco não represente uma palavra do texto (o, a, etc.) ou espaço, se possível

haja o menor número de blocos possível

- exemplo: chave pública (1339, 7), 1339 = 13 × 103


182 − 318 − 1218 − 249 − 913 − 1028 − 99 − 1030 − 21 − 1028

2. Introdução à Teoria dos Números 2.8 RSA 22/1


RSA - codicação

· Codicação de mensagens (só letras e espaços)

- A=10, B=11, · · · , Z=35 (só maiúsculas, A=a=à, C=c=ç, etc.); espaço=99


- pré-codicação: traduzir a mensagem numa sequência de números

- exemplo: início das aulas é pré-codicado em 18231812182499131028991030211028

- agrupar os algarismos em blocos cujo valor é menor que n tal que:

o bloco não comece com 0

o bloco não represente uma palavra do texto (o, a, etc.) ou espaço, se possível

haja o menor número de blocos possível

- exemplo: chave pública (1339, 7), 1339 = 13 × 103


182 − 318 − 1218 − 249 − 913 − 1028 − 99 − 1030 − 21 − 1028
- o agrupamento em blocos não é único

2. Introdução à Teoria dos Números 2.8 RSA 22/1


RSA - codicação

· Codicação de mensagens (só letras e espaços)

- A=10, B=11, · · · , Z=35 (só maiúsculas, A=a=à, C=c=ç, etc.); espaço=99


- pré-codicação: traduzir a mensagem numa sequência de números

- exemplo: início das aulas é pré-codicado em 18231812182499131028991030211028

- agrupar os algarismos em blocos cujo valor é menor que n tal que:

o bloco não comece com 0

o bloco não represente uma palavra do texto (o, a, etc.) ou espaço, se possível

haja o menor número de blocos possível

- exemplo: chave pública (1339, 7), 1339 = 13 × 103


182 − 318 − 1218 − 249 − 913 − 1028 − 99 − 1030 − 21 − 1028
- o agrupamento em blocos não é único

- cada bloco b é codicado num novo bloco C (b), dado por C (b) ≡n be

2. Introdução à Teoria dos Números 2.8 RSA 22/1


RSA - codicação

· Codicação de mensagens (só letras e espaços)

- A=10, B=11, · · · , Z=35 (só maiúsculas, A=a=à, C=c=ç, etc.); espaço=99


- pré-codicação: traduzir a mensagem numa sequência de números

- exemplo: início das aulas é pré-codicado em 18231812182499131028991030211028

- agrupar os algarismos em blocos cujo valor é menor que n tal que:

o bloco não comece com 0

o bloco não represente uma palavra do texto (o, a, etc.) ou espaço, se possível

haja o menor número de blocos possível

- exemplo: chave pública (1339, 7), 1339 = 13 × 103


182 − 318 − 1218 − 249 − 913 − 1028 − 99 − 1030 − 21 − 1028
- o agrupamento em blocos não é único

- cada bloco b é codicado num novo bloco C (b), dado por C (b) ≡n be
- exemplo: início das aulas é codicado em:

1053 − 267 − 780 − 907 − 330 − 1314 − 96 − 570 − 980 − 998

2. Introdução à Teoria dos Números 2.8 RSA 22/1


RSA - codicação

· Codicação de mensagens (só letras e espaços)

- A=10, B=11, · · · , Z=35 (só maiúsculas, A=a=à, C=c=ç, etc.); espaço=99


- pré-codicação: traduzir a mensagem numa sequência de números

- exemplo: início das aulas é pré-codicado em 18231812182499131028991030211028

- agrupar os algarismos em blocos cujo valor é menor que n tal que:

o bloco não comece com 0

o bloco não represente uma palavra do texto (o, a, etc.) ou espaço, se possível

haja o menor número de blocos possível

- exemplo: chave pública (1339, 7), 1339 = 13 × 103


182 − 318 − 1218 − 249 − 913 − 1028 − 99 − 1030 − 21 − 1028
- o agrupamento em blocos não é único

- cada bloco b é codicado num novo bloco C (b), dado por C (b) ≡n be
não é preciso conhecer p e q para codicar
- exemplo: início das aulas é codicado em:

1053 − 267 − 780 − 907 − 330 − 1314 − 96 − 570 − 980 − 998

2. Introdução à Teoria dos Números 2.8 RSA 22/1


RSA - descodicação

· A descodicação faz-se com a chave privada (n , d )

2. Introdução à Teoria dos Números 2.8 RSA 23/1


RSA - descodicação

· A descodicação faz-se com a chave privada (n , d )


- d é o inverso de e , módulo ϕ(n ) = (p − 1) × (q − 1)

2. Introdução à Teoria dos Números 2.8 RSA 23/1


RSA - descodicação

· A descodicação faz-se com a chave privada (n , d )


- d é o inverso de e , módulo ϕ(n ) = (p − 1) × (q − 1)
- é preciso conhecer a decomposição n = p × q para determinar d

2. Introdução à Teoria dos Números 2.8 RSA 23/1


RSA - descodicação

· A descodicação faz-se com a chave privada (n , d )


- d é o inverso de e , módulo ϕ(n ) = (p − 1) × (q − 1)
- é preciso conhecer a decomposição n = p × q para determinar d
- exemplo: a chave privada para a chave pública (1339, 7) é (1339, 175)

2. Introdução à Teoria dos Números 2.8 RSA 23/1


RSA - descodicação

· A descodicação faz-se com a chave privada (n , d )


- d é o inverso de e , módulo ϕ(n ) = (p − 1) × (q − 1)
- é preciso conhecer a decomposição n = p × q para determinar d
- exemplo: a chave privada para a chave pública (1339, 7) é (1339, 175)
7 × (175) + 1224 × (−1) = 1 ⇝ d ≡1224 175

2. Introdução à Teoria dos Números 2.8 RSA 23/1


RSA - descodicação

· A descodicação faz-se com a chave privada (n , d )


- d é o inverso de e , módulo ϕ(n ) = (p − 1) × (q − 1)
- é preciso conhecer a decomposição n = p × q para determinar d
- exemplo: a chave privada para a chave pública (1339, 7) é (1339, 175)
7 × (175) + 1224 × (−1) = 1 ⇝ d ≡1224 175

- 1053 − 267 − 780 − 907 − 330 − 1314 − 96 − 570 − 980 − 998


descodica em

182 − 318 − 1218 − 249 − 913 − 1028 − 99 − 1030 − 21 − 1028

2. Introdução à Teoria dos Números 2.8 RSA 23/1


RSA - descodicação

· A descodicação faz-se com a chave privada (n , d )


- d é o inverso de e , módulo ϕ(n ) = (p − 1) × (q − 1)
- é preciso conhecer a decomposição n = p × q para determinar d
- exemplo: a chave privada para a chave pública (1339, 7) é (1339, 175)
7 × (175) + 1224 × (−1) = 1 ⇝ d ≡1224 175

- 1053 − 267 − 780 − 907 − 330 − 1314 − 96 − 570 − 980 − 998


descodica em

182 − 318 − 1218 − 249 − 913 − 1028 − 99 − 1030 − 21 − 1028


- passamos para a sequência: 18231812182499131028991030211028

2. Introdução à Teoria dos Números 2.8 RSA 23/1


RSA - descodicação

· A descodicação faz-se com a chave privada (n , d )


- d é o inverso de e , módulo ϕ(n ) = (p − 1) × (q − 1)
- é preciso conhecer a decomposição n = p × q para determinar d
- exemplo: a chave privada para a chave pública (1339, 7) é (1339, 175)
7 × (175) + 1224 × (−1) = 1 ⇝ d ≡1224 175

- 1053 − 267 − 780 − 907 − 330 − 1314 − 96 − 570 − 980 − 998


descodica em

182 − 318 − 1218 − 249 − 913 − 1028 − 99 − 1030 − 21 − 1028


- passamos para a sequência: 18231812182499131028991030211028

- cada dois algarismos corresponde a uma letra ou a um espaço

2. Introdução à Teoria dos Números 2.8 RSA 23/1


RSA - descodicação

· A descodicação faz-se com a chave privada (n , d )


- d é o inverso de e , módulo ϕ(n ) = (p − 1) × (q − 1)
- é preciso conhecer a decomposição n = p × q para determinar d
- exemplo: a chave privada para a chave pública (1339, 7) é (1339, 175)
7 × (175) + 1224 × (−1) = 1 ⇝ d ≡1224 175

- 1053 − 267 − 780 − 907 − 330 − 1314 − 96 − 570 − 980 − 998


descodica em

182 − 318 − 1218 − 249 − 913 − 1028 − 99 − 1030 − 21 − 1028


- passamos para a sequência: 18231812182499131028991030211028

- cada dois algarismos corresponde a uma letra ou a um espaço

- obtemos INICIO DAS AULAS, i.e. início das aulas

2. Introdução à Teoria dos Números 2.8 RSA 23/1


RSA - descodicação

· A descodicação faz-se com a chave privada (n , d )


- d é o inverso de e , módulo ϕ(n ) = (p − 1) × (q − 1)
- é preciso conhecer a decomposição n = p × q para determinar d
- exemplo: a chave privada para a chave pública (1339, 7) é (1339, 175)
7 × (175) + 1224 × (−1) = 1 ⇝ d ≡1224 175

- 1053 − 267 − 780 − 907 − 330 − 1314 − 96 − 570 − 980 − 998


descodica em

182 − 318 − 1218 − 249 − 913 − 1028 − 99 − 1030 − 21 − 1028


- passamos para a sequência: 18231812182499131028991030211028

- cada dois algarismos corresponde a uma letra ou a um espaço

- obtemos INICIO DAS AULAS, i.e. início das aulas

· Conhecer a chave pública (n , e ), que permite codicar mensagens, não garante


que se conheça a chave privada (n , d ), que permite descodicar mensagens

2. Introdução à Teoria dos Números 2.8 RSA 23/1


RSA - assinaturas

· Se a chave pública é do conhecimento de todos, como é que o receptor de uma


mensagem tem a certeza que a mensagem veio do de fonte segura?

2. Introdução à Teoria dos Números 2.8 RSA 24/1


RSA - assinaturas

· Se a chave pública é do conhecimento de todos, como é que o receptor de uma


mensagem tem a certeza que a mensagem veio do de fonte segura?

- exemplo: uma empresa tem de pagar o fornecimento de material a uma fábrica

2. Introdução à Teoria dos Números 2.8 RSA 24/1


RSA - assinaturas

· Se a chave pública é do conhecimento de todos, como é que o receptor de uma


mensagem tem a certeza que a mensagem veio do de fonte segura?

- exemplo: uma empresa tem de pagar o fornecimento de material a uma fábrica

a fábrica envia os dados bancários para a empresa proceder à transferência bancária

2. Introdução à Teoria dos Números 2.8 RSA 24/1


RSA - assinaturas

· Se a chave pública é do conhecimento de todos, como é que o receptor de uma


mensagem tem a certeza que a mensagem veio do de fonte segura?

- exemplo: uma empresa tem de pagar o fornecimento de material a uma fábrica

a fábrica envia os dados bancários para a empresa proceder à transferência bancária

Como é que a empresa pode ter a certeza que esses dados vieram mesmo da fábrica?

2. Introdução à Teoria dos Números 2.8 RSA 24/1


RSA - assinaturas

· Se a chave pública é do conhecimento de todos, como é que o receptor de uma


mensagem tem a certeza que a mensagem veio do de fonte segura?

- exemplo: uma empresa tem de pagar o fornecimento de material a uma fábrica

a fábrica envia os dados bancários para a empresa proceder à transferência bancária

Como é que a empresa pode ter a certeza que esses dados vieram mesmo da fábrica?

· A empresa usa as funções Ce /De para codicar/descodicar; a fábrica usa Cf /Df

2. Introdução à Teoria dos Números 2.8 RSA 24/1


RSA - assinaturas

· Se a chave pública é do conhecimento de todos, como é que o receptor de uma


mensagem tem a certeza que a mensagem veio do de fonte segura?

- exemplo: uma empresa tem de pagar o fornecimento de material a uma fábrica

a fábrica envia os dados bancários para a empresa proceder à transferência bancária

Como é que a empresa pode ter a certeza que esses dados vieram mesmo da fábrica?

· A empresa usa as funções Ce /De para codicar/descodicar; a fábrica usa Cf /Df


- a fábrica quer enviar o bloco b de uma mensagem para a empresa

2. Introdução à Teoria dos Números 2.8 RSA 24/1


RSA - assinaturas

· Se a chave pública é do conhecimento de todos, como é que o receptor de uma


mensagem tem a certeza que a mensagem veio do de fonte segura?

- exemplo: uma empresa tem de pagar o fornecimento de material a uma fábrica

a fábrica envia os dados bancários para a empresa proceder à transferência bancária

Como é que a empresa pode ter a certeza que esses dados vieram mesmo da fábrica?

· A empresa usa as funções Ce /De para codicar/descodicar; a fábrica usa Cf /Df


- a fábrica quer enviar o bloco b de uma mensagem para a empresa

se a fábrica enviar Ce (b ), a empresa aplica De (Ce (b )) e recebe o bloco original b

2. Introdução à Teoria dos Números 2.8 RSA 24/1


RSA - assinaturas

· Se a chave pública é do conhecimento de todos, como é que o receptor de uma


mensagem tem a certeza que a mensagem veio do de fonte segura?

- exemplo: uma empresa tem de pagar o fornecimento de material a uma fábrica

a fábrica envia os dados bancários para a empresa proceder à transferência bancária

Como é que a empresa pode ter a certeza que esses dados vieram mesmo da fábrica?

· A empresa usa as funções Ce /De para codicar/descodicar; a fábrica usa Cf /Df


- a fábrica quer enviar o bloco b de uma mensagem para a empresa

se a fábrica enviar Ce (b ), a empresa aplica De (Ce (b )) e recebe o bloco original b

··· a empresa mas não tem como saber quem enviou mensagem

2. Introdução à Teoria dos Números 2.8 RSA 24/1


RSA - assinaturas

· Se a chave pública é do conhecimento de todos, como é que o receptor de uma


mensagem tem a certeza que a mensagem veio do de fonte segura?

- exemplo: uma empresa tem de pagar o fornecimento de material a uma fábrica

a fábrica envia os dados bancários para a empresa proceder à transferência bancária

Como é que a empresa pode ter a certeza que esses dados vieram mesmo da fábrica?

· A empresa usa as funções Ce /De para codicar/descodicar; a fábrica usa Cf /Df


- a fábrica quer enviar o bloco b de uma mensagem para a empresa

se a fábrica enviar Ce (b ), a empresa aplica De (Ce (b )) e recebe o bloco original b

··· a empresa mas não tem como saber quem enviou mensagem

se a fábrica enviar Ce (Df (b)), a empresa aplica Cf (De (Ce (Df (b)))) e recebe b

2. Introdução à Teoria dos Números 2.8 RSA 24/1


RSA - assinaturas

· Se a chave pública é do conhecimento de todos, como é que o receptor de uma


mensagem tem a certeza que a mensagem veio do de fonte segura?

- exemplo: uma empresa tem de pagar o fornecimento de material a uma fábrica

a fábrica envia os dados bancários para a empresa proceder à transferência bancária

Como é que a empresa pode ter a certeza que esses dados vieram mesmo da fábrica?

· A empresa usa as funções Ce /De para codicar/descodicar; a fábrica usa Cf /Df


- a fábrica quer enviar o bloco b de uma mensagem para a empresa

se a fábrica enviar Ce (b ), a empresa aplica De (Ce (b )) e recebe o bloco original b

··· a empresa mas não tem como saber quem enviou mensagem

se a fábrica enviar Ce (Df (b)), a empresa aplica Cf (De (Ce (Df (b)))) e recebe b
a empresa tem a certeza que a mensagem veio da fábrica, pois só a fábrica conhece

Df ; a empresa ao aplicar Cf (· · · ) aos blocos recebidos, obterá uma mensagem


que faz sentido

2. Introdução à Teoria dos Números 2.8 RSA 24/1

Você também pode gostar