PGP – Pretty Good Privacy
Privacidade Bastante Boa
Segurança para correio eletrônico
Criador e suas funções
• Foi criado por Phil Zimmermann em 1991.
• Fornece PRIVACIDADE, AUTENTICAÇÃO,
ASSINATURAS DIGITAIS e COMPACTAÇÃO de
uma forma facil de usar.
• Roda em ambientes UNIX, Linux, Windows e
MAC OS.
Principais Características
• Usa algoritmos simétricos como o IDEA, CAST
ou 3DES para cifras as mensagens.
• Usa RSA ou Diffie-Hellman para compartilhar a
chave usada para cifrar as mensagens.
• Usa MD5 para gerar o hash criptográfico.
• Em 2004 ele deixou de ser gratuito.
NÃO OFERECE RECURSOS DE CORREIO
• Funciona como um pré-processador que
recebe texto simples como entrada e produz
texto cifrado, assinado e codificado em base64
como saída.
• Essa saída pode ser enviada usando o
protocolo de correio eletrônico SMTP.
FUNCIONAMENTO DO PGP
PGP Passo a Passo - ENVIANDO
Alice possui uma mensagem P e a submete ao
software PGP.
1 – A mensagem P passa por uma função hash
(MD5 com saída de 128 bits).
2 – O hash é assinado com a chave privada D(a)
de Alice.
3 – O hash assinado de P e uma cópia de P em
claro são concatenados gerando P1.
4 – P1 é submetido a um processo de
compactação usando um programa ZIP que
emprega o algoritmo Ziv-Lempel. A saída do
programa ZIP é chamada de P1.Z.
5 – O software PGP solicita que Alice insira dados
aleatoriamente. O conteúdo passado e a velocidade
de digitação geram uma chave de 128 bits, K.
O algoritmo simétrico cifra P1.Z usando a chave K.
6 – A chave K é cifrada com a chave publica de Bob
E(b).
7 – Os dois componentes são convertidos para base 64
podendo ser incluída em um corpo de mensagem
SMTP.
PGP – Passo a Passo - RECEBENDO
1 - Bob ao receber a mensagem de Alice reverte
a codificação base 64.
2 – Ele obtém a chave para abrir a mensagem
que foi cifrada com o IDEA usando sua chave
privada D(b) RSA.
3 – Com a chave K, ele decodifica a mensagem e
obtém P1.Z.
4 – Bob agora separa o texto simples P e o hash
assinado para validar a integridade do
documento.
5 – Bob usa a chave publica de Alice E(a) RSA e
obtém o hash criptográfico. Neste passo ele
válida o emissor.
6 - Com a mensagem P, ele realiza MD5 (P) e
compara este hash com o que veio assinado
por Alice.
7 - Se os resultados forem iguais, a mensagem
está correta e que realmente veio de Alice
(INTEGRIDADE e AUTENTICIDADE).
Mensagem PGP
• Uma mensagem PGP é dividida em 3 partes.
Na parte da chave da mensagem, fica também
um identificador da chave publica de Bob, pois
ele pode ter várias chaves públicas.
A parte da assinatura possui um cabeçalho, um
timbre de hora, o identificador de chave
pública do transmissor, informações que
identifique os algoritmos usados (permitindo
uso do MD6 e SHA2) e pelo hash
criptografado.
A parte da mensagem contém um cabeçalho, o
nome padrão do arquivo a ser usado caso o
receptor grave o arquivo no disco e o timbre
de hora de criação da mensagem e a
mensagem propriamente dita.
Gerenciamento de Chaves
Cada usuário manter duas estruturas de dados
localmente, que são dois anéis:
• Anel de chave privada .
• Anel de chave publica.
Anel de Chave Privada
• Contém um ou mais pares de chave
pública/privada.
• São aceitos vários pares para os usuários
possam alterar suas chaves publicas sem
invalidar as mensagens que estiverem sendo
preparadas ou em transito.
• As chaves privadas armazenadas em disco são
cifradas com uma senha especial
arbitrariamente longa.
Anel de Chaves Públicas
• Contém as chaves dos correspondentes do
usuário. São necessários para cifrar a chave
simétrica de cada mensagem. Cada entrada
contém a chave publica, a identificação da
chave e um grau de confiança da chave.
Teia de Confiança
Obtendo chaves públicas
• Na prática as pessoas recebem as chaves
públicas consultando um servidor de chaves
confiável.
• Após a padronização do X.509, o PGP
também passou a admitir certificados digitais.
Download

PGP * Pretty Good Privacy Privacidade Bastante Boa