Você está na página 1de 77

Infra-Estrutura de Chaves Públicas

PKI
Public Key Infrastructure
Criptografia de Chave Pública

• A criptografia de chave simétrica (duas


pessoas) pode manter seguros seus segredos,
mas se precisarmos compartilhar informações
secretas com duas ou mais pessoas, devemos
também compartilhar as chaves.

Abril de 2006 Infra-estrutura de Chave Pública 2


Compartilhar Chaves

• O compartilhamento de chaves implica no


problema da distribuição de chaves.

• O que é Distribuição de Chaves ?

Abril de 2006 Infra-estrutura de Chave Pública 3


Distribuição de Chaves
• O problema da distribuição de chaves:

Como duas ou mais pessoas podem, de


maneira segura, enviar as chaves por meio de
linhas inseguras.

• Como as pessoas podem de maneira segura


enviar informações sigilosas por meio de
linhas inseguras ?

Abril de 2006 Infra-estrutura de Chave Pública 4


Criptografia de Chave Pública
• Antes de utilizar, deve-se lidar com os
problemas tais como:

- distribuição de chaves.

- gerenciamento de chaves.

Abril de 2006 Infra-estrutura de Chave Pública 5


Gerenciamento de Chaves

• O que é gerenciamento de chaves ?

• É o processo de gerar, proteger, armazenar, e


manter histórico para utilização de chaves.

Abril de 2006 Infra-estrutura de Chave Pública 6


Gerenciamento de Chaves

• Gerar pares de chaves


• Proteger chaves privadas
• Controlar múltiplos pares de chaves
• Atualizar pares de chaves
• Manter um histórico de pares de chaves.

Abril de 2006 Infra-estrutura de Chave Pública 7


Criptografia de Chave Pública

• Oferece criptografia e também uma maneira


de identificar e autenticar (através de
assinatura) pessoas ou dispositivos.

Abril de 2006 Infra-estrutura de Chave Pública 8


Criptografia de Chave Pública
• Principal questão:

Não somente confidencialidade.

Mas a principal questão é a integridade (uma


chave é suscetível à manipulação durante o
trânsito) e a posse de uma chave pública.

Abril de 2006 Infra-estrutura de Chave Pública 9


Criptografia de Chave Pública

• Como obter uma chave pública e numa


comunicação certificar-se de que essa chave
tenha sido recebida da parte intencionada ?

• Resposta: certificados de chave


pública

Abril de 2006 Infra-estrutura de Chave Pública 10


Introdução aos Certificados

• Com Criptografia de Chave Pública e


Assinatura Digital:

pessoas podem utilizar a chave pública de


uma outra pessoa;

Abril de 2006 Infra-estrutura de Chave Pública 11


Criptografia de Chave Pública
e Assinatura Digital

• Para enviar uma mensagem segura a uma pessoa,


tomamos a chave pública dessa pessoa e criamos
um envelope digital.

Abril de 2006 Infra-estrutura de Chave Pública 12


Criptografia de Chave Pública
e Assinatura Digital

• Para verificar a mensagem de uma pessoa,


adquire-se a chave pública dessa pessoa e
verifica-se a assinatura digital.

Abril de 2006 Infra-estrutura de Chave Pública 13


Assinatura com Chave Pública
Computador A rede Computador B

P Chave Chave Chave Chave P


Privada Pública Privada Pública
DA EB DB EB

DA(P) EB(DA(P)) DA(P)


Assume-se que os algoritmos de criptografia e decriptografia têm a propriedade que:
EB( DA(P) ) = P e DA( EB(P) ) = P, onde DA(P) é a assinatura do texto plano P com a chave privada DA
e EB(P) é a verificação da assinatura com a chave pública EB .
O algoritmo RSA tem esta propriedade.

Abril de 2006 Infra-estrutura de Chave Pública 14


De quem é a chave pública ?

• Mas, como uma pessoa qualquer pode saber


se uma chave pública pertence a pessoa em
questão (parte intencionada) ?

• Veja dois exemplos.

Abril de 2006 Infra-estrutura de Chave Pública 15


Exemplo de Invasão 1

• João tem a chave pública de Tati.


A chave funciona. Ele é capaz de criar um
envelope digital e se comunicar com Tati que é
possuidora da chave privada relacionada à
chave pública em poder de João.

