Introdução a Criptografia Carlos Sampaio. Agenda Visão Geral de Criptografia Visão Geral de...
Transcript of Introdução a Criptografia Carlos Sampaio. Agenda Visão Geral de Criptografia Visão Geral de...
Introdução a Criptografia Introdução a Criptografia Carlos SampaioCarlos Sampaio
AgendaAgenda
Visão Geral de CriptografiaVisão Geral de Criptografia Conceitos BásicosConceitos Básicos História e evoluçãoHistória e evolução
Técnicas Básicas Técnicas Básicas Transposição, Substituição e ChavesTransposição, Substituição e Chaves
Cifras ClássicasCifras Clássicas César e VigenèreCésar e Vigenère
Criptografia SimétricaCriptografia Simétrica DES e 3DESDES e 3DES
EsteganografiaEsteganografia
IntroduçãoIntrodução
CriptologiaCriptologia (kriptos = escondido, oculto; logo (kriptos = escondido, oculto; logo = estudo, ciência): É a ciência que reúne a = estudo, ciência): É a ciência que reúne a criptografia e a criptoanálise.criptografia e a criptoanálise. CriptografiaCriptografia (kriptos = escondido, oculto; grapho (kriptos = escondido, oculto; grapho
= grafia, escrita): É a técnica que habilita a escrita = grafia, escrita): É a técnica que habilita a escrita em cifras, de forma que apenas o destinatário a em cifras, de forma que apenas o destinatário a decifre e compreendadecifre e compreenda
CriptoanáliseCriptoanálise (kriptos = escondido, oculto; analisis (kriptos = escondido, oculto; analisis = decomposição, interpretação): É a técnica que = decomposição, interpretação): É a técnica que compreende a decomposição de uma senha ou compreende a decomposição de uma senha ou interpretar mensagens cifradas sem o interpretar mensagens cifradas sem o conhecimento da chave. Uma tentativa de conhecimento da chave. Uma tentativa de criptoanálise é considerado um ataquecriptoanálise é considerado um ataque
OrigensOrigens
Tão antiga quanto a própria escritaTão antiga quanto a própria escrita Presente nos Presente nos hieróglifos hieróglifos EgípciosEgípcios Os Romanos transmitiam planos de batalha Os Romanos transmitiam planos de batalha
em códigos secretosem códigos secretos A tecnologia manteve-se a mesma até o A tecnologia manteve-se a mesma até o
advento do computador (meados do século advento do computador (meados do século XX)XX)
Crescimento exponencial se deu com o Crescimento exponencial se deu com o advento do computadoradvento do computador
Bastante utilizado na II Guerra Mundial, que Bastante utilizado na II Guerra Mundial, que deu início a Ciência da Criptologia Modernadeu início a Ciência da Criptologia Moderna
Alguns ExemplosAlguns Exemplos
Por que utilizar Por que utilizar criptografia?criptografia?
UtilizaçãoUtilização
Para garantir e reforçar os aspectos de Para garantir e reforçar os aspectos de segurança de:segurança de: SigiloSigilo IntegridadeIntegridade AutenticaçãoAutenticação Não-repúdioNão-repúdio IrrefutabilidadeIrrefutabilidade
DefiniçõesDefinições
Cifrar ou CodificarCifrar ou Codificar Ato de tranformar dados em alguma forma Ato de tranformar dados em alguma forma
ilegívelilegível Propósito: garantir a privacidade, Propósito: garantir a privacidade,
mantendo a informação incompreensível mantendo a informação incompreensível para pessoas não autorizadas, mesmo que para pessoas não autorizadas, mesmo que estas tenham acesso aos dados cifradosestas tenham acesso aos dados cifrados
Decifrar ou DecodificarDecifrar ou Decodificar Processo inverso ao de cifrar, consiste em Processo inverso ao de cifrar, consiste em
retornar a informação a sua forma legívelretornar a informação a sua forma legível
CuriosidadesCuriosidades
Code TalkersCode Talkers O exército Americano utilizou nativos de O exército Americano utilizou nativos de
várias nações indígenas para o envio de várias nações indígenas para o envio de mensagens (línguas nativas): mensagens (línguas nativas): Commanches, Choctaws, Kiowas, Commanches, Choctaws, Kiowas, Winnebagos, Seminoles, Navajos, Hopis e Winnebagos, Seminoles, Navajos, Hopis e Cherokees.Cherokees.
A marinha se baseou no mesmo trabalho e A marinha se baseou no mesmo trabalho e aperfeiçoou o sistema utilizando apenas aperfeiçoou o sistema utilizando apenas NavajosNavajos
Técnicas BásicasTécnicas Básicas
TransposiçãoTransposição – Cifra de transposição – Cifra de transposição (conhecida como cifra de permutação), (conhecida como cifra de permutação), reorganiza a ordem dos bits, caracteres reorganiza a ordem dos bits, caracteres ou blocos de caracteres.ou blocos de caracteres.
SubstituiçãoSubstituição – Cifra de substituição troca – Cifra de substituição troca os bits, caracteres ou blocos de os bits, caracteres ou blocos de caracteres por outros (uma letra é caracteres por outros (uma letra é trocada por outra, por exemplo). Um trocada por outra, por exemplo). Um exemplo clássico é a cifra de Cesar, que exemplo clássico é a cifra de Cesar, que substitui as letras avançando “três” substitui as letras avançando “três” casas dentro do alfabetocasas dentro do alfabeto
ConceitoConceito
Texto Plano (Claro)
Chave (Segredo)
Texto Cifrado
Cifras ClássicasCifras Clássicas
Cifra de César:Cifra de César:
O Imperador Júlio César utilizou em O Imperador Júlio César utilizou em suas correspondências pessoais em 50 a.c.suas correspondências pessoais em 50 a.c.
Atualmente denomina-se César toda cifra que Atualmente denomina-se César toda cifra que consiste em deslocar cada letra da mensagem consiste em deslocar cada letra da mensagem original, por um número fixo de posiçõesoriginal, por um número fixo de posições
Também tem registro de utilização na Guerra Também tem registro de utilização na Guerra da Secessão americana, e pelo exército Russo da Secessão americana, e pelo exército Russo na I Guerra Mundial (1915)na I Guerra Mundial (1915)
Cifra de CésarCifra de César
ABCDEFGHIJKLMNOPQRSTUVWXYZ
NOPQRSTUVWXYZABCDEFGHIJKLM
rotate 13 positions
O BUNITAO DAS TAPIOCAS
B OHAVGNB QNF GNCVBPNF
Texto Claro
Chave
Texto Cifrado
13
Exemplo de utilização com cifra de César
http://www.sccs.swarthmore.edu/users/03/julieg/hw14cipher.html
Cifra de Cifra de VigenèreVigenère
Evolução da cifra de CésarEvolução da cifra de César Usa uma série de cifras de César Usa uma série de cifras de César
diferentes, baseado nas letras de uma diferentes, baseado nas letras de uma chave secreta chave secreta
Originalmente descrita por Originalmente descrita por Giovan Giovan Batista BelasoBatista Belaso, em 1553, em 1553
Reinventada diversas vezes depois, foi Reinventada diversas vezes depois, foi erroneamente atribuída a erroneamente atribuída a Blaise de Blaise de VigenèreVigenère, já no século IXX como:, já no século IXX como:
Le Chiffre IndéchiffrableLe Chiffre Indéchiffrable
Cifra de VigenèreCifra de Vigenère
ABCDEFGHIJKLMNOPQRSTUVWXYZBCDEFGHIJKLMNOPQRSTUVWXYZACDEFGHIJKLMNOPQRSTUVWXYZABDEFGHIJKLMNOPQRSTUVWXYZABCEFGHIJKLMNOPQRSTUVWXYZABCDFGHIJKLMNOPQRSTUVWXYZABCDEGHIJKLMNOPQRSTUVWXYZABCDEFHIJKLMNOPQRSTUVWXYZABCD...
SOUND THE RETREAT
DEADFED
VSUPC XKG UEWWEX
Texto Plano
Chave
Texto Cifrado
Rail FenceRail Fence
Exemplo de cifra de transposiçãoExemplo de cifra de transposição
O texto é escrito de forma vertical, no O texto é escrito de forma vertical, no número de linhas (número de linhas (FenceFence) ditado pela ) ditado pela chave.chave.
Exemplo: Exemplo: Chave = 5;Chave = 5; Texto Plano Texto Plano ““AGORA DURMA COM UMA BRONCA DESSAAGORA DURMA COM UMA BRONCA DESSA”” Texto CifradoTexto Cifrado““ADCA CSGUO BAA ORM RDWRM UO EXA AMNSYADCA CSGUO BAA ORM RDWRM UO EXA AMNSY””
ChavesChaves
Constituem o segredo compartilhado Constituem o segredo compartilhado por remetente e destinatáriopor remetente e destinatário
São utilizadas pelo algoritmo de São utilizadas pelo algoritmo de criptografia para gerar texto cifradocriptografia para gerar texto cifrado
Verdades GeraisVerdades Gerais Chaves maiores geram cifras melhoresChaves maiores geram cifras melhores Chaves aleatórias geram cifras melhoresChaves aleatórias geram cifras melhores Boas Cifras geram texto cifrado “aleatório” Boas Cifras geram texto cifrado “aleatório” As melhores chaves são utilizadas uma As melhores chaves são utilizadas uma
única vezúnica vez
Criptografia SimétricaCriptografia Simétrica
Exemplos:Exemplos: DES, 3DES, RC4, RC5, IDEA, SkipJackDES, 3DES, RC4, RC5, IDEA, SkipJack Vantagens: Rápido, texto cifrado seguroVantagens: Rápido, texto cifrado seguro Desvantagens: Desvantagens: Problema da divulgação de Problema da divulgação de
senhas, Problema do sigilo da senhasenhas, Problema do sigilo da senha
DES: Data Encryption DES: Data Encryption StandardStandard
Amplamente publicado e utilizado (Padrão Amplamente publicado e utilizado (Padrão Federal)Federal)
Série complexa de operações simples de Série complexa de operações simples de substituições, permutações e substituições, permutações e recombinações de bitsrecombinações de bits
DES Básico: Chaves de 56-bitsDES Básico: Chaves de 56-bits Quebrável em 12 horas com hardware Quebrável em 12 horas com hardware
específicoespecífico Triple DES (3DES): Chaves de 112-bits (real)Triple DES (3DES): Chaves de 112-bits (real)
Usa 48 “rodadas” de DESUsa 48 “rodadas” de DES Inquebrável pelos métodos utilizados Inquebrável pelos métodos utilizados
atualmenteatualmente
EsteganografiaEsteganografia
É a Técnica(Arte) de escrever mensagens É a Técnica(Arte) de escrever mensagens escondidas de tal forma que ninguém alem escondidas de tal forma que ninguém alem do destinatário desconfie do conteúdodo destinatário desconfie do conteúdo
Em grego significa Escrita Em grego significa Escrita Oculta/EscondidaOculta/Escondida
Leonardo Da Vinci escreveu com suco de Leonardo Da Vinci escreveu com suco de limão no verso de seus projetoslimão no verso de seus projetos
Atualmente pode-se inserir qualquer tipo Atualmente pode-se inserir qualquer tipo de dado dentro de um outro arquivo de de dado dentro de um outro arquivo de foto ou música, por exemplo foto ou música, por exemplo
EsteganografiaEsteganografia
Softwares disponíveis:Softwares disponíveis: HidermanHiderman SPAM Mimic: SPAM Mimic: www.spammimic.comwww.spammimic.com SteganousSteganous Invisible SecretsInvisible Secrets
Para Detecção (Steganalisis)Para Detecção (Steganalisis) Kurtosis (Análise de Histograma, Kurtosis (Análise de Histograma,
repetições)repetições) WinHEXWinHEX Checksum (Antes do incidente)Checksum (Antes do incidente)