MA14 - Aritmética Unidade 24 Resumo



Documentos relacionados
MA14 - Aritmética Unidade 4. Representação dos Números Inteiros (Sistemas de Numeração)

¹CPTL/UFMS, Três Lagoas, MS,Brasil, ²CPTL/UFMS, Três Lagoas, MS, Brasil.

UNIVERSIDADE ESTADUAL DE GOIÁS UNIDADE UNIVERSITÁRIA DE JUSSARA LICENCIATURA EM MATEMÁTICA ANA PAULA ALVES MACHADO DE LIMA

Título. Breve descrição da aula. Competência(s) desenvolvida(s) Conteúdo(s) desenvolvido(s).

Criptografia e Segurança em Redes Capítulo 9. Quarta Edição William Stallings

Nome: Paulo Eduardo Rodrigues de Oliveira Nome: Pedro Thiago Ezequiel de Andrade Nome: Rafael Lucas Gregório D'Oliveira. Rsa

Sistemas Distribuídos: Conceitos e Projeto Introdução a Criptografia e Criptografia Simétrica

Prof. Roberto Franciscatto 4º Semestre - TSI - CAFW. Free Powerpoint Templates Page 1

I Seminário sobre Segurança da Informação e Comunicações CRIPTOGRAFIA

CONCEITOS MATEMÁTICOS ENVOLVIDOS NO FUNCIONAMENTO DA CRIPTOGRAFIA RSA

Álgebra A - Aula 11 RSA

Aulas de PHP Criptografia com Cifra de César. Paulo Marcos Trentin

Resíduos Quadráticos e Fatoração: uma aplicação à criptoanálise do RSA

Assinatura Digital: problema

Criptografia e Chave Pública. Segurança da Informação

Segurança da Informação

Auditoria e Segurança da Informação GSI536. Prof. Rodrigo Sanches Miani FACOM/UFU

C R I P T O G R A F I A

Curso: Técnico de Informática Disciplina: Redes de Computadores. 1- Apresentação Binária

UNIP UNIVERSIDADE PAULISTA