Abril de 2006 Infra-estrutura de Chave Pública 16


Exemplo de Invasão 1

• Mas se Camila, de alguma maneira, invade o


computador de João e substitui a chave
pública de Tati pela chave pública dela,

Abril de 2006 Infra-estrutura de Chave Pública 17


Exemplo de Invasão 1

• quando João enviar o envelope digital, Camila


será capaz de interceptá-lo e lê-lo. Tati não
será capaz de abri-lo porque ela não tem a
chave privada parceira da chave pública
utilizada.

Abril de 2006 Infra-estrutura de Chave Pública 18


Exemplo de Invasão 2
• Na empresa onde João e Daniel trabalham
tem um diretório centralizado que armazena
as chaves públicas de todas as pessoas.

• Quando Daniel quiser verificar a assinatura


de João, ele vai ao diretório e localiza a chave
pública de João.

Abril de 2006 Infra-estrutura de Chave Pública 19


Exemplo de Invasão 2
• Mas se Camila tiver invadido esse diretório e
substituído a chave pública de João pela
chave pública dela,

• ela (Camila) poderá enviar uma mensagem


fraudulenta ao Daniel com uma assinatura
digital válida.

Abril de 2006 Infra-estrutura de Chave Pública 20


Exemplo de Invasão 2

• Daniel pensará que a mensagem veio de João,


porque verificará a assinatura contra o que ele
pensa ser, a chave pública de João.

Abril de 2006 Infra-estrutura de Chave Pública 21


Certificado Digital
• A maneira mais comum de saber se uma
chave pública pertence ou não a uma
entidade de destino (uma pessoa ou empresa)
é por meio de um certificado digital.

• Um certificado digital associa um nome a uma


chave pública.

Abril de 2006 Infra-estrutura de Chave Pública 22


Estrutura Básica de um Certificado

Nome

Mensagem
Chave Certificado
Pública

Assinatura
CA

Abril de 2006 Infra-estrutura de Chave Pública 23


Percepção à Fraude
• Um certificado é produzido de tal maneira que
o torna perceptível se um impostor pegou um
certificado existente e substituiu a chave
pública ou o nome.

• Qualquer pessoa ao examinar esse certificado


saberá se está errado.

Abril de 2006 Infra-estrutura de Chave Pública 24


Fraude

• Talvez o nome ou a chave pública esteja


errado;

• Portanto, não se pode confiar nesse


certificado, ou seja, o par (nome,chave).

Abril de 2006 Infra-estrutura de Chave Pública 25


Como tudo funciona
• Tati gera um par de chaves:
(chave-privada, chave-pública).

• Protege a chave privada.

• Entra em contato com uma Autoridade de


Certificação (CA), solicitando um certificado.

Abril de 2006 Infra-estrutura de Chave Pública 26


Como tudo funciona

• CA verifica se Tati é a pessoa que diz ser,


através de seus documentos pessoais.

• Tati usa sua chave privada para assinar a


solicitação do certificado.

Abril de 2006 Infra-estrutura de Chave Pública 27


Como tudo funciona

• CA sabe, então, que Tati tem acesso à chave


privada parceira da chave pública
apresentada, assim como sabe que a chave
pública não foi substituída.

Abril de 2006 Infra-estrutura de Chave Pública 28


Como tudo funciona
• CA combina o nome Tati com a chave pública
em uma mensagem e assina essa mensagem
com sua chave privada (de CA).

• Tati, agora, tem um certificado e o distribui.


Por exemplo, para João.

Abril de 2006 Infra-estrutura de Chave Pública 29


• Portanto, quando João coletar a chave pública
de Tati, o que ele estará coletando será o
certificado dela.

• Supondo que Camila tente substituir a chave


pública de Tati, pela sua própria chave (troca
da chave pública dentro do certificado).

Abril de 2006 Infra-estrutura de Chave Pública 30


Como tudo funciona

• Ela pode localizar o arquivo da chave pública


de Tati no laptop de João e substitui as chaves.

Abril de 2006 Infra-estrutura de Chave Pública 31


Como tudo funciona

• Mas, João, antes de usar o certificado, utiliza


a chave pública de CA para verificar se o
certificado é válido.

Abril de 2006 Infra-estrutura de Chave Pública 32


Como tudo funciona

