Download - Unidade 3 criptogradia
SRC SRC (Segurança em Redes de (Segurança em Redes de Computadores)Computadores)
Tecnologia em Redes de ComputadoresProf. Esp. Juan Carlos Oliveira LamarãoJunho - 2016
AgendaAgenda
3. Introdução à CriptografiaTermos e Definições
Princípios Básicos
Criptografia Antiga
Criptografia Simétrica
Criptografia Assimétrica
Hash
Esteganografia
Testes de Criptografia
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 3
INTRODUÇÃO À CRIPTOGRAFIA
Unidade 3
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 4
TERMOS E DEFINIÇÕES E PRINCÍPIOS BÁSICOS
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 5
DefiniçãoDefinição
Do vocabulário grego κρυπτογράφηση (kryptográfisi), tem o significado de “Kryptós” oculto e “Graphein” escrita. Escrita oculta, escrita secreta.
Criptografia é o estudo a aplicação de técnicas para comunicação e armazenamento seguro de dados em sistemas computacionais.
Ex.: Cifra de Cesar
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 6
Termos que serão utilizados ao decorrer Termos que serão utilizados ao decorrer da aulada aula
Texto plano /puro: Dados não-encriptados.
Texto cifrado: Dados encriptados.
Chave (Key): Dados utilizados para encriptar um texto plano, ou desencriptar um texto cifrado.
Algorítimo de criptografia: Método matemático empregado para encriptar / desencriptar dados com o uso das chaves de criptografia (também chamado de cifra).
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 7
Princípios BásicosPrincípios Básicos
Encriptação é a conversão de dados legíveis para um formato ilegível (texto cifrado) por pessoas não-autorizadas, usando uma chave e um algoritmo criptográfico.
Seu objetivo é proteger a privacidade ao armazenarmos dados ou trocarmos informações com outras pessoas.
O receptor da mensagem encriptada pode decriptá-la e ler seu conteúdo, no formato original (texto plano).
Desencriptação é o processo inverso da encriptação, ou seja, a transformação de dados encriptados (ilegíveis) em dados legíveis, usando uma chave e um algorítimo criptográfico (cifra).
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 8
Princípios BásicosPrincípios Básicos
Criptoanalise é o processo de transformação de dados cifrados (encriptados) em dados legíveis (decriptados) sem que se conheça a chave de encriptação.
Trata-se de “quebrar” a encriptação dos dados para obter acesso ao conteúdo das mensagens.
Porem com o intuito de descobrir falhas nos algoritmos para torná-los mais seguros, validá-los ou descartá-los.
Ex.: Criptografia WEP.
Os algorítimos devem conceder Autenticação, integridade e Confidencialidade.
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 9
Princípios BásicosPrincípios Básicos
A Autenticação assegura que a mensagem foi realmente originada pelo remetente, e não por outra pessoa.
Integridade diz respeito ao conteúdo das informações trocadas entre transmissor e receptor.
Deve-se garantir que o conteúdo da mensagem chegue íntegro a seu destino, ou seja, que não seja alterado de nenhuma forma no meio do caminho.
Confidencialidade significa que a informação não está disponível para pessoas e processos que não tenham autorização para acessá-las e utilizá-las.
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 10
Princípios BásicosPrincípios Básicos
No caso das chaves (tanto simétrica, quanto Assimétrica), o nível de segurança de uma criptografia é medido no número de bits, ou seja, quanto mais bits forem usados, mais difícil será quebrar a criptografia na força bruta.
Ex: Se tivermos uma criptografia de 10 bits, existirão apenas 2¹º (ou 1024) chaves, porém, ao usarmos 64 bits, o número de chaves possíveis subirá para aproximadamente 20 x 10^18 chaves, um número alto até mesmo para um computador.
● 20.000.000.000.000.000.000
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 11
CRIPTOGRAFIA ANTIGA
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 12
Criptografia AntigaCriptografia Antiga
Além da cifra de César, outras tipos de criptografias eram utilizadas antigamente (e ainda são usadas até os dias de hoje) para se ocultar uma informação.
● Cifra Polialfabética
● Cifra de Chave única
● Gerando números aleatórios
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 13
CRIPTOGRAFIA SIMÉTRICA
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 14
Mensagem(Texto Plano)
Criptografia de chave PrivadaCriptografia de chave Privada
Este tipo de criptografia utiliza uma única chave.
O emissor utiliza essa chave para encriptar a mensagem, e o receptor utiliza a mesma chave para decriptá-la (chave compartilhada – shared key).
Por utilizar a mesma chave na encriptação e decriptação, trata-se de uma técnica de Criptografia Simétrica.
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 15
Mensagem(Texto Plano)
Mensagem(Texto Encriptado)
Chave
Privad
aCha
ve
Privad
a
Emissor Receptor
Algoritmos mais conhecidos e Algoritmos mais conhecidos e “Desvantagem”“Desvantagem”● DES (56 bits, o que corresponde a cerca de 72 quadrilhões de
chaves diferentes)
● 3DES
● Blowfish
● RC (com chaves que vão de 8 à 1024 bits)
● AES
● OTP (One-Time-Pad)
● A chave Simétrica apresenta alguns problemas graves, tais como a necessidade da troca constante dessas chaves
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 16
CRIPTOGRAFIA ASSIMÉTRICA
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 17
Mensagem(Texto Plano)
Criptografia de chave PúblicaCriptografia de chave Pública
Neste tipo de criptografia usamos duas chaves distintas, de modo a obtermos comunicação segura através de canais de comunicação inseguros.
Trata-se de uma técnica de Criptografia Assimétrica pelo fato de usar um par de chaves diferentes.
Uma chave pública, e uma privada
Cada pessoa que irá utilizar este meio de criptografia possui uma chave pública e uma chave privada.
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 18
Mensagem(Texto Plano)
Mensagem(Texto Encriptado)
Chave
Privad
aChav
e
Pública
Emissor Receptor
Mensagem(Texto Plano)
Criptografia de chave PúblicaCriptografia de chave Pública
A chave privada é secreta, e só o proprietário a conhece, ao passo que a chave pública é compartilhada com todos que participaram desta troca de informações.
Exemplo:
João quer se comunicar com Maria de forma segura. Então, João encripta a mensagem com a chave pública de Maria, de modo que a mensagem só pode ser aberta usando-se a chave privada de Maria – que só ela possui
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 19
Mensagem(Texto Plano)
Mensagem(Texto Encriptado)
Chave
Privad
aChav
e
Pública
Emissor Receptor
Algoritmos mais conhecidos e Algoritmos mais conhecidos e “Desvantagem”“Desvantagem”● RSA (consiste na multiplicação de 2 números primos muito grandes
para a geração de um terceiro número. Para quebrar essa criptografia, seria necessário a fatoração desse número para encontrar os 2 números primos que o geraram, porém, para isso é necessário um poder muito alto de processamento, o que acaba inviabilizando a tarefa)
● GPG
● ElGamal
● A utilização de algoritmos reversos para desencriptação de mensagens acaba por elevar o tempo computacional dos algoritmos de criptografia assimétrica, tornando inviável o seu uso em uma comunicação intensa.
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 20
HASH
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 21
Funções de Funções de HashHash
A técnica de Hash não utiliza uma chave como as técnicas vistas anteriormente. Se utiliza um valor de hash de tamanho fixo, o qual é computado sobre o texto plano.
Sua funcionalidade é voltada para verificar a integridade dos dados a fim de garantir que não tenham sido indevidamente alterados.
Verificações de senha podem usar funções de Hash também.
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 22
Esta aulaé muito
interessante
CB44 125AF7D3 8EB3
Função deHash
Criptográfico
Funções de Funções de HashHash mais utilizadas mais utilizadas
● MD5
● SHA1
● SHA2
● Gerando hash md5 para textos (senhas)
echo -n ‘texto’ | md5sum
62059a74e9330e9dc2f537f712b8797c
● Gerando hash md5 para arquivos
md5sum arquivo.txt
e87fbe80a6b7c57bd965145ebb4a6f96
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 23
ESTEGANOGRAFIA
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 24
Exploração de VulnerabilidadesExploração de Vulnerabilidades
O termo esteganografia deriva do grego, em que estegano significa “esconder ou mascarar”, e grafia, “escrita”. Assim, esse termo pode ser definido como a arte de esconder informações, tornando-as ocultas.
Muitas técnicas esteganográficas, por exemplo, escondem dados dentro de arquivos. Seu principal objetivo é que esses dados não sejam percebidos por terceiros; ou seja, a presença de mensagens escondidas dentro de arquivos é simplesmente desconhecida.
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 25
Exploração de VulnerabilidadesExploração de Vulnerabilidades
A esteganografia utiliza dois arquivos: a mensagem e o portador (Carrier)
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 26
Arquivonormal
Arquivo commensagem oculta
Texto a serEscondido, ou
arquivo a ser escondido
FunçãoEsteganográfica
Ferramentas de EsteganografiaFerramentas de Esteganografia
● OpenPuff
● Steghide
● Image Steganography
● Crypture
● rSteg
● OpenStego
● Hide & View
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 27
Aplicação StegHideAplicação StegHide
Aceitando formatos como JPEG, BMP, WAV e AU, o StegHide prove serviços de steganografia para ambientes Linux.
Para instalar:
apt-get install steghide
Sintaxe:
steghide AÇÃO ARGUMENTOS
Ex.: steghide info ARQUIVO
steghide embed -ef texto.txt -cf imagem.jpeg
steghide extract -sf imagem.jpeg
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 28
TESTES DE CRIPTOGRAFIA
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 29
GNUGP
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 30
GnuPGGnuPG
Permitindo Criptografia de Dados, Assinatura Digital, Gerenciamento de chaves de criptografia este aplicativo será utilizado para demonstrar uma criptografia simétrica padrão CAST5.
sudo apt-get install gpgpgp
Com o GnuPG é possível criptografar qualquer arquivo.
Sintaxe:
gpg -c arquivo
gpg arquivo.gpg
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 31
RAINBOW TABLES
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 32
Ataques a hashesAtaques a hashes
Existem algumas técnicas de ataques a hashes, sendo as mais comuns as seguintes:
● Força Bruta
● Dicionário
● Colisão
● Aniversário
● Rainbow Tables
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 33
Rainbow TablesRainbow Tables
É uma espécie de tabela que contém milhões (ou bilhões) de hashes pré-calculados e as strings (senhas) que os originaram. Sendo otimizada para armazenar hashes e senhas, permitindo pesquisar entradas de forma muito veloz.
São usadas, basicamente, para quebrar hashes de senhas.
md5encryption.com → para criar um hash MD5
hashkiller.co.uk → Rainbow Table online
Faculdade de Tecnologia do Amapá - METACurso de Tecnologia em Redes de Computadores - [email protected] Página 34