Certificado Digital: Como Funciona (

O que é número primo? Série O que é?

Bases Matemáticas. Aula 2 Métodos de Demonstração. Rodrigo Hausen. v /15

Arquitetura de Rede de Computadores

Fundamentos em Informática (Sistemas de Numeração e Representação de Dados)

5 Equacionando os problemas

Contando os Pontos Números Binários

REDES DE COMPUTADORES E TELECOMUNICAÇÕES MÓDULO 13

INE Fundamentos de Matemática Discreta para a Computação

Segurança da Informação

VALE PARA 1, PARA 2, PARA 3,... VALE SEMPRE?

CRIPFTOGRAFIA ASSIMÉTRICA DE IMAGENS UTILIZANDO ALGORITMO RSA

Sistemas de Numerações.

a 1 x a n x n = b,

Conversão de Bases e Aritmética Binária

CRIPTOGRAFIA: UMA APLICAÇÃO DA MATEMÁTICA DISCRETA ATRAVÉS DA IMPLEMENTAÇÃO DA CIFRA DE CÉSAR EM VISUALG

SISTEMAS DISTRIBUIDOS. Prof. Marcelo de Sá Barbosa

Questionário de Estudo - P1 Criptografia

Introdução. Iremos procurar ver aqui alguns mecanismos de proteção mais utilizados como: criptografia e SSL. 1.0 Criptografia

1. Sistemas de numeração

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto

Aritmética Binária e. Bernardo Nunes Gonçalves

Criptografia codificar dados em informações aparentemente sem sentido pessoas não consigam ter acesso às informações que foram cifradas

Algoritmos criptográficos de chave pública

Lógica de Programação

Auditoria e Segurança de Sistemas Aula 09 Criptografia. Felipe S. L. G. Duarte Felipelageduarte+fatece@gmail.com

Segurança na Web. Programação para a Internet. Prof. Vilson Heck Junior

PROGRAMADOR JAVA. Aula 0 20 semanas. Instrutor : Léo Billi leo.billi@gmail.com

Teoria dos Números. A Teoria dos Números é a área da matemática que lida com os números inteiros, isto é, com o conjunto

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS

Material Teórico - Módulo de Divisibilidade. MDC e MMC - Parte 1. Sexto Ano. Prof. Angelo Papa Neto

INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO

Classe A: Apenas o primeiro octeto identifica a rede e os três últimos identificam os Hosts.

Por que o quadrado de terminados em 5 e ta o fa cil? Ex.: 15²=225, 75²=5625,...

FTP Protocolo de Transferência de Arquivos

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

Aula 2 Modelo Simplificado de Computador

2. Representação Numérica

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

1. NÍVEL CONVENCIONAL DE MÁQUINA

PARANÁ GOVERNO DO ESTADO

Aplicações de Combinatória e Geometria na Teoria dos Números

Dadas a base e a altura de um triangulo, determinar sua área.

O ESPAÇO NULO DE A: RESOLVENDO AX = 0 3.2

FRAÇÕES TERMOS DE UMA FRAÇÃO NUMERADOR 2 TRAÇO DE FRAÇÃO DENOMINADOR. DENOMINADOR Indica em quantas partes o todo foi dividido.

Reduções da segurança de esquemas criptográficos: Sequências de Jogos

Venda segura. Série Matemática na Escola

AULA 5 QUANTIFICADORES, PREDICADOS E VALIDADE

Vamos iniciar a nossa exploração do HTTP baixando um arquivo em HTML simples - bastante pequeno, que não contém objetos incluídos.

APLICAÇÃO REDE APLICAÇÃO APRESENTAÇÃO SESSÃO TRANSPORTE REDE LINK DE DADOS FÍSICA 1/5 PROTOCOLOS DE REDE

Conceitos básicos de criptografia

Transcrição:

MA14 - Aritmética Unidade 24 Resumo Introdução à Criptografia Abramo Hefez PROFMAT - SBM

Aviso Este material é apenas um resumo de parte do conteúdo da disciplina e o seu estudo não garante o domínio do assunto. O material completo a ser estudado encontra-se no do livro texto da disciplina: Capítulo 13 - Seções 13.2 e 13.3 Aritmética, A. Hefez, Coleção PROFMAT. Colaborou na elaboração desses resumos Maria Lúcia T. Villela. PROFMAT - SBM Aritmética - Unidade 24 - Resumo - Introdução à Criptografia slide 2/16

O Advento dos Computadores A chegada dos telégrafos e finalmente dos computadores revolucionaram a Teoria da Informação. Como os computadores utilizam códigos binários, foi preciso transformar todas as informações nesse código. Assim, nasce o American Standard Code for Information Interchange, abreviado por ASCII e significando Código Padrão Americano para o Intercâmbio de Informação. Essa codificação, desenvolvida a partir de 1960, não é um método de cifragem, ela é apenas uma tradução à linguagem binária dos símbolos mais corriqueiros. Ela atribui significados específicos aos 2 7 = 128 números binários (formados por 0 e 1) de 7 dígitos. Um grande desafio para a computação é a questão da privacidade na troca de informações e na uniformização dos padrões. Estabelecido o código ASCII, após intensa busca, em 1973, o National Bureau of Standards, órgão governamental americano, escolheu o sistema criptográfico Data Encryption Standard (DES), desenvolvido pela IBM, para ser o sistema oficial americano. PROFMAT - SBM Aritmética - Unidade 24 - Resumo - Introdução à Criptografia slide 3/16

Este sistema, utilizado até 1999, funcionava com uma distribuição de chaves simétricas. Ou seja, um número (a chave) é acertado entre duas partes para definir os parâmetros da função cifragem que é a mesma para a decifragem. Como o segredo das mensagens é garantido através da manutenção do segredo das chaves, isto criou um enorme problema logístico de distribuição de chaves, uma verdadeira operação de guerra. Hoje em dia são utilizados outros sistemas como o AES ou Skipjack. Coube a três norte americanos, Whitfield Driffie, Martin Hellman e Ralph Merkle, resolver o problema da troca de chaves entre correspondentes. É aí que começa a entrar no campo da criptografia, timidamente, mas de modo irreversível, a Teoria dos Números através da noção de congruências. PROFMAT - SBM Aritmética - Unidade 24 - Resumo - Introdução à Criptografia slide 4/16

A ideia da trinca americana João e Maria querem trocar entre si uma chave secreta por um meio de comunicação insegura, como, por exemplo, por telefone. Eles escolhem em comum acordo um par de números naturais a e m e os tornam públicos. João escolhe um outro número natural α J e o mantém secreto. Com ele, calcula o único número β J < m tal que a α J β J mod m e o envia para Maria. Maria escolhe um número natural α M, mantendo-o secreto, e com ele calcula o único número β M < m tal que a α M β M mod m e o envia para João. Em seguida, João calcula β α J M, obtendo β α J M (aα M ) α J a α Mα J α mod m, com α < m. Por sua vez, Maria calcula β α M J, obtendo β α M J (a α J ) α M a α Jα M α mod m, com α < m. PROFMAT - SBM Aritmética - Unidade 24 - Resumo - Introdução à Criptografia slide 5/16

Pronto! Está trocada a chave secreta α entre João e Maria. Portanto, são públicas as informações a, m, β J e β M e são secretas as informações: α J, que somente João conhece, α M, que somente Maria conhece, e α, que apenas João e Maria conhecem. PROFMAT - SBM Aritmética - Unidade 24 - Resumo - Introdução à Criptografia slide 6/16

Exemplo Suponhamos que João e Maria tenham escolhido de comum acordo a = 52 e m = 271. Por outro lado, João escolhe a sua chave secreta α J = 7, enquanto Maria escolhe α M = 5. Vejamos qual é a chave secreta α que ambos compartilharão. João faz o seguinte cálculo para determinar β J e enviá-lo a Maria: 52 2 2704 265 mod 271, 52 4 265 2 36 mod 271, 52 7 = 52 4 52 2 52 36 265 52 150 mod 271. Logo, β J = 150. Maria faz a seguinte conta para determinar β M e enviá-lo a João: 52 5 = 52 4 52 36 52 246 mod 271. Logo, β M = 246. PROFMAT - SBM Aritmética - Unidade 24 - Resumo - Introdução à Criptografia slide 7/16

Exemplo - Continuação Qual a chave secreta α, sabendo que β M = 246 e β J = 150? Para determinar a chave α, João tem que reduzir β α J M = 2467 módulo 271. Logo, 246 2 = 60 516 83 mod 271, 246 4 = 246 2 246 2 83 83 114 mod 271, 246 7 = 246 4 246 2 246 114 83 246 33 mod 271. João encontra então α = 33. Agora é a vez de Maria calcular o resíduo de β α M J = 150 5 módulo 271. Mas, 150 2 = 22500 7 mod 271, 150 5 = 150 2 150 2 150 = 7 7 150 33 mod 271, encontrando também, como era de se esperar, α = 33. PROFMAT - SBM Aritmética - Unidade 24 - Resumo - Introdução à Criptografia slide 8/16

O sucesso deste método reside no fato de ser difícil descobrir qualquer dos três números α J, α M ou α, conhecendo apenas os dados públicos a, m, β J e β M. Este sistema denominado DHM, em homenagem aos seus inventores, foi o primeiro passo na direção da solução do problema da distribuição de chaves. O sistema, porém, tem um grande defeito, pois serve apenas para a troca de chaves secretas entre dois indivíduos de cada vez e isso em um mundo globalizado é totalmente insatisfatório. Ocorreu então a Driffie a ideia de considerar sistemas com chaves assimétricas, ou seja, cada usuário teria duas chaves, uma pública para cifragem e outra privada para decifrar as mensagens recebidas. PROFMAT - SBM Aritmética - Unidade 24 - Resumo - Introdução à Criptografia slide 9/16

A cifragem deve ser um processo fácil de fazer usando a chave pública, enquanto que a decifragem deveria ser quase impossível de se fazer sem a chave secreta. Assim, se João quer enviar uma mensagem para Maria, ele usaria a chave pública de Maria para cifrar a mensagem que ninguém em princípio, exceto Maria, conseguiria decifrar, pois é a única a possuir a chave secreta para tal. Driffie não conseguiu implementar a sua ideia na prática, mas a publicou para que outros pudessem resolver o problema. Foram Ronald Rivest, Adi Shamir e Leonard Adleman, do Laboratório de Ciência da Informação do Massachusetts Institute of Technology (MIT), que deram em 1978 o passo decisivo para a implementação do primeiro sistema criptográfico com chaves assimétricas, idealizado por Driffie. PROFMAT - SBM Aritmética - Unidade 24 - Resumo - Introdução à Criptografia slide 10/16

A Grande Revolução: O Sistema RSA O princípio baseia-se na relativa facilidade em encontrar números primos grandes e ao mesmo tempo na enorme dificuldade prática em fatorar o produto de dois tais números, além do uso de propriedades relativamente elementares da Teoria dos Números, como a variante do Teorema de Euler dada na Proposição 10.9 Vamos aos detalhes matemáticos dessa descoberta. Recordando, estamos à procura de um sistema criptográfico com duas chaves, uma pública e outra privada para que qualquer pessoa possa cifrar uma mensagem previamente codificada em ASCII e somente o seu legítimo destinatário possa decifrá-la. Suponhamos, então, que João queira criar um sistema criptográfico em que qualquer pessoa possa lhe enviar uma mensagem cifrada segundo uma chave pública e que ele e somente ele possa decifrá-la com a sua chave secreta. PROFMAT - SBM Aritmética - Unidade 24 - Resumo - Introdução à Criptografia slide 11/16

João escolhe dois números primos distintos p e q muito grandes e efetua o seu produto m = pq. Note que é fácil calcular o número m, mas é extremamente difícil e computacionalmente muito demorado desfazer esta operação, ou seja, fatorar m. Em seguida, João escolhe um par de números α e β tais que αβ 1 mod ϕ(m). Note que obrigatoriamente (α, ϕ(m)) = (β, ϕ(m)) = 1. Ele pode escolher inicialmente α tal que (α, ϕ(m)) = 1 e em seguida resolver a congruência αx 1 mod ϕ(m). João então torna públicos os números m e β, que são a chave pública. A chave secreta de João são os primos p e q, os números ϕ(m) = (p 1)(q 1) e α. PROFMAT - SBM Aritmética - Unidade 24 - Resumo - Introdução à Criptografia slide 12/16

Dado um número x < m, que pode ser a representação decimal de um símbolo ASCII, ou de uma sequência de símbolos ASCII, vistos como um número na base 2, a codificação feita por Maria ou por qualquer outra pessoa que conheça a chave pública de João (m, β), pode cifrar x como segue: Maria acha o único C(x) < m tal que x β C(x) mod m. Maria então envia C(x) para João. João ao receber C(x) usa a sua chave privada α para achar o número D(C(x)) < m tal que C(x) α D(C(x)) mod m. PROFMAT - SBM Aritmética - Unidade 24 - Resumo - Introdução à Criptografia slide 13/16

Note que somente João consegue determinar D(C(x)), pois só ele detém a chave α. Mas, D(C(x)) = x, pois existe k N tal que αβ = 1 + kϕ(m) e, pela Proposição 10.9, temos que D(C(x)) C(x) α (x β ) α = x αβ = x kϕ(m)+1 x mod m, e ambos D(C(x)) e x são menores do que m. Como funciona? O leitor atento poderia objetar com razão que se Maria apenas cifrasse cada número correspondente a um símbolo na codificação ASCII, a quebra do sistema seria imediata, pois qualquer pessoa poderia calcular os C(x) ao variar x na tabela do código ASCII e com a correspondência (em geral não biunívoca) x C(x) poderia com uma análise de frequência na mensagem cifrada descobrir os x a partir de suas imagens C(x). PROFMAT - SBM Aritmética - Unidade 24 - Resumo - Introdução à Criptografia slide 14/16

Esta fragilidade é resolvida do seguinte modo: Maria primeiro traduz a mensagem para o código ASCII escrevendo a mensagem traduzida de modo corrido, utilizando a sequência 0100000 para representar o espaço entre palavras. Obtém-se assim uma longa sequência de 0 e 1. Corta-se então esta longa sequência em uma sucessão x 1, x 2,... x r de sequências de comprimentos arbitrários e variáveis, nenhuma iniciando com 0 e de modo que o número na base 2 representado por cada x i seja menor do m. A restrição de x i não iniciar com zero é para poder recuperar uma sequência a partir do número que ela representa e de cada x i ser menor do que m é para garantir que ele não se altera quando reduzido mod m. Em seguida, Maria calcula C(x 1 ), C(x 2 ),..., C(x r ) e os envia para João. PROFMAT - SBM Aritmética - Unidade 24 - Resumo - Introdução à Criptografia slide 15/16

Por sua vez, João calcula D(C(x 1 )) = x 1, D(C(x 2 )) = x 2,..., D(C(x r )) = x r e os enfileira de modo corrido. Em seguida separa o texto em sequências de 7 dígitos e os reconverte de ASCII para caracteres comuns e eis que aparece a mensagem que Maria queria enviar para João. É genial de tão simples! Mas não se engane, para pôr isto em funcionamento há muitas contas a serem feitas e isso só é possível com o uso de um computador. É também necessário ter acesso a números primos muito grandes e escolher com certo critério as chaves do sistema. PROFMAT - SBM Aritmética - Unidade 24 - Resumo - Introdução à Criptografia slide 16/16