• Pelo fato da mensagem no certificado ter sido


alterada (houve troca da chave pública dentro
do certificado), a assinatura não é verificada.

Abril de 2006 Infra-estrutura de Chave Pública 33


Como tudo funciona

• Portanto, João não criará um envelope digital


usando essa chave pública e Camila não será
capaz de ler qualquer comunicação privada.

Abril de 2006 Infra-estrutura de Chave Pública 34


Como tudo funciona

• Esse cenário assume que João tem a chave


pública de CA e tem a certeza de que ninguém
a substituiu com a chave de um impostor.

Abril de 2006 Infra-estrutura de Chave Pública 35


Como tudo funciona

• Pelo fato dele, João, poder extrair a chave do


certificado fornecido pela CA, ele sabe que
tem a verdadeira chave pública de CA.

Abril de 2006 Infra-estrutura de Chave Pública 36


Infra-estrutura de Chave Pública

• Usuários Finais

• Partes Verificadoras:
aquelas que verificam a autenticidade
de certificados de usuários finais.

Abril de 2006 Infra-estrutura de Chave Pública 37


Infra-estrutura de Chave Pública
• Para que usuários finais e partes verificadoras
utilizem essa tecnologia, chaves públicas
devem ser fornecidas uns aos outros.

• Problema: uma chave é suscetível de ataque


durante o trânsito.

Abril de 2006 Infra-estrutura de Chave Pública 38


Infra-estrutura de Chave Pública
• Ataque:

Se uma terceira parte desconhecida puder


substituir uma chave qualquer por uma chave
pública válida, o invasor poderá forjar
assinaturas digitais e permitir que mensagens
criptografadas sejam expostas a partes mal
intencionadas.

Abril de 2006 Infra-estrutura de Chave Pública 39


Infra-estrutura de Chave Pública
• Distribuição manual

• Solução apropriada:
- certificados de chave pública

• Fornecem um método para distribuição de


chaves públicas.

Abril de 2006 Infra-estrutura de Chave Pública 40


Infra-estrutura de Chave Pública
• Um certificado de chave pública (PKC) é um
conjunto de dados à prova de falsificação que
atesta a associação de uma chave pública a
um usuário final.

• Para fornecer essa associação, uma


autoridade certificadora (CA), confiável,
confirma a identidade do usuário.

Abril de 2006 Infra-estrutura de Chave Pública 41


Infra-estrutura de Chave Pública
• CAs emitem certificados digitais para usuários
finais, contendo nome, chave pública e outras
informações que os identifiquem.

• Após serem assinados digitalmente, esses


certificados podem ser transferidos e
armazenados.

Abril de 2006 Infra-estrutura de Chave Pública 42


Infra-estrutura de Chave Pública

• Tecnologia para utilizar PKI:

(1) Padrão X.509

(2) Componentes de PKI para criar,


distribuir, gerenciar e revogar
certificados.

Abril de 2006 Infra-estrutura de Chave Pública 43


Certificados de Chave Pública
• Um meio seguro de distribuir chaves públicas para as
partes verificadoras dentro de uma rede.

• Pretty Good Privacy (PGP)


• SET
• IPSec
• X.509 v3 (ITU-1988, 1993, 1995,
IETF-RFC2459-1999)

Abril de 2006 Infra-estrutura de Chave Pública 44


Estrutura de Certificado X.509

1. Versão
2. Número Serial
3. Identificador do algoritmo de assinatura
4. Nome do Emissor – nome DN da CA que cria
e emite.
5. Validade

Abril de 2006 Infra-estrutura de Chave Pública 45


Estrutura de Certificado X.509
6. Nome do Sujeito – nome DN da entidade
final (usuário ou uma empresa).

7. Informação da Chave Pública do sujeito:


(valor da chave, identificador do
algoritmo, parâmetros do mesmo)

Abril de 2006 Infra-estrutura de Chave Pública 46


Estrutura de Certificado X.509

8. Identificador único do emissor:


(não recomendado pela RFC 2459)

9. Identificador único do sujeito:


(não recomendado pela RFC2459)

Abril de 2006 Infra-estrutura de Chave Pública 47


Estrutura de Certificado X.509
10. Extensões de versões de certificados.

Identificador de Chave de Autoridade


para qualquer certificado auto-assinado.

Identificador de Chave de Sujeito

