SEGURANÇA E AUDITORIA DE
SISTEMAS
Criptografia
AGENDA
Criptografia simétrica
Criptografia assimétrica
Assinatura Digital
C
RIPTOGRAFIA
Componentes básicos para o ciframento de uma
mensagem:
algoritmo
chave
C
RIPTOGRAFIA
Vantagens importantes para o uso de chaves
Permite a utilização do mesmo algoritmo criptográfico para a
comunicação com diferentes receptores, trocando apenas a chave.
Permite trocar facilmente a chave no caso de uma violação, mantendo
o mesmo algoritmo.
Número de chaves possíveis depende do tamanho (número de bits) Número de chaves possíveis depende do tamanho (número de bits)
da chave.
Exemplo: uma chave de 8 bits permite uma combinação de no máximo
C
RIPTOGRAFIA
Criptografia Simétrica
Para: Banco De: Affonso Data: 16, Abr, 2001 Transferir R$ 2,5 milhões da conta 254674-12 para a conta 071517-08 Affonso Para: Banco De: Affonso Data: 16, Abr, 2001 Transferir R$ 2,5 milhões da conta 254674-12 para a conta 071517-08 Affonso *> *ql3*UY #~00873/JDI c4(DH: IWB(883 LKS9UI29as9eea qw9vijhas9djerhp7 (*Y23k^wbvlqkwc zqw-_89237xGyjdc Biskdue di7@94 *> *ql3*UY #~00873/JDI c4(DH: IWB(883 LKS9UI29as9eea qw9vijhas9djerhp7 (*Y23k^wbvlqkwc zqw-_89237xGyjdc Biskdue di7@94 Criptografia+
+
Algoritmo=
AffonsoAffonso Biskdue di7@94Biskdue di7@94
Descriptografia Para: Banco De: Affonso Data: 16, Abr, 2001 Transferir R$ 2,5 milhões da conta 254674-12 para a conta 071517-08 Affonso Para: Banco De: Affonso Data: 16, Abr, 2001 Transferir R$ 2,5 milhões da conta 254674-12 para a conta 071517-08 Affonso *> *ql3*UY #~00873/JDI c4(DH: IWB(883 LKS9UI29as9eea qw9vijhas9djerhp7 (*Y23k^wbvlqkwc zqw-_89237xGyjdc Biskdue di7@94 *> *ql3*UY #~00873/JDI c4(DH: IWB(883 LKS9UI29as9eea qw9vijhas9djerhp7 (*Y23k^wbvlqkwc zqw-_89237xGyjdc Biskdue di7@94
+
+
Algoritmo=
C
RIPTOGRAFIA
Criptografia Simétrica
Algoritmos simétricos - exigem que a chave seja mantida
secreta, do conhecimento exclusivo dos dois interlocutores.
É requerido um canal seguro que permita a um usuário transmitir
a chave ao seu interlocutor.
Se uma pessoa quer se comunicar com outra com segurança, ela deve passar primeiramente a chave utilizada para cifrar a mensagem. Este processo é chamado distribuição de chaves.
C
RIPTOGRAFIA
Criptografia Simétrica - Uso
Canal Seguro Criptograma Chave K Chave K Bob Alice Cifrar Decifrar Canal Inseguro Mensagem (abcdef...z) Mensagem (abcdef...z) Criptograma (αβχδεφ...ζ) Bob Alice
Alice e Bob precisam acordar uma chave secreta que irá proteger as mensagens trocadas entre eles.
C
RIPTOGRAFIA
Criptografia Simétrica
Alice cifra uma mensagem - utiliza um algoritmo de ciframento e
uma chave secreta para transformar uma mensagem clara em um texto cifrado.
Bob decifra uma mensagem - utiliza o algoritmo de deciframento
correspondente e a mesma chave para transformar o texto cifrado em uma mensagem em claro.
em uma mensagem em claro.
Eva não possui a chave secreta, mesmo conhecendo o algoritmo,
não consegue decifrar a mensagem.
C
RIPTOGRAFIA
Criptografia Simétrica
Modelo de criptografia (para uma cifra de chave simétrica)
Intruso passivo apenas escuta Intruso ativo pode alterar mensagens Intruso
Texto criptografia, EMétodo de descriptografia, DMétodo de Texto Texto simples, P Chave de criptografia, K Chave de descriptografia, K Texto simples, P
Texto cifrado, C=Ek(P)
criptografia, E descriptografia, D
C
RIPTOGRAFIA
Criptografia Simétrica - Algoritmo
Algoritmo Simétrico
Bits Descrição
DES 56 •Data Encryption Standard (DES) - algoritmo simétrico mais disseminado no mundo.
•Utiliza cifras de blocos de 64 bits, chave de 56 bits, substituição monoalfabética (alfabeto:256
símbolos).
•Criado pela IBM em 1977, permite cerca de 72 quadrilhões de combinações (256), considerado
quadrilhões de combinações (256), considerado
pequeno, quebrado por "força bruta" em 1997 em um desafio lançado na Internet.
•NIST (National Institute of Standards and Technology) - lançou o desafio, recertificou o DES pela última vez em 1993 e desde então está recomendando o 3DES. •O NIST propôs um substituto ao DES - deve aceitar
C
RIPTOGRAFIA
Criptografia Simétrica – Detalhes DES
Texto simples de 64 bits Transposição inicial Iteração 1 Iteração 2 Iteração 16 C h a v e d e 5 6 b it s Texto cifrado de 64 bits Troca (swap) de 32 bits
C
RIPTOGRAFIA
Criptografia Simétrica – Descrição do funcionamento DES
Basicamente uma cifra de substituição que utiliza um
caractere de 64 bits.
Possui uma chave de 56 bits e seu algoritmo tem 19
estágios.
Executa uma série de transposições, substituições, e
Executa uma série de transposições, substituições, e
operações de recombinação em blocos de dados de 64 bits.
Inicialmente, os 64 bits de entrada sofrem uma transposição
e são colocados em uma função usando tabelas estáticas de
transposição e substituição
C
RIPTOGRAFIA
Criptografia Simétrica – Descrição do funcionamento DES
O algoritmo foi projetado para permitir que a decodificação fosse feita com
a mesma chave da codificação – propriedade necessária em algoritmo de chave simétrica.
C
RIPTOGRAFIA
Criptografia Simétrica – Algoritmo 3DES
Algoritmo Simétrico
Bits Descrição
Triple DES (3DES)
112 ou 168 •O 3DES - simples variação do DES,
utilizando-o em três ciframentos sucessivos, podendo empregar um versão com duas ou
(3DES)
podendo empregar um versão com duas ou com três chaves diferentes.
•É seguro, porém muito lento para ser um algoritmo padrão.
C
RIPTOGRAFIA
Criptografia Simétrica – Algoritmo IDEA
Algoritmo Simétrico
Bits Descrição
IDEA 128 •O International Data Encryption Algorithm foi criado em 1991 por James Massey e Xuejia Lai e possui patente da suíça ASCOM Systec.
•Algoritmo segue as mesmas linhas gerais do DES. •O tamanho da chave (128 bits) inviabiliza a
•O tamanho da chave (128 bits) inviabiliza a possibilidade de ataques por “força-bruta”.
• Uma implementação por software do IDEA é mais rápida do que uma implementação por software do DES.
•Utilizado principalmente no mercado financeiro e no PGP (o programa para criptografia de e-mail
C
RIPTOGRAFIA
Criptografia Simétrica – Algoritmo RC2
Algoritmo Simétrico
Bits Descrição
RC2 8 a 1024 •Projetado por Ron Rivest e utilizado no
protocolo S/MIME, voltado para criptografia de e-mail corporativo.
•Cifra de corrente, produz um corrente de •Cifra de corrente, produz um corrente de
números pseudo-aleatórios que são
cifrados através de uma operação lógica XOR com a própria mensagem.
•Possui chave de tamanho variável.
•Rivest também é o autor do RC4, RC5 e RC6, este último concorrente do AES.
C
RIPTOGRAFIA
Criptografia Simétrica
Vantagem
Rapidez na criptografia e descriptografia da informação.
Desvantagens
A chave deve ser trocada entre as partes e armazenada de
forma segura, o que nem sempre é fácil de garantir;
A criptografia simétrica não garante a identidade de quem A criptografia simétrica não garante a identidade de quem
enviou ou recebeu a mensagem (autenticidade e não-repudiação).
Cada par necessita de uma chave para se comunicar de forma
segura. Em geral, se n pessoas querem se comunicar usando chave secreta, serão necessárias
C
RIPTOGRAFIA
Criptografia Simétrica
Proposta de solução para o problema da distribuição das chaves secretas
C
RIPTOGRAFIA
A
SSIMÉTRICA
Texto claro Mensagem cifrada
As chaves são sempre geradas aos pares: uma para cifrar e a sua
correspondente para decifrar.
A chave pública é divulgada, a chave privada é proprietária
(normalmente não abandona o ambiente onde foi gerada). (normalmente não abandona o ambiente onde foi gerada).
Uma chave é utilizada para “fechar o cadeado” e outra chave, diferente, mas relacionada à primeira, é utilizada para “abrir o
C
RIPTOGRAFIA
A
SSIMÉTRICA
Não possui segredos compartilhados
Para: Banco De: Affonso Data: 16, Abr, 2001 Transferir R$ 2,0 milhões da conta 254674-12 para a conta 071517-08 Affonso Para: Banco De: Affonso Data: 16, Abr, 2001 Transferir R$ 2,0 milhões da conta 254674-12 para a conta 071517-08 Affonso *> *ql3*UY #~00873/JDI c4(DH: IWB(883 LKS9UI29as9%#@ qw9vijhas9djerhp7 (*Y23k^wbvlqkwc zqw-_89237xGyjdc Biskdue di7@94 *> *ql3*UY #~00873/JDI c4(DH: IWB(883 LKS9UI29as9%#@ qw9vijhas9djerhp7 (*Y23k^wbvlqkwc zqw-_89237xGyjdc Biskdue di7@94 Criptografia
+
+
Algoritmo=
Chave Pública Descriptografia Para: Banco Para: Banco *> *ql3*UY*> *ql3*UY Para: Banco
De: Affonso Data: 16, Abr, 2001 Transferir R$ 2,0 milhões da conta 254674-12 para a conta 071517-08 Affonso Para: Banco De: Affonso Data: 16, Abr, 2001 Transferir R$ 2,0 milhões da conta 254674-12 para a conta 071517-08 Affonso *> *ql3*UY #~00873/JDI c4(DH: IWB(883 LKS9UI29as9%#@ qw9vijhas9djerhp7 (*Y23k^wbvlqkwc zqw-_89237xGyjdc Biskdue di7@94 *> *ql3*UY #~00873/JDI c4(DH: IWB(883 LKS9UI29as9%#@ qw9vijhas9djerhp7 (*Y23k^wbvlqkwc zqw-_89237xGyjdc Biskdue di7@94
+
+
Algoritmo=
Chave PrivadaC
RIPTOGRAFIA
A
SSIMÉTRICA
Algoritmos assimétricos - permitem que a chave de cifração
possa ser tornada pública, disponibilizando-a em um “canal público”
(Ex.: repositório de acesso público) - chave-pública.
Qualquer um pode cifrar mensagens com uma dada chave-pública. Somente o destinatário, detentor da correspondente chave de
decifração (chave-privada, ou secreta), poderá decifrar a decifração (chave-privada, ou secreta), poderá decifrar a mensagem.
A chave-privada não precisa e nem deve ser dada a conhecer a ninguém, devendo ser guardada em segredo pelo seu detentor apenas, que deve também ter sido o responsável pela geração do seu par de chaves, enquanto a chave-pública pode ser publicada livremente.
C
RIPTOGRAFIA
A
SSIMÉTRICA
Uso do algoritmo criptográfico assimétrico
Cifrar Decifrar Canal Público Mensagem (abcdef...z) Mensagem (abcdef...z) Criptograma (αβχδεφ...ζ) Chave KPública Chave KSecreta Bob Alice Canal Inseguro (abcdef...z) (abcdef...z)
Para que Alice envie uma mensagem confidencial a Bob, ela deve encriptar essa mensagem com a chave pública de Bob que, de posse de sua chave
C
RIPTOGRAFIA
A
SSIMÉTRICA
Descrição do funcionamento do sistema
(forma simplificada)
Bob e todos os que desejam comunicar-se de modo seguro
geram uma chave de ciframento e sua correspondente chave de deciframento.
Bob mantém secreta a chave de deciframento; esta é chamada
de sua chave privada.
Bob torna pública a chave de ciframento: esta é chamada de
sua chave pública.
Qualquer pessoa pode obter uma cópia da chave pública. Bob
encoraja isto, enviando-a para seus amigos ou publicando-a em boletins. Eva não tem nenhuma dificuldade em obtê-la.
C
RIPTOGRAFIA
A
SSIMÉTRICA
Descrição do funcionamento do sistema
(forma simplificada)
Alice deseja enviar uma mensagem a Bob: precisa primeiro
encontrar a chave pública dele. Feito isto, ela cifra sua
mensagem utilizando a chave pública de Bob, despachando-a em seguida.
Bob recebe a mensagem, a decifra facilmente com sua chave
privada. privada.
Eva, que interceptou a mensagem em trânsito, não conhece a
chave privada de Bob, embora conheça sua chave pública. Mas este conhecimento não a ajuda a decifrar a mensagem.
Mesmo Alice, que foi quem cifrou a mensagem com a chave
C
RIPTOGRAFIA
A
SSIMÉTRICA
Algoritmo deve atender 3 requisitos básicos:
1. D(E(P)) = P.
2. É extremamente difícil deduzir D a partir de E. 3. E não pode ser decifrado por um ataque de texto
C
RIPTOGRAFIA
A
SSIMÉTRICA
Exemplos de algoritmos que utilizam chaves
públicas:
RSA
ElGamal
Diffie-Hellman Curvas Elípticas
C
RIPTOGRAFIA
A
SSIMÉTRICA
RSA
Algoritmo Descrição
RSA •Possui este nome devido a seus inventores: Ron Rivest, Adi Shamir e Len Adleman, que o criaram em 1977 no MIT.
•Amplamente utilizado e uma das mais poderosas formas de criptografia de chave pública conhecidas. Utiliza números primos.
•Premissa por trás do RSA: é fácil multiplicar dois números primos para obter um terceiro número, mas muito difícil
primos para obter um terceiro número, mas muito difícil recuperar os dois primos a partir daquele terceiro número -fatoração.
•Exemplo: Fatores primos de 3.337 são 47 e 71. Geração da chave pública: multiplicar dois primos grandes; qualquer um pode fazer isto. Derivar a chave privada a partir da chave pública: fatorar um grande número. Se o número for grande o suficiente e bem escolhido, então ninguém pode fazer isto em uma quantidade de tempo razoável.
C
RIPTOGRAFIA
A
SSIMÉTRICA
RSA
Algoritmo Descrição
RSA •Segurança: dificuldade de fatoração de números grandes. •Uma chave RSA de 512 bits foi quebrada em 1999 pelo
Instituto Nacional de Pesquisa da Holanda, com o apoio de cientistas de mais 6 países. Levou cerca de 7 meses e
foram utilizadas 300 estações de trabalho para a quebra. foram utilizadas 300 estações de trabalho para a quebra. •Fato preocupante: percentual significativo dos sites de
A
LGORITMO
- RSA
Descrição do funcionamento
1. Escolhe-se dois números primos extensos, p e q, (geralmente,
de 1.024 bits).
2. Calcula-se n = p × q e z = (p - 1) × (q - 1).
3. Escolhe-se um número d tal que z e d sejam primos entre si. 4. Encontra-se e de forma que (e × d ) mod z = 1
A
LGORITMO
- RSA
Descrição do funcionamento
O texto simples (uma string de bits) é dividido em blocos, de modo
que cada mensagem de texto simples, P , fique no intervalo 0 ≤ P <
n.
Criptografar a mensagem P – calcula-se C = Pe (mod n). Descriptografar C – calcula-se P = Cd (mod n).
É possível provar que, para todo P na faixa especificada, as
A
LGORITMO
- RSA
Descrição do funcionamento
Para realizar a criptografia, são necessários "e" e "n“. Para a descriptografia, são necessários "d" e "n".
Portanto a chave pública consiste no par (e,n) e a chave
privada consiste em (d,n).
A segurança do método se baseia na dificuldade de fatorar
números extensos.
Se pudesse fatorar o valor n (publicamente conhecido), seria
possível determinar p e q para, a partir destes, encontrar z e, então, seria possível encontrar d, porém fatorar números
A
LGORITMO
- RSA
Exemplo:
Escolhe-se p = 3 e q = 11
Calculando n = p × q e z = (p-1) × (q-1), n=33 e z=20
Valor adequado como número primo, em relação a z é o 7, (7 e 20
não possuem fatores comuns), d = 7
Obtenção do valor de e: Obtenção do valor de e:
solução da equação (e × d) mod z = 1, e = 3
Texto cifrado C para uma mensagem de texto simples P é dado por
PRIVACIDADE É UTILIZADA DE DIVERSAS FORMAS NO
OFERECIMENTO DE SEGURANÇA DA INFORMAÇÃO
Privacidade / Confidencialidade (Segredo)
Integridade (Não-adulteração)
Autenticação (Autoria)
A
LGORITMO
- RSA
Fatoração de um número de 500 dígitos requer
10
25anos, usando-se a força bruta, supondo o
melhor algoritmo e computador com tempo por
instrução de 1 µs.
C
RIPTOGRAFIA
S
IMÉTRICA X
A
SSIMÉTRICA
Nº de participantes Criptografia Simétrica n(n-1)/2 Criptografia Assimétrica 2n 2 1 4Número de chaves necessárias/número de participantes
4 6 8
8 28 16
C
RIPTOGRAFIA
S
IMÉTRICA X
A
SSIMÉTRICA
Simétrica
Assimétrica
Funcionamento
Utiliza um algoritmo e uma
chave para cifrar e decifrar
Requisito de Segurança
A chave tem que ser mantida
em segredo
Funcionamento
Utiliza um algoritmo e um par
de chaves para cifrar e decifrar
Requisito de Segurança
Uma chave é pública e a
outra tem que ser mantida em segredo
Tem que ser impossível
decifrar a mensagem
Algoritmo mais alguma parte
do texto cifrado devem ser insuficientes para obter a
outra tem que ser mantida em segredo
Algoritmo com alguma parte
do texto cifrado com uma das chaves não devem ser
C
RIPTOGRAFIA
S
IMÉTRICA X
A
SSIMÉTRICA
Problemas
Criptografia Simétrica
Como distribuir e armazenar as chaves secretas de
forma segura?
Quantas chaves são necessárias para uma
comunicação segura entre n pessoas?
Criptografia Assimétrica
Como garantir que o detentor da chave pública é
realmente quem diz ser?
Necessidade de ter uma infra-estrutura para armazenar
as chaves públicas.
C
RIPTOGRAFIA
S
IMÉTRICA X
A
SSIMÉTRICA
Qual a melhor técnica?
Como garantir a autenticidade de quem envia
a mensagem?
Assinatura Digital
A
MEAÇAS DO
A
MBIENTE
E
LETRÔNICO
Internet Adulteração da comunicação Intermediário Impostor Repúdio Penetração de sistema Processamento distribuído Comunicações abertasViolação de autorização Interrupção do serviço Repetição
C
OMUNICAÇÃO
S
EGURA
Assinatura Eletrônica Criptografia Descriptografia Verificação de Assinatura Certificação Validade do Certificado“Bob”
Documento Eletrônico Documento EletrônicoInternet
A
SSINATURA DIGITAL
Assinatura Digital
Certificação Digital
C
RIPTOGRAFIA
- A
UTENTICAÇÃO
Algumas vezes há a necessidade de se provar quem
escreveu um documento e manter as informações desse
documento sem modificações
Solução: serviços de autenticação e integridade dos dados
A autenticidade de muitos documentos é determinada pela
C
RIPTOGRAFIA
- A
UTENTICAÇÃO
Assinatura Digital – item que acompanha um determinado
dado e apresenta as seguintes funções
Confirmar a origem do dado
Certificar que o dado não foi modificado
C
RIPTOGRAFIA
- A
UTENTICAÇÃO
Vantagens do envio de mensagem “assinada”
O receptor poderá verificar a identidade alegada pelo
transmissor
Posteriormente, o transmissor não poderá repudiar o
conteúdo da mensagem
conteúdo da mensagem
O receptor não terá a possibilidade de forjar ele mesmo a
mensagem
A
SSINATURA
D
IGITAL
Assinaturas de Chave Pública
Sumários de Mensagem (Message Digests)
Sumários de Mensagem (Message Digests)
A
SSINATURA
D
IGITAL
Assinaturas de Chave Pública
Computador de Alice Linha de transmissão Computador de Bob
Chave privada de Alice, DA Chave pública de Bob, EB Chave privada de Bob, DB Chave pública de Alice, EA
A
SSINATURA
D
IGITAL
Assinaturas de Chave Pública - Problemas relacionados ao
ambiente no qual operam
Bob só poderá provar que uma mensagem foi enviada por
Alice enquanto DA permanecer secreta. Se Alice revelar sua chave secreta, o argumento deixará de existir - qualquer um poderá ter enviado a mensagem.
Criptografia Assimétrica (chave pública) - Críticas
Reúnem sigilo e autenticação Em geral, o sigilo não é necessário Cifragem da mensagem inteira é lenta
A
SSINATURA
D
IGITAL
Solução:
assinar a mensagem sem cifrá-la completamente
A
SSINATURA
D
IGITAL
Sumários de Mensagens
(Message Digests)Uso de uma função hash unidirecional que extrai um
trecho qualquer do texto simples e, a partir deste, calcula um string de bits de tamanho fixo.
Função hash – geralmente denominada sumário de Função hash – geralmente denominada sumário de
• Hash - Algoritmo que faz o mapeamento de uma seqüência de bits de tamanho arbitrário para uma seqüência de bits de tamanho fixo menor, de forma que seja muito difícil
encontrar duas mensagens produzindo o mesmo resultado hash.
A
SSINATURA
D
IGITAL
Função Hash - funciona como uma impressão digital de uma mensagem gerando, a partir de uma entrada de tamanho variável, um valor fixo pequeno: o digest ou valor hash.
A
SSINATURA
D
IGITAL
Message Digests - Propriedades importantes
Gera um sumário de tamanho fixo para qualquer
comprimento de mensagem.
Efetivamente impossível adivinhar a mensagem a partir do
sumário.
Efetivamente impossível encontrar outra mensagem que gere
o mesmo sumário.
Uma pequena mudança na mensagem altera bastante o
A
SSINATURA
D
IGITAL
- G
ERAÇÃO
Geração da Assinatura Digital
1. entra-se com os dados a serem "digeridos" e o algoritmo MD
gera um hash de 128 ou 160 bits (dependendo do algoritmo).
2. computada uma MD, criptografa-se o hash gerado com uma chave privada.
A
SSINATURA
D
IGITAL
- V
ERIFICAÇÃO
Verificação da Assinatura Digital
1. Executa-se a função MD (usando o mesmo algoritmo MD que
foi aplicado ao documento na origem), obtendo-se um hash para aquele documento, e posteriormente, decifra-se a
assinatura digital com a chave pública do remetente.
2. A assinatura digital decifrada deve produzir o mesmo hash
gerado pela função MD executada anteriormente.
3. Se estes valores são iguais é determinado que o documento 3. Se estes valores são iguais é determinado que o documento
não foi modificado após a assinatura do mesmo, caso contrário o documento ou a assinatura, ou ambos foram alterados.
Assinatura digital – informa apenas que o documento foi modificado, mas não o que foi modificado e o quanto foi modificado.
A
SSINATURA
D
IGITAL
É importante perceber
: a assinatura digital, comodescrita no exemplo anterior, não garante a confidencialidade da mensagem.
Qualquer um poderá acessá-la e verificá-la, mesmo um Qualquer um poderá acessá-la e verificá-la, mesmo um
A
SSINATURA
D
IGITAL
Obtenção de confidencialidade com assinatura digital: Alice
1. assina a mensagem, utilizando sua chave privada.
2. criptografa a mensagem novamente, junto com sua
assinatura, utilizando a chave pública de Bob.
Bob
1. ao receber a mensagem, deve decifrá-la com sua chave
1. ao receber a mensagem, deve decifrá-la com sua chave privada, o que garante sua privacidade.
2. "decifrá-la" novamente, ou seja, verificar sua assinatura
utilizando a chave pública de Alice, garantindo assim sua autenticidade.
Exemplos de algoritmos que implementam
Assinatura Digital:
RSA El Gamal DSAA
SSINATURA
D
IGITAL
A
SSINATURA
D
IGITAL
Algoritmo Descrição
RSA •Como já mencionado, o RSA também é comutativo e pode ser utilizado para a geração de assinatura
digital.
•A matemática é a mesma: há uma chave pública e •A matemática é a mesma: há uma chave pública e
uma chave privada, e a segurança do sistema baseia-se na dificuldade da fatoração de números
A
SSINATURA
D
IGITAL
Algoritmo Descrição
El Gamal •Também é comutativo, podendo ser utilizado tanto para assinatura digital quanto para gerenciamento de chaves.
•Obtém sua segurança da dificuldade do cálculo de •Obtém sua segurança da dificuldade do cálculo de
A
SSINATURA
D
IGITAL
Algoritmo Descrição
DSA •O Digital Signature Algorithm, destinado
unicamente a assinaturas digitais, foi proposto pelo NIST em agosto de 1991, para utilização no seu padrão DSS (Digital Signature Standard). seu padrão DSS (Digital Signature Standard).
•Adotado como padrão final em dezembro de 1994, trata-se de uma variação dos algoritmos de
C
RIPTOGRAFIA
- F
UNÇÃO
H
ASH
Exemplos de funções hash (MD) utilizadas em
produtos e protocolos criptográficos:
MD5
MD5
SHA-1
C
RIPTOGRAFIA
- F
UNÇÃO
H
ASH
Funções Descrição
MD5 •Função de espalhamento unidirecional inventada por Ron Rivest, do MIT, que também trabalha para a RSA Data Security. MD - Message Digest.
•Produz um valor hash de 128 bits, para uma mensagem de entrada de tamanho arbitrário.
•Inicialmente proposto em 1991, após alguns ataques de criptoanálise terem sidos descobertos contra a função Hash prévia de Rivest: a MD4.
•Projetado para ser rápido, simples e seguro. Seus detalhes •Projetado para ser rápido, simples e seguro. Seus detalhes
são públicos, e têm sido analisados pela comunidade de criptografia.
•Foi descoberta uma fraqueza em parte do MD5, mas até agora ela não afetou a segurança global do algoritmo.
•O fato dele produzir um valor hash de somente 128 bits é o que causa maior preocupação; é preferível uma função Hash que produza um valor maior.
C
RIPTOGRAFIA
- F
UNÇÃO
H
ASH
Funções Descrição
SHA-1 •O Secure Hash Algorithm, função de espalhamento
unidirecional inventada pela NSA, gera um valor hash de 160 bits, a partir de um tamanho arbitrário de mensagem. •Funcionamento interno muito parecido com o observado no MD4, indicando que os estudiosos da NSA basearam-se no MD4 e fizeram melhorias em sua segurança.
•A fraqueza existente em parte do MD5, citada anteriormente, descoberta após o SHA-1 ter sido proposto, não ocorre no SHA-1.
SHA-1.
•Atualmente, não há nenhum ataque de criptoanálise conhecido contra o SHA-1.
•Mesmo o ataque da força bruta torna-se impraticável, devido ao seu valor hash de 160 bits.
•Não há provas de que, no futuro, alguém não possa descobrir como quebrar o SHA-1.
C
RIPTOGRAFIA
- F
UNÇÃO
H
ASH
Funções Descrição
MD2 e MD4
•MD4 - precursor do MD5, tendo sido inventado por Ron Rivest.
•Após terem sido descobertas algumas fraquezas no MD4, Rivest escreveu o MD5.
•O MD4 não é mais utilizado.
•O MD2 é uma função de espalhamento unidirecional simplificada, e produz um hash de 128 bits.
•Segurança do MD2 - dependente de uma permutação •Segurança do MD2 - dependente de uma permutação
aleatória de bytes.
•Não é recomendável sua utilização, pois, em geral, é mais lento do que as outras funções hash citadas e
Chave de Sessão
Alice
Chave Pública Chave Privada Chave Pública do BobCriando uma Mensagem Segura
Assinando a Mensagem Ordem de Pagamento Para Bob SHA-1 Criptografando A Mensagem Ordem de Pagamento Para Bob Alice 01101001001001111010 RSA Criptografando a Chave de Sessão Sessão Chave Privada Chave Pública ChaveBob
Hash RSA Alice DES X15/^ nI2jR 98Fd z(q6Bloco
Transmitido
Chave de Sessão
Alice
Chave Pública Chave Privada Chave Pública do BobDescriptografando a Mensagem Segura
nI2jR 98Fd z(q6 X15/^ ow83h7ERH39DJ3H DES Descriptando a mensagem Descriptografando A chave de sessão nI2jR 98Fd z(q6 X15/^ ow83h7ERH39DJ3H Verificando a assinatura e Integridade da mensagem Ordem de Pagamento Para Bob SHA-1 Alice 01101001001001111010 RSA Sessão Chave Chave Pública
Bob
DES Ordem de Pagamento Para Bob Alice RSA nI2jR 98Fd z(q6 Hash Sim Não Hash Iguais?A
PLICAÇÕES
P
RÁTICAS
Correio eletrônico Utilização Autenticação de origem Integridade do conteúdo Confidencialidade Não-repúdio Protocolos ProtocolosPEM (Public Enhanced Mail)
Security Multiparts for MIME/MOSS (Mime Object Security
Services)
S/MIME (Secure/Multipurpose Internet Mail Extensions) PGP (Pretty Good Privacy)
A
PLICAÇÕES
P
RÁTICAS
A
PLICAÇÕES
P
RÁTICAS
Autenticação/SMIME
A
PLICAÇÕES
P
RÁTICAS
A
PLICAÇÕES
P
RÁTICAS
Criptografia/SMIME
A
PLICAÇÕES
P
RÁTICAS
A
PLICAÇÕES
P
RÁTICAS
Autenticação e Criptografia/SMIME
A
PLICAÇÕES
P
RÁTICAS
WEB
Requisitos
Autenticação do servidor Autenticação do cliente Integridade de conteúdo ConfidencialidadeProtocolos
SSL (Secure Socket Layer)
A
PLICAÇÕES
P
RÁTICAS
SSH (Secure Shell)
IPSec (Internet Protocol Security)
VPNs (Virtual Private Networks)
Processo que tem como principal propósito garantir o sigilo, integridade e autenticidade dos documentos eletrônios e documentos envolvidos
em transações eletrônicas.
Assinatura Digital ≠ Assinatura Digitalizada
A
SSINATURA
D
IGITAL
– É
IMPORTANTE SABER QUE
Trabalha, basicamente, com a captura e análise de dados biométricos (impressão digital, exame de fundo de olho, reconhecimento de fala,
C
ERTIFICAÇÃO
D
IGITAL
Justificativa
Funcionamento
Tipos de Certificados
Tipos de Certificados
Exemplos
C
ERTIFICAÇÃO
D
IGITAL
Justificativa
Usuário de chaves públicas
Criador de uma mensagem criptografada
Precisa conhecer a chave pública do destinatário
Destinatário de uma mensagem autenticada
C
ERTIFICAÇÃO
D
IGITAL
Justificativa
É necessário que o usuário tenha certeza de que a chave pública
que está utilizando é autêntica.
Pequeno grupo – poderia trocar as chaves públicas e
guardá-las de forma segura.
Grande grupo – troca manual de chave é impraticável.
Certificado Digital - arquivo digital que contém as informações
necessárias à identificação de um indivíduo ou programa, equipamento, componente, produto, etc, incluindo sua chave pública;
Principal função de um certificado – vincular uma chave
pública ao nome de um protagonista (indivíduo, empresa, etc.).
C
ERTIFICAÇÃO
D
IGITAL
Os certificados em si não são secretos ou protegidos. Usualmente
estão disponíveis em uma base de acesso livre na Internet (diretório X.500).
C
ERTIFICAÇÃO
D
IGITAL
Funcionamento
Autoridade Certificadora (AC)
CA (Certification Authority) - cartório eletrônico.
Entidade que emite certificados para possuidores de chaves
C
ERTIFICAÇÃO
D
IGITAL
Atribuições de uma CA:
Gerar, entregar e armazenar a chave privada de forma segura; Distribuir a chave pública;
Atualizar o par de chaves;
Assinar a chave pública para gerar o certificado. Assinar
certificados digitais garantindo sua validade
Manter e divulgar uma lista com os certificados revogados
(Certificate Revocation List - CRL);
CAs podem estar encadeadas em hierarquias de certificação,
CAs podem estar encadeadas em hierarquias de certificação,
em que a CA de um nível inferior valida sua assinatura com a assinatura de uma CA mais alta na hierarquia.
C
ERTIFICAÇÃO
D
IGITAL
Exemplo:
Outlook Express -Segurança
C
ERTIFICAÇÃO
D
IGITAL
Período de validade e revogação
Os certificados definem períodos de validade para as chaves
públicas.
Certificados podem ser revogados antes de sua expiração: Suspeita de corrupção da chave pública
Término de contrato Mudança de nome
C
ERTIFICAÇÃO
D
IGITAL
Exemplo:
Outlook Express -Segurança
C
ERTIFICAÇÃO
D
IGITAL
Componentes básicos de um certificado digital:
A chave pública;
Nome e endereço de e-mail;
Data da validade da chave pública;
Nome da autoridade certificadora (CA); Número de série do Certificado Digital; Número de série do Certificado Digital;
Para que serve um Certificado Digital?
Correio Eletrônico seguro
Transações Bancárias sem repúdio Compras pela Internet sem repúdio Consultas confidenciais a cadastros
Arquivo de documentos legais digitalizados Transmissão de documentos
C
ERTIFICAÇÃO
D
IGITAL
Contratos digitais
Certificação de Equipamentos
Certificação de Programas de Computador
C
ERTIFICAÇÃO
D
IGITAL
Pela assinatura da chave pública e das informações sobre Bob,
a CA garante que a informação sobre Bob está correta e que a chave pública em questão realmente pertence a Bob.
Alice confere a assinatura da CA e então utiliza a chave pública
em pauta, segura de que esta pertence a Bob e a ninguém mais.
C
ERTIFICAÇÃO
D
IGITAL
Dois exemplos típicos:
Quando você utiliza seu banco on-line, este tem que se certificar
de que você é a pessoa que realmente pode receber as informações sobre determinada conta bancária. Como uma
carteira de identidade, um Certificado Digital confirma sua
identidade para o banco on-line.
Quando você envia um e-mail importante, seu aplicativo de e-mail
Quando você envia um e-mail importante, seu aplicativo de e-mail
pode utilizar seu Certificado Digital para assinar "digitalmente" a mensagem. Uma assinatura digital faz duas coisas: informa ao destinatário que o e-mail é seu e indica que o e-mail não foi adulterado entre o envio e o recebimento deste.
C
ERTIFICAÇÃO
D
IGITAL
Obtenção de um Certificado
Cliente gera um par de chaves pública e privada (por exemplo,
usando RSA);
Envia-se um pedido de certificado para a Autoridade de Registro; AR (Autoridade Regional de Registro) faz a prova de existência do
requisitante e retransmite o pedido para a AC; requisitante e retransmite o pedido para a AC;
AC assina e envia o certificado; Usuário instala seu certificado; Usuário divulga o certificado.
C
ERTIFICAÇÃO
D
IGITAL
Política de Certificação
A Autoridade de registro (AR), tendo a delegação de uma
AC para tal, faz uma investigação no solicitante e determina:
Se o pedido deve ser atendido;
Tipos de certificados
Certificados de CA: utilizados para validar outros certificados;
auto-assinados ou auto-assinados por outra CA.
Certificados de servidor: utilizados para identificar um servidor
seguro; contém o nome da organização e o nome DNS do servidor.
Certificados pessoais: contém nome do portador e,
C
ERTIFICAÇÃO
D
IGITAL
Certificados pessoais: contém nome do portador e,
eventualmente, informações como endereço eletrônico, endereço postal, etc.
Certificados de desenvolvedores de software: utilizados para
P
ROCESSO DE
R
EGISTRO DE
C
ERTIFICADOS
CA
Diretório
RA verifica as informações e solicita a emissão do certificado CA emite o certificado e o remete para o RA CA divulga o certificado em um diretórioRA
A informação do usuárioUsuário
e o remete para o RAO RA envia o certificado para o usuário
T
RANSAÇÃO
C
OMERCIAL COM
C
ERTIFICADOS
O lojista pode Verificar: Detalhes do certificado
CA
Diretório
CA divulga o certificado em um diretórioLojista
Relações de revogação Validade dos certificados AssinaturasDescriptar dados
A relação de credibilidade entre lojistas e usuários com
certificados é endossada por uma Autoridade Certificadora
Transações Comerciais via Internet
R
EFERÊNCIAS
Notas de Aula da Professora Joseana Macêdo Fechine
(CEFET- PB)