O documento apresenta uma série de aulas sobre criptografia ministradas no Campus Charqueadas. Aborda conceitos básicos como definição de criptografia, tipos de criptografia simétrica e assimétrica, funções hash e uma breve história da evolução da criptografia ao longo dos séculos.
3. 3AULA :
Campus Charqueadas
Criptografia
• A palavra criptografia vem do Grego Kryptós (escondido)
e gráphein (escrita).
• É um ramo da matemática.
• É o estudo do princípios e técnicas que transformam
informação em dados ilegíveis, de forma a dificultar e até
mesmo impedir que outras pessoas tenham acesso a
informação original.
4. 4AULA :
Campus Charqueadas
Criptografia
• Baseia-se em quatro dos princípios da segurança da
informação:
– Confidencialidade
– Integridade
– Autenticação
– Não-repúdio
5. 5AULA :
Campus Charqueadas
Criptografia
• A criptografia só pode ser quebrada a partir de uma
“palavra secreta” ou chave o que a torna difícil de ser lida
por pessoa não autorizada.
• Pode ser dividida em dois tipos, chaves simétricas
(criptografia de chave única) e chaves assimétricas
(criptografia de chave pública).
6. 6AULA :
Campus Charqueadas
Criptografia
• Uma informação que é enviada de uma pessoa
(organização) para outra é chamada de “texto claro”
(plaintext).
• Cifragem é o processo de conversão de um texto claro
para um código cifrado.
• Decifragem é o contrario quando recupera-se um texto
claro de um código cifrado.
7. 7AULA :
Campus Charqueadas
Criptografia
• Hoje o estudo da criptografia baseia-se no estudo de
algoritmos criptográfico que podem ser implementados
em computadores.
8. 8AULA :
Campus Charqueadas
Um pouco de história
• Antigamente, a cifragem era utilizada na troca de
mensagens, sobretudo em assuntos ligados à guerra
(com o intuito do inimigo não descobrir a estratégia do
emissor da mensagem), ao amor (para que os segredos
amorosos não fossem descobertos pelos familiares) e a
diplomacia (para que facções rivais não estragassem os
planos de acordos diplomáticos entre nações).
9. 9AULA :
Campus Charqueadas
Um pouco de história
• O primeiro uso documentado de criptografia foi
aproximadamente em 1900 a.c., no Egito, quando um
escriba usou hieróglifos fora do padrão numa inscrição.
• Entre 600 a.c. e 500 a.c., os hebreus utilizavam a cifra de
substituição simples, sendo monoalfabética e
monogrâmica, e com ela escreveram o Livro de
Jeremias.
10. 10AULA :
Campus Charqueadas
Um pouco de história
• O chamado “Codificador de Júlio César” ou “Cifra César”
que apresentava uma das técnicas mais clássicas de
criptografia, é um exemplo de substituição simples, com
ela substitui-se a letra por outra três casas a frente no
alfabeto. Segundo o autor, esse algoritmo foi
responsável por enganar muitos inimigos do Império
Romano, no entanto, após ter sido descoberta a chave
perdeu sua funcionalidade.
11. 11AULA :
Campus Charqueadas
Um pouco de história
• Destacam-se os estudos de Blaise de Vigenère que
constituíram um método muito interessante, é a cifra de
Viginère que utiliza a substituição de letras. Este
processo consiste na sequência de várias cifras (como
as de César) com diferentes valores de deslocamento
alfanumérico.
• A partir desse período a criptografia começou a ser
seriamente estudada no Ocidente, e começou a surgir
várias técnicas.
12. 12AULA :
Campus Charqueadas
Um pouco de história
• Em 1918 Arthur Scherbius
desenvolveu uma máquina de
criptografia chamada Enigma,
utilizada amplamente pela marinha
de guerra alemã em 1926, como a
principal forma de comunicação.
13. 13AULA :
Campus Charqueadas
Um pouco de história
• Em 1928, o exército alemão construiu uma versão
conhecida como Enigma G, que tinha como garantidor
de segurança a troca periódica mensal de suas chaves.
• Essa máquina elétrico-mecânica funcionava inicialmente
com três depois com com oito rotores. Quando se
apertava uma tecla, o rotor da esquerda avançava uma
posição, provocando a rotação dos demais rotores à
direita, sendo que esse movimento gerava diferentes
combinações de encriptação.
14. 14AULA :
Campus Charqueadas
Um pouco de história
• Durante a “Guerra Fria”, entre Estados Unidos e União
Soviética, foram criados e utilizados diversos métodos a
de esconder mensagens a respeito de estratégias e
operações.
• Diffie e Hellman revolucionaram os sistemas de
criptografia existentes até 1976, a partir do
desenvolvimento de um sistema de criptografia de chave
pública que foi aperfeiçoado e deu origem ao algoritmo
RSA.
15. 15AULA :
Campus Charqueadas
Um pouco de história
• Com os esforços para se descobrir novas chaves e
padrões, surgiram diversos tipos de criptografia, tais
como por chave simétrica, por chave assimétrica, por
chave hash e até a chamada criptografia quântica, que
hoje se encontra em desenvolvimento.
16. 16AULA :
Campus Charqueadas
Cifras e códigos
• A cifra é um ou mais algoritmos que cifram e decifram
um texto.
• A operação do algoritmo costuma ter como parâmetro
uma chave criptográfica. Este parâmetro costuma ser
secreto.
• A cifra até pode ser conhecida, mas a chave não, assim
como se entende o mecanismo de uma fechadura
comum, mas não se pode abrir a porta sem uma chave
real.
17. 17AULA :
Campus Charqueadas
Chave criptográfica
• Uma chave criptográfica é um valor secreto que modifica
um algoritmo de encriptação.
• A fechadura da porta da frente da sua casa tem uma
série de pinos. Cada um desses pinos possui múltiplas
posições possíveis.
18. 18AULA :
Campus Charqueadas
Criptografia Hash
• A criptografia hash permite que, através de uma string de
qualquer tamanho, seja calculado um identificador digital
de tamanho fixo, chamado de valor hash. O valor hash
geralmente é formado por 16 bytes (MD2, MD4 e MD5)
ou 20 bytes (SHA-1), mas pode se estender, embora não
passe de 512 bytes.
19. 19AULA :
Campus Charqueadas
Criptografia Hash
• Seja uma função hash H, e x uma string qualquer,
teremos que H(x) será o valor hash para a string x.
• Algumas características básicas.
– O valor de entrada da função possui qualquer tamanho;;
– O valor de saída da função possui tamanho fixo;;
– H(x) é relativamente fácil de ser computado, para qualquer
valor de x;;
– H(x) é uma função “one-way”;;
– H(x) é livre de colisão.
20. 20AULA :
Campus Charqueadas
Criptografia Hash
• Uma função hash é dita "one-way” pois uma vez obtido o
valor hash h para uma string x, é computacionalmente
impossível fazer o processo inverso, ou seja, encontrar
um valorx tal que H(x) = h.
21. 21AULA :
Campus Charqueadas
Criptografia Hash
• Diz-se ainda que H(x) é livre de colisão, significando que
as funções hash devem garantir uma probabilidade
mínima de que duas strings diferentes acabem por
resultar no mesmo valor hash.
• Qualquer alteração na string original que deu origem ao
identificador digital, mesmo que de um único bit, acabará
por gerar uma alteração significativa no valor hash final.
22. 22AULA :
Campus Charqueadas
MD5
• É um algoritmo de hash de 128 bits unidirecinal
desenvolvido pela RSA Data Security, Inc. é muito
utilizado por software com protocolo ponto-a-ponto na
verificação de integridade de arquivos e logins.
• Foi desenvolvido em 1991 por Ronald Rivest para
suceder ao MD4 que tinha alguns problemas de
segurança.
23. 23AULA :
Campus Charqueadas
MD5
• Por ser um método unidirecional não é possível de um
hash retornar para o texto plano.
• A forma de verificar é comparar duas hash, a original
armazenada em algum local com a hash gerada a partir
da string fornecida.
24. 24AULA :
Campus Charqueadas
MD5
• É muito utilizado para verificar a integridade de um
arquivo, onde um programa gera um hash do arquivo
que está sendo disponibilizado e ao terminar o download
o usuário gera o hash do arquivo e verifica com o
fornecido pelo site.
25. 25AULA :
Campus Charqueadas
MD5
• Os hashes MD5 são normalmente representados por
uma sequencia de 32 caracteres hexadecimais.
MD5("The quick brown fox jumps over the lazy dog")
9e107d9d372bb6826bd81d3542a419d6
MD5("The quick brown fox jumps over the lazy cog”)
1055d3e698d289f2af8663725127bd4b
26. 26AULA :
Campus Charqueadas
MD5
• Para aumentar a segurança em alguns sistemas, utiliza-
se a tática de “Salgar” (salting) uma string.
• Essa técnica consiste em inserir um texto fixo na string
informada pelo usuário.
• Deste modo se o sal for “ifsul” e a senha do usuário for
“1234”, o hash que será salvo no banco de dados será
da string “ifsul1234”.
27. 27AULA :
Campus Charqueadas
MD5
• Caso alguém tenha acesso ao banco de dados e queira
comparar com uma lista de hashes não conseguira achar
a senha de forma tão fácil.
• Mas o sal não é a solução dos problemas!
28. 28AULA :
Campus Charqueadas
Chaves simétricas
• É o tipo mais simples de criptografia, já que tanto o
emissor quanto o receptor da mensagem possuem a
mesma chave.
• Essa chave é utilizada tanto na codificação quando na
decodificação.
30. 30AULA :
Campus Charqueadas
Chaves simétricas
• Existem diversos algoritmos criptográficos que fazem uso
da chave simétrica, tais como:
– DES ( Data Encryption Standard)
– IDEA ( International Data Encryption Algorithm)
– RC (Ron’s Code ou Rivest Cipher)
31. 31AULA :
Campus Charqueadas
Chaves simétricas
• A chave simétrica apresenta alguns problemas graves:
– A troca da chave deve ser feita constantemente para que a
mesma não seja quebrada.
– É impossível utilizar com fins de autenticação.
32. 32AULA :
Campus Charqueadas
Chaves assimétricas
• Esse tipo de criptografia utiliza duas chaves, uma pública
e uma privada.
• O sistema funciona de forma que alguém cria uma chave
e envia essa chave à quem deseja enviar informação à
ela. Essa é a chamada chave pública.
• Com ela é feita a codificação da mensagem.
• Para decodificar será necessária outra chave que é
privada que somente o receptor conhece.
35. 35AULA :
Campus Charqueadas
Chaves assimétricas
• Esse esquema com duas chaves atuando em conjunto
funciona muito bem, principalmente quando queremos
garantir a confiabilidade nos dados, já que somente o
proprietário da chave privada conseguira acesso à
informação em texto claro.
36. 36AULA :
Campus Charqueadas
Chaves assimétricas
• Existem diversos algoritmos que fazem uso da chave
assimétrica, tais como:
– RSA (Rivest, Chamir e Adleman)
– ElGamal
37. 37AULA :
Campus Charqueadas
Chaves assimétricas
• Problemas na utilização de chaves assimétricas, o uso
de algoritmos reversos para desencriptação de
mensagens acaba elevando o tempo computacional dos
algoritmos, inviabilizando o seu uso em uma
comunicação intensa.
38. 38AULA :
Campus Charqueadas
Combinação de tipos
• Com os dois tipos de chaves tendo suas vantagens e
desvantagens era natural a tentativa de unir os dois
métodos.
• Com isso surgiram algumas alternativas.
• A mais utilizada funciona da seguinte forma, o primeiro
contato é utilizada a chave assimétrica para autenticação
e combinar qual a chave secreta que será usada
posteriormente.
39. 39AULA :
Campus Charqueadas
Combinação de tipos
• Logo após tendo a chave a troca de informações é feita
através de chaves simétricas evitando o grande custo
custo computacional utilizado pela chave assimétrica.
41. 41AULA :
Campus Charqueadas
Esteganografia
• Do grego “escrita escondida” é o estudo das técnicas
para ocultar a existência de uma mensagem dentro de
outra.
• Esteganografia é um ramo particular da criptografia que
uma informação seja camuflada em outra a fim de
mascarar o seu verdadeiro sentido.
42. 42AULA :
Campus Charqueadas
Esteganografia
• A esteganografia inclui um vasto conjunto de métodos
para comunicações secretas desenvolvidas ao longo da
história.
• Dentre estes métodos podemos citar: tintas “invisíveis”,
micro pontos, arranjo de caracteres, assinaturas digitais,
canais escondidos, comunicação por espalhamento de
espectro, entre outras.
43. 43AULA :
Campus Charqueadas
Utilização da esteganografia
• A esteganografia possui algumas aplicações práticas
interessantes.
• Ela é uma das técnicas utilizadas para a verificação de
direitos autorais em imagens e outras mídias.
• Pode ser utilizada para transmitir mensagens sem o
conhecimento da existência dessa mensagem por parte
de outros interessados.
45. 45AULA :
Campus Charqueadas
Como funciona
• Essa técnica pode ser utilizada em diversos meios,
digitais ou não:
– Texto
– Imagem
– Áudios
– Vídeos
– Espalhamento de espectro
46. 46AULA :
Campus Charqueadas
Esteganografia em texto
Windsurf isso Kyrie! Ideal para este dia insuportavelmente
alegre.
Windows inova Kernel. Inovaçao pode expor dados
incautos armazenados.
Lendo apenas as iniciais de cada palavra acimo teremos?
47. 47AULA :
Campus Charqueadas
Esteganografia em texto
• Este é apenas um exemplo trivial, que fica na fronteira
entre esteganografia e criptografia.
• Com a utilização de um programa de computador, é
possível criar implementações mais sofisticadas
utilizando fórmulas com valor binário ou ASCII dos
caracteres.
48. 48AULA :
Campus Charqueadas
Esteganografia em imagens
• Muitas técnicas modernas possibilitam esconder
informações dentro de imagens.
• A mais utilizada das técnicas é denominada LSB (Least
Significant Bit), que consiste em utilizar o bit menos
significativo de uma determinada informação para
armazenar um bit de uma nova informação.
49. 49AULA :
Campus Charqueadas
Esteganografia em imagens
• No caso de uma imagem com profundidade de cor de 24
bits, um bit de uma nova informação pode ser
armazenado no bit menos significativo de cor de cada
pixel da imagem.
• Então considere a string IFSUL, é formada por 40 bits
logo precisa de uma imagem com no mínimo 40 pixels.
50. 50AULA :
Campus Charqueadas
Atividade
1. Explique como funciona SHA
2. Cite programas que calculem o hash de arquivos
3. Explique como pode ser feita a esteganografia de uma
mensagem de texto em um arquivo de áudio.
4. Explique como é feita a esteganografia por
espalhamento de espectro.