Utilização de chave

Abril de 2006 Infra-estrutura de Chave Pública 48


Estrutura de Certificado X.509
Utilização de Chave Estendida:

Para uso de aplicativos e protocolos


(TLS, SSL, ...), definindo as utilizações
da chave pública para servidores de
autenticação, autenticação de cliente,
registro de data/hora e outros.

Abril de 2006 Infra-estrutura de Chave Pública 49


Estrutura de Certificado X.509

Ponto de distribuição de CRL

Período de uso de chave privada:


(não recomendado pela RFC 2459)

Políticas de certificado:

Abril de 2006 Infra-estrutura de Chave Pública 50


Estrutura de Certificado X.509

Período de uso de chave privada:


(não recomendado pela RFC 2459)

Políticas de certificado:

Abril de 2006 Infra-estrutura de Chave Pública 51


Estrutura de Certificado X.509

Período de uso de chave privada:


(não recomendado pela RFC 2459)

Políticas de certificado:

Abril de 2006 Infra-estrutura de Chave Pública 52


Estrutura de Certificado X.509
Mapeamentos de políticas:
Quando o sujeito de certificado for
uma CA.

Nome alternativo do sujeito:


Permite o suporte dentro de vários
aplicativos que empreguem formas próprias
de nomes (vários aplicativos de e-mail, EDI,
IPSec)

Abril de 2006 Infra-estrutura de Chave Pública 53


Estrutura de Certificado X.509

Nome alternativo do emissor (CA):


Permite o suporte dentro de vários
aplicativos que empreguem formas
próprias de nomes (vários aplicativos
de e-mail, EDI,IPSec)

Abril de 2006 Infra-estrutura de Chave Pública 54


Estrutura de Certificado X.509
Atributos do diretório do sujeito:
(não recomendado pela RFC 2459)

Restrições básicas:
Se o sujeito pode agir como uma CA.
Exemplo: Se a Verisign pode permitir que a
RSA Inc. atue como uma CA, mas não
permitindo que a RSA Inc. crie novas CAs)

Abril de 2006 Infra-estrutura de Chave Pública 55


Estrutura de Certificado X.509
Restrições de nomes:
Apenas dentro de CAs.
Especifica o espaço de
nomes de sujeito.

Restrições de diretiva:
Apenas dentro de CAs.
Validação de caminho de política.

Abril de 2006 Infra-estrutura de Chave Pública 56


Estrutura de Certificado X.509

11. Assinatura da CA

Abril de 2006 Infra-estrutura de Chave Pública 57


Nomes de Entidades
• Certificados X.509 v3 concedem flexibilidade para nomes de
entidades.

• As entidades podem ser identificadas pelas seguintes formas


de nomes:
- endereço de e-mail
- domínio de Internet
- e-mail X.400
- nome de diretório X.500
- nome de EDI
- URI da Web: URN, URL
- endereço IP

Abril de 2006 Infra-estrutura de Chave Pública 58


Nomes de Entidades

• Em um certificado de chave pública, os


nomes de entidades (emissor e sujeito)
devem ser únicos.

Abril de 2006 Infra-estrutura de Chave Pública 59


Notação e Codificação ASN.1
• Regras de sintaxe e de codificação de dados de
certificados X.509.

• ASN.1 (Abstract Sintax Notation 1)


- descreve a sintaxe de várias estruturas de
dados;
- fornece tipos primitivos bem-definidos, e um
meio único para definir as combinações
complexas desses tipos primitivos.

Abril de 2006 Infra-estrutura de Chave Pública 60


Notação e Codificação ASN.1
• Regras de codificação para representar os
tipos específicos de ASN.1 em strings de 0s e
1s:

- Basic Encoding Rules (BER)

- Distinguished Encoding Rules (DER)

Abril de 2006 Infra-estrutura de Chave Pública 61


Basic Encoding Rules (BER)

• Basic Encoding Rules (BER) é um dos formatos


de codificação definido como parte do ASN.1
standard especificado pela ITU na norma
X.690.

• Distinguished Encoding Rules (DER)


Componentes PKI
Repositório de
3 Certificados
Autoridade
Certificadora (CA) 4
2
Servidor de
5 Diretório
Recuperação de X.500
Chave Autoridade
Registradora (RA)

1 6

