PGP: Pretty Good Privacy

Julho 2017

O que é PGP

O PGP (Pretty Good Privacy) é um criptossistema (sistema de codificação) inventado por Philip Zimmermann, um analista informático, que trabalhou de 1984 a 1991 num programa que permitirá executar o algoritmo RSA nos computadores pessoais (PGP).

Contudo, como ele utilizava o RSA sem o acordo dos seus autores, isto custou-lhe 3 anos de processos. O resultado foi que, desde 1993, o programa é vendido por uns 150 $ (uns 450 reais).

Ele é extremamente rápido e seguro, o que o torna quase impossível de criptoanalisar.

O princípio de PGP

O PGP é um sistema de criptografia híbrido, que usa uma combinação de funções retiradas da criptografia de chave pública e criptografia simétrica.


Quando um usuário criptografa um texto com PGP, primeiro, os dados são comprimidos. Esta compressão de dados reduz o tempo de transmissão através do canal de comunicação, economizando espaço em disco e, sobretudo, reforçando a segurança criptográfica.

A maioria dos criptoanalistas explora os modelos encontrados no formato de texto original, para quebrar a codificação. A compressão reduz estes modelos de texto normal e melhora, consideravelmente, sua resistência à criptoanálise.

A codificação faz-se, principalmente, em duas etapas: o PGP cria uma chave secreta IDEA de maneira aleatória e codifica os dados com esta chave; o PGP codifica a chave secreta IDEA e transmite-a pela chave RSA pública do receptor.

A operação de descodificação também é feita em duas etapas: o PGP decifra a chave secreta IDEA usando a chave RSA privada; o PGP decifra os dados com a chave secreta IDEA obtida anteriormente.

O método de codificação combina a facilidade de uso da criptografia de chave pública com a velocidade da criptografia convencional. A criptografia convencional é cerca de mil vezes mais rápida do que os algoritmos de codificação de chave pública. A codificação com chave pública resolve o problema de distribuição de chaves. Combinados, esses dois métodos melhoram o desempenho e a gestão das chaves sem, no entanto, comprometer a segurança.

As funcionalidades do PGP

O PGP oferece as seguintes funções:


Assinaturas eletrônicas e verificação da integridade das mensagens: função baseada no uso simultâneo da função hash (MD5) e do sistema RSA. A função MD5 condensa a mensagem e produz um resultado de 128 bits que, depois, é codificado, graças ao algoritmo RSA, pela chave privada do emissor;

Codificação dos arquivos locais: função que utiliza o algoritmo IDEA;

Geração das chaves públicas e privadas: cada usuário codifica a sua mensagem com a ajuda de chaves privadas IDEA. A transferência das chaves eletrônicas IDEA utiliza o sistema RSA. Portanto, o PGP oferece mecanismos para a geração de chaves adaptadas ao sistema. O tamanho das chaves RSA é proposto de acordo com vários níveis de segurança: 512, 768, 1024 ou 1280 bits;

Gerência de chaves: função responsável pela distribuição da chave pública do usuário aos remetentes que desejam enviar mensagens codificadas;

Certificação de chaves: esta função permite acrescentar um selo digital que garante a autenticidade das chaves públicas. Esta é uma característica original do PGP, que baseia a sua confiança numa noção de proximidade social, em vez de uma entidade de certificação central;

Revogação, desativação e registo de chaves: função que permite produzir certificados de revogação.

O formato dos certificados PGP

Um certificado PGP compreende, entre outras, as seguintes informações:


O número de versão do PGP: identifica a versão do PGP utilizada para criar a chave associada ao certificado;

A chave pública do dono do certificado: a parte pública do seu par de chaves associada ao algoritmo da chave, seja o RSA, o DH (Diffie-Hellman) ou o DSA (Digital Signature Algorithm);

A informação do dono do certificado: inclui informações sobre a identidade do usuário, como o seu nome, o seu nome de de usuário, a sua foto, etc.;

A assinatura digital do dono do certificado: também chamada de assinatura automática, ela é efetuada com a chave privada correspondente à chave pública associada ao certificado;

O período de validade do certificado: as datas de início e expiração do certificado;

O algoritmo de codificação simétrico favorito para a chave: indica o algoritmo de codificação que o dono do certificado prefere aplicar à criptografia da informação. Os algoritmos possíveis são o CAST, o IDEA e o triplo DES.

