O PGP (Pretty Good Privacy) é um criptosistema (sistema de codificação) inventado por Philip Zimmermann, um analista informático. Philip Zimmermann trabalhou de 1984 s 1991 num programa que permite fazer funcionar o RSA em computadores pessoais (PGP).
Contudo, como este utilizava o RSA sem o acordo dos seus autores, isto valeu-lhe processos durante 3 anos, é então vendido por cerca de 150$ desde 1993.
É muito rápido e seguro, o que o torna quase impossível de criptoanalisar .
O PGP é um sistema de criptografia híbrido, utilizando uma combinação das funcionalidades da criptografia com chave pública e a criptografia simétrica.
Quando um utilizador codifica um texto com PGP, os dados são primeiro comprimidos. Esta compressão dos dados permite reduzir o tempo de transmissão por qualquer meio de comunicação, economizar espaço no disco e, sobretudo, reforçar a segurança criptográfica.
A maior parte dos criptanalistas explora os modelos encontrados no texto normal para quebrar a codificação. A compressão reduz estes modelos no texto normal, melhorando por conseguinte consideravelmente a resistência à criptoanálise.
Seguidamente, a operação de codificação faz-se principalmente em duas etapas:
Este método de codificação associa a facilidade de utilização da cifragem de chave pública à velocidade da cifragem convencional. A codificação convencional é cerca de 1000 vezes mais rápida que os algoritmos de codificação com chave pública. A codificação com chave pública resolve o problema da distribuição da chave. Utilizados conjuntamente, estes dois métodos melhoram o desempenho e a gestão das chaves, sem, no entanto, comprometer a segurança.
PGP oferece as funcionalidades seguintes:
Um certificado PGP compreende, designadamente, as informações seguintes :
O facto de um só um certificado poder conter várias assinaturas é um dos aspectos únicos do formato do certificado PGP. Várias pessoas podem assinar o par de chaves/de identificação para atestar com toda a certeza da pertença da chave pública ao detentor especificado. Certos certificados PGP são compostos de uma chave pública com várias minutas, cada uma oferece um modo de identificação do detentor da chave diferente (por exemplo, o nome e a conta de serviço de mensagens de empresa do detentor, pseudónimo e a conta de serviço de mensagens pessoal do detentor, a sua fotografia, e isto tudo num só um certificado).
Num certificado, uma pessoa deve afirmar que uma chave pública e o nome do detentor da chave estão associados. Seja quem for pode validar os certificados PGP. Os certificados X. 509 devem sempre ser validados por uma autoridade de certificação ou uma pessoa designada pelo CA. Os certificados PGP tomam igualmente em carga uma estrutura hierárquica com a ajuda de um CA para a validação dos certificados.
Várias diferenças existem entre um certificado X. 509 e um certificado PGP. As mais importantes são indicadas abaixo :
Para criar o seu próprio certificado PGP, deve pedir a emissão de umcertificado X. 509 junto de uma autoridade de certificação e obtê-lo;
Geralmente, o CA (Certification authority - autoridade de certificação) inspira uma confiança total para estabelecer a validade dos certificados e efectuar todo o processo de validação manual. Mas é difícil estabelecer uma linha de confiança com as pessoas não consideradas explicitamente como fiáveis pelo seu CA
Num ambiente PGP, qualquer utilizador pode agir como autoridade de certificação. Pode por conseguinte validar o certificado de chave pública de um outro utilizador PGP. Contudo, tal certificado pode ser considerado como válido por um outro utilizador unicamente se um terceiro reconhecer o que validou este certificado como um correspondente fiável. Quer dizer, se respeitar por exemplo a minha opinião segundo a qual as chaves dos outro são correctas unicamente se eu for considerado como um correspondente fiável. No caso contrário, a minha opinião sobre a validade de outras chaves é controversa.
Suponhamos, por exemplo, que o seu pequeno porta-chaves contém a chave de Alice. Validou-a e, para o indicar, assina-a. Além disso, sabe que Alice é muito picuinhas no que diz respeito à validação das chaves de outros utilizadores. Por conseguinte, afecta uma fiabilidade completa à sua chave. Alice torna-se assim uma autoridade de certificação. Se assinar a chave de um outro utilizador, esta chave aparece como válida no seu porta-chaves.
Apenas o detentor do certificado (o detentor da sua chave privada correspondente) ou outro utilizador, designado como autoridade de revogação pelo detentor do certificado, tem a possibilidade de revogar um certificado PGP. A designação de uma autoridade de revogação é útil, porque a revogação, por um utilizador PGP, do seu certificado frequentemente deve-se à perda da palavra-passe complexa da chave privada correspondente. Ora, este procedimento pode unicamente ser efectuado se for possível aceder à chave privada. Um certificado X. 509 pode unicamente ser revogado pelo seu emissor.
Quando um certificado é revogado, é importante avisar os seus utilizadores potenciais. Para informar da revogação dos certificados PGP, o método habitual consiste em colocar esta informação num servidor de certificados. Assim, os utilizadores que desejem comunicar consigo são avisados para não utilizar esta chave pública.
Artigo escrito por Sylvain Lorin
Fonte : http://www.pgpi.org/doc/pgpintro/, referência muito boa