Usuários Usuários
Finais Finais

Abril de 2006 Infra-estrutura de Chave Pública 63


Componentes de uma PKI

• Autoridade Certificadora (CA)


• Autoridade Registradora (RA)
• Diretório de Certificado (X.500)
• Servidor de Recuperação de Chave
• Protocolos de Gerenciamento
• Protocolos Operacionais

Abril de 2006 Infra-estrutura de Chave Pública 64


Protocolos de Gerenciamento
• Comunicação on-line com os usuários finais e o
gerenciamento dentro de uma PKI.
– Entre RA e um usuário final.
– Entre duas CAs.
• Funções
– Inicialização
– Registro
– Certificação
– Recuperação de chave
– Atualização de chave
– Revogação
– Certificação cruzada
Protocolos Operacionais
• Permitem a transferência de certificados e das
informações de status de revogação, entre diretórios,
usuários finais e parte verificadoras.

• X.509 não especifica nenhum único protocolo


operacional para uso dentro de um domínio de ICP.

• Protocolos usados:
– HTTP,
– FTP,
– e-mail
– LDAP-LightweightDiretoryAccessProtocol
Partes de sistema PKI

• Infra-estrutura PKI

• Usuário Final / Empresa

• Parte Verificadora

Abril de 2006 Infra-estrutura de Chave Pública 67


Interação das partes em PKI
Informação de Status de
Infra-estrutura Revogação de Certificado
de PKI

LDAP

Certificado X.509

LDAP, HTTP, FTP, e-mail


Usuário Final Parte Verificadora
ou Empresa

Abril de 2006 Infra-estrutura de Chave Pública 68


Autoridade Registradora

• Autoridade Registradora é também conhecida


como AR.

• É a entidade responsável por emitir


certificados digitais de acordo com as políticas
estabelecidas por uma AC (Autoridade
Certificadora).

Abril de 2006 Infra-estrutura de Chave Pública 69


Autoridade de Registro

• Uma Autoridade de Registo, (acrônimo AR),


é um dos elementos de uma PKI, ou talvez o
mais importante.
Autoridades de Registro

• Esta é o intermediário entre Autoridade de


Certificação (Diretório X.500, Base de Dados
de Autenticação) e Cliente (aquele que pede o
certificado), caso o último não peça o
certificado diretamente à Autoridade de
Certificação.
Autoridades de Registro

• Esta é quem valida a entidade do Cliente,


através de auditorias, para ver se o Cliente
não se faz passar por quem disse à Autoridade
de Registo, e é quem se responzabiliza perante
a Autoridade de Certificação pelo
cumprimento da CPS (Certification Practice
Statement, qualquer coisa como Declaração
das Práticas de Certificação).
Autoridade Certificadora

• Existem Autoridades de Certificação de dois


tipos: as Autoridades de Certificação de Raiz
(ou Autoridades de Certificação Superiores ou
ainda Autoridades de Certificação de Maior
Nível), que emitem diretamente os
certificados, ... ...

Abril de 2006 Infra-estrutura de Chave Pública 73


Autoridade Certificadora

• ... ... e as Autoridades de Certificação


Intermediárias (ou Autoridades de
Certificação Inferiores ou ainda Autoridades
de Certificação de Menor Nível), cujos
certificados são emitidos indiretamente pelas
Autoridades de Certificação Raiz.
Autoridades de Certificação
• Podemos pensar no caminho entre as
Autoridades de Certificação de Raiz e o Cliente
como uma ramificação, já que existem as
Autoridades de Certificação Raiz, que emitem
os certificados para as Autoridades de
Certificação Intermediárias, se existirem, até
ao Cliente (ou utilizador final) que aplica o
certificado.
Autoridades de Certificação

• Caso o certificado não seja emitido por uma


Autoridade de Certificação, este é auto-
assinado, ou seja, o proprietário ocupa os
lugares de Autoridade de Certificação,
Autoridade de Registo e Cliente.

• Este é o caso quando se utiliza o OpenSSL.


Autoridades de Certificação

• Exemplos de Autoridades de Certificação de


Raiz são a americana VeriSign ou a britânica
Equifax.

• Exemplos de Autoridades de Certificação


Intermediárias são a portuguesa Saphety, a
também portuguesa Multicert e a Brasiliera
Certisign.

Você também pode gostar