O fato de que um certificado poder conter várias assinaturas é um dos aspectos exclusivos do formato dos certificados PGP. Várias pessoas podem assinar o par ‘chave/identificação’ para certificar, de forma segura, que a chave pública pertence ao dono especificado. Alguns certificados PGP são compostos de uma chave pública com vários nomes, cada um dos quais fornece um modo diferente de identificar o dono da chave (ex: o nome da conta do serviço de mensagens de empresa do dono, o pseudônimo e a conta do serviço de mensagens pessoal do dono, a sua foto, e isto tudo num só um certificado).

Em um certificado, uma pessoa deve afirmar que uma chave pública e o nome do dono da chave estão associados. Qualquer um pode validar os certificados do PGP. Os certificados X. 509 devem sempre ser validados por uma autoridade de certificação ou uma pessoa designada pelo CA. Os certificados PGP também usam uma estrutura hierárquica com a ajuda de um CA para validar os certificados.

Existem algumas diferenças entre um certificado X. 509 e um certificado PGP. As mais importantes são as seguintes:

Para criar o seu próprio certificado PGP, é preciso solicitar a emissão de um certificado X. 509 emitido por uma autoridade de certificação e obtê-lo;

Os certificados X. 509 usam apenas um nome para o dono da chave;

Os certificados X. 509 utilizam apenas uma assinatura numérica para atestar a validade da chave.

Os modelos de fiabilidade do PGP

Geralmente, o CA (Certification Authority) deve ter plena confiança total para estabelecer a validade dos certificados e realizar todo o processo de validação manual. No entanto, é difícil estabelecer uma relação de confiança com as pessoas que o CA não considera como confiáveis.

Num ambiente PGP, qualquer usuário pode agir como uma autoridade de certificação. Portanto, você pode validar outro certificado de chave pública de um usuário do PGP. No entanto, tal certificado não pode ser considerado como válido por outro usuário, a menos que um terceiro reconheça a pessoa que validou este certificado como um remetente confiável. Quer dizer, a minha opinião será respeitada, segundo a qual as chaves dos outros só estão corretas se eu for considerado como um remetente de confiança. Caso contrário, a minha opinião sobre a validade das chaves dos outros será questionada.

Suponhamos, por exemplo, que o seu chaveiro contém a chave de Alice. Você a validou e, para mostrar a sua aprovação, a assinou. Além disso, você sabe que Alice é muito exigente no que se refere à validação das chaves de outros usuários. Por conseguinte, você outorga uma fiabilidade completa a sua chave. Alice torna-se, então, uma autoridade de certificação. Se ela assinar a chave de outro usuário, esta chave aparecerá como válida no seu chaveiro.

A revogação de um certificado PGP

Apenas o dono do certificado (o dono da chave privada correspondente) ou outro usuário, designado como autoridade de revogação pelo dono do certificado, pode revogar um certificado PGP. Nomear uma autoridade de revogação é útil, já que normalmente os usuários PGP revogam os certificados porque perdem a senha complexa da chave privada correspondente. Ora, este procedimento só pode ser concluído se for possível acessar a chave privada. Um certificado X. 509 pode ser revogado apenas pelo seu emissor.


Quando um certificado é revogado, não é preciso avisar os seus usuários potenciais. Para anunciar uma revogação dos certificados PGP, o método usual consiste em colocar esta informação num servidor de certificados. Assim, os usuários que quiserem se comunicar com você são avisados para não utilizar a chave pública.

Veja também


PGP - Pretty Good Privacy
PGP - Pretty Good Privacy
PGP - Pretty Good Privacy
PGP - Pretty Good Privacy
Mit Jana server eine Internetverbindung gemeinsam nutzen
Mit Jana server eine Internetverbindung gemeinsam nutzen
PGP - Pretty Good Privacy
PGP - Pretty Good Privacy
PGP - Pretty Good Privacy
PGP - Pretty Good Privacy
Última modificação: 13 de julho de 2017 às 09:40 por ninha25.
Este documento, intitulado 'PGP: Pretty Good Privacy', está disponível sob a licença Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com base nas condições estipuladas pela licença. Não se esqueça de creditar o CCM (br.ccm.net) ao utilizar este artigo.