Phil's Pretty Good Software

apresenta

Pretty Good Privacy

Criptografia de Chave Pública para as Massas

---------------------------------

Guia do Usuário do PGP (tm)

Volume II: Tópicos Especiais

---------------------------------

de Philip Zimmermann

revisado em 22 de maio de 1994

Versão 2.6 do PGP - 22 de maio de 1994

Software de

Philip Zimmermann e outros

#######################################################################

Tradução de ROBERTA PAIVA BORTOLOTTI <roberta@nimitz.ibilce.unesp.br>

Revisão de Adriano Mauro Cansian <adriano@nimitz.ibilce.unesp.br>

UNESP - Universidade Estadual Paulista / Campus de S.José do Rio Preto

R. Cristóvão Colombo, 2265

15055-000 São José do Rio Preto - SP - BRAZIL

Tel. +55 172 24-4966 FAX: +55 172 24-8692

#######################################################################

Sinopse: O PGP (tm) utiliza criptografia de chave pública para proteger arquivos de dados e correio eletrônico. Para comunicar-se com segurança com pessoas que você nem conhece, sem a necessidade de canis seguros para a troca prévia de chaves. O PGP é bem específico e rápido, com sofisticado controle de chave, assinaturas digitais, compressão de dados e bom projeto ergonômico.

Direitos autorais C 1990-1994 de software e documentação de Philip Zimmermann. Todos os direitos reservados. Para mais informações sobre licença de uso do PGP, distribuição, direitos autorais, patentes, marcas registradas, limitações de obrigações e controles de exportação, veja a seção de "Assuntos Legais". Distribuído pelo Instituto Tecnológico de Massachusetts (MIT).

ÍNDICE

######

Breve Resumo

Tópicos Especiais

Selecionando Chaves Através do ID de Chave

Separando Assinaturas das Mensagens

Decriptografando as Mensagens Deixando a Assinatura

Enviando Arquivos de Textos ASCII Para Diferentes Ambientes de Máquina

Não Deixando Traços do Texto Plano no Disco

Exibindo o Texto Plano Decriptografado na sua Tela

Produzindo uma Mensagem Somente para os Olhos do Destinatário

Preservando o Nome do Arquivo do Texto Plano Original

Editando seu UserID ou sua Frase Senha ?

Editando os Parâmetros Confiáveis para uma Chave Pública

Verificando Se Tudo Esta Bem no Seu Anel de Chave Pública

Verificando Uma Chave Pública pelo Telefone

Controlando Grandes Anéis de Chave Pública

Usando o PGP Como um Filtro do Estilo Unix

Diminuindo Questões Desnecessárias: BATCHMODE

Forçando uma Resposta "Sim" (YES) para Questões Confirmatórias: FORCE

O PGP Volta da Posição de Saída para o Shell

Variável de Ambiente para a Frase Senha

Ajustando Parâmetros de Configuração: CONFIG.TXT

TMP - Nome do Caminho do Diretório para Arquivos Temporários

LANGUAGE - Seletor de Língua Estrangeira

MYNAME - User ID Padrão para Produzir Assinaturas

TEXTMODE - Considerando o Texto Plano como Um Arquivo Texto

CHARSET - Especifica o Conjunto de Caracteres Locais Para Arquivos

Textos

ARMOR - Ativa a Saída da Blindagem ASCII

ARMORLINES - Tamanho dos Arquivos Multi-partes de Blindagem ASCII

KEEPBINARY - Mantêm Arquivos Binários de Textos Cifrados Depois de

Decriptografar

COMPRESS - Ativa a Compressão

COMPLETES_NEEDED - Número de Apresentadores Totalmente Confiáveis

Necessários

MARGINALS_NEEDED - Número de Apresentadores

CERT_DEPTH - Até Onde os Apresentadores Podem ser ninhados

BAKRING - Nome do Arquivo para o Anel de Chave Secreta Reserva

PUBRING - Nome do Arquivo Para Seu Anel de Chave Pública

SECRING - Nome do Arquivo Para Seu Anel de Chave Secreta

RANDSEED - Nome do Arquivo Para a Origem do Número Aleatório

PAGER - Seleciona o Comando Shell Para Exibir a Saída de Texto Plano

SHOWPASS - Ecoa a Frase Senha ao Usuário

TZFIX - Ajuste de Área de Fuso

CLEARSIG - Ativa Mensagens Assinadas a Serem Encapsuladas Como Texto

Claro

VERBOSE - Mensagens Secretas, normais ou verbais

INTERACTIVE - Pede Confirmação para Adicionar Chaves

NOMANUAL - Deixa o PGP Gerar Chaves Sem o Manual

Um Peek Sob a Madeira

O Algoritmo de Criptografia Convencional do PGP

Compressão de Dados

Resumos de Mensagens e Assinaturas Digitais

Compatibilidade de Versões Anteriores do PGP

Vulnerabilidades

Frase Senha e Chave Secreta Comprometidas

Falsificação de Chave Pública

Arquivo "Quase deletados"

Vírus e Cavalos de Tróia

Quebra de Segurança Física

Ataques do Tipo Tempest

Protegendo Contra Fusos Horários Falsos

Exposição em Sistemas Multi-Usuário

Análises de Tráfego

Criptoanálises

Assuntos Legais

Marcas Registradas, Direitos Autorais e Garantias

Direitos de Patentes Sobre os Algoritmos

Licença e Distribuição

Controles de Exportação

Situação Legal de Philip Zimmermann

Onde Conseguir uma Versão Comercial do PGP

Relatando os Erros do PGP

Grupos Políticos Relacionados 'a Computação

Leituras Recomendáveis

Para contactar o autor

Apêndice A: Onde Conseguir o PGP

BREVE RESUMO

############

Pretty Good Privacy (tm), do software Pretty Good de Phil, é uma aplicação de software criptográfico de alta segurança para MSDOS, UNIX, VAX/VMS e outros computadores. O PGP combina a conveniência do criptosistema de chave pública Rivest-Shamir-Adleman (RSA) com a velocidade da criptografia convencional, com conteúdos de mensagens para assinaturas digitais, com a compressão de dados antes de serem criptografados, bom projeto ergonômico e sofisticada administração de chaves.

Este volume II do Guia do Usuário do PGP aborda tópicos avançados sobre o PGP que não foram abordados no "Guia do Usuário do PGP, Volume I: Tópicos Essenciais". Este manual não terá muito sentido se não for lido primeiro o volume de Tópicos Essenciais. Não é obrigatório ler o volume de Tópicos Especiais, exceto pela seção de assuntos legais, que todos deveriam ler.

TÓPICOS ESPECIAIS

#################

Selecionando Chaves Através do ID da Chave

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Em todos os comandos que deixam o usuário digitar um user ID ou um fragmento de user ID para selecionar uma chave, pode ser usado em seu lugar o ID da chave hexadecimal. Apenas use o ID da chave, como um prefixo de "Ox", no lugar do user ID. Por exemplo:

pgp -kav Ox67F7

Isto exibiria todas as chaves que tem 67F7 como parte de seus IDs da chave.

Esta característica é particularmente útil se você tem com o mesmo user ID duas chaves diferentes da mesma pessoa. Você pode, sem se equivocar, pegar a chave que deseja, especificando o ID da chave.

Separando Assinaturas de Mensagens

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Normalmente, os certificados de assinaturas estão fisicamente fixos ao texto que assinam. Isto torna-se conveniente em casos simples de verificação de assinaturas. É desejável em algumas circunstâncias que os certificados de assinatura armazenados estejam separados das mensagens que assinam. É possível gerar certificados de assinatura que fiquem separados do texto que assinam. Para fazer isso, combine a opção "b" (break) com a opção "s" (sign). Por exemplo:

pgp -sb carta.txt

Este exemplo produz um certificado de assinatura separado em um arquivo chamado "carta.sig". O conteúdo do arquivo carta.txt não esta anexada ao certificado de assinatura.

Depois de criar o arquivo de certificado de assinatura (carta.sig como no exemplo acima), envie-a com o arquivo de texto original ao destinatário. O destinatário precisa ter os dois arquivos para verificar a integridade da assinatura. Quando o destinatário tentar processar o arquivo de assinatura e o PGP perceber que não existe um texto no mesmo arquivo com a assinatura, pede ao usuário o nome do arquivo do texto. So então, o PGP consegue verificar apropriadamente a integridade da assinatura. Se o destinatário souber antecipadamente que a assinatura esta separada do arquivo texto, ele pode especificar os dois nomes de arquivo na linha de comando:

pgp carta.sig carta.txt

ou: pgp carta carta.txt

Neste caso, o PGP não pedira o nome do arquivo texto.

Um certificado de assinatura separado é útil se você quiser manter o certificado de assinatura em um arquivo de transações de certificados separados. Uma assinatura separada de um programa executável também é útil para detectar subseqüentemente uma infecção de vírus. Também é bom se mais de uma parte tiver que assinar um documento, como um contrato legal, sem as assinaturas ninhadas pois a assinatura de cada pessoa é independente.

Se você receber um arquivo de texto cifrado que tenha o certificado de assinatura junto a mensagem, você ainda pode retirá-lo da mensagem durante a decodificação. Pode fazer isto com a opção -b, enquanto decriptografa, por exemplo:

pgp -b carta

O arquivo carta.pgp é decriptografado e se houver uma assinatura anexa, o PGP a verifica e a separa do resto da mensagem, armazenando-a no arquivo carta.sig.

Decriptografando as Mensagens e Deixando a Assinatura

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Geralmente, você quer que o PGP decifre completamente um arquivo de texto cifrado, decriptografando-o e verificando a assinatura ninhada se houver uma, retirando as camadas até que o reste somente o arquivo de texto plano original.

Mas, algumas vezes, você quer decriptografar um arquivo criptografado e ainda deixar a assinatura mais interna anexa, de maneira que fique uma mensagem assinada decriptografada. Isto pode ser útil se você quiser enviar uma cópia de um documento assinado a uma terceira pessoa e talvez até re-codificá-la. Por exemplo, suponhamos que você receba uma mensagem assinada por Charlie, criptografada para você e que queira decriptografá-la, deixar a assinatura dele e enviá-la para Alice, ainda re-codificando-a com a chave pública dela. O PGP consegue fazer isto sem problemas.

Para simplesmente decriptografar uma mensagem e deixar a assinatura intacta, digite:

pgp -d carta

Isto decriptografa carta.pgp e se houver uma assinatura secreta, ficará intacta com o texto plano decriptografado no arquivo de saída.

Assim pode arquivá-lo ou talvez re-criptografá-lo e enviá-lo para qualquer pessoa.

Enviando Arquivos de Texto ASCII por Diferentes Ambientes de Máquina

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Você pode usar o PGP para criptografar qualquer tipo de arquivo de texto plano, dados binários de 8 bits ou texto ASCII. Provavelmente, quanto o texto plano form um texto ASCII, o uso mais comum do PGP será por correio eletrônico.

O texto ASCII algumas vezes é representado de várias maneiras em máquinas diferentes. Por exemplo, num sistema MSDOS, todas as linhas do texto ASCII terminam com um retorno de carro seguidas por um avanço de linha. Em um sistema UNIX, todas as linhas terminam apenas com um avanço de linha. Em um Macintosh, todas as linhas terminam apenas com um retorno de carro. É realmente um lado triste da vida.

Mensagens normais de texto ASCII não-criptografado são muitas vezes traduzidos automaticamente para alguma forma "canônica" comum, quando transmitidas de uma máquina para outra. O texto canônico tem um retorno de carro e um avanço de linha no final de cada linha do texto. Por exemplo, o protocolo de comunicação popular KERMIT consegue converter um texto para a forma canônica quando transmitido a um outro sistema. Este o converte aos marcadores locais de linha do texto através do KERMIT recebido. Isto facilita a divisão dos arquivos texto por sistemas diferentes.

Mas, o texto criptografado não pode ser convertido automaticamente por um protocolo de comunicação, porque o texto plano esta escondido pela codificação. Para prevenir esta inconveniência, o PGP deixa que você especifique se o texto plano deve ser tratado como um texto ASCII (não de dados binários) ou se deve ser convertido para uma forma de texto plano canônico antes de criptografá-lo. Depois disso, o texto plano decriptografado é convertido automaticamente para qualquer forma de texto que seja apropriada para o ambiente local.

Para fazer com que o PGP admita o texto plano como sendo o texto que deveria ser convertido para texto canônico antes de criptografar, apenas acrescente a opção "t" quando criptografar ou assinar uma mensagem, assim:

pgp -et mensagem.txt user_ID_do_destinatário

Este modo é desligado automaticamente se o PGP perceber que o arquivo de texto plano contem o que considerar como dados binários não-texto.

Para usuários do PGP que utilizam conjuntos de caracteres não-ingles de 8 bits, quando o PGP converte o texto a forma canônica, consegue converter os dados de um conjunto de caracteres locais ao conjunto de caracteres LATIN1 (ISO 8859-1 Alfabeto Latino 1), dependendo do ajuste do parâmetro CHARSET no arquivo de configuração do PGP. O LATIN1 é um super conjunto de ASCII, com caracteres extras existentes em muitas línguas européias.

Não Deixando Traços do Texto Plano no Disco

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Depois que o PGP criar um arquivo texto cifrado para você, pode acontecer que ele sobre-escreva automaticamente o arquivo de texto plano e apague-o, não deixando traços no disco, de forma que ninguém possa recuperá-lo mais tarde usando um utilitário de varredura de bloco de disco. Isto é útil se o arquivo de texto plano contem informações confidenciais que você não quer manter.

Para eliminar o arquivo de texto plano depois de produzir um arquivo de texto cifrado, apenas acrescente a opção "w" (wipe) quando criptografar ou assinar uma mensagem, assim:

pgp -esw mensagem. txt userID_do_destinatário

Este exemplo cria o arquivo de texto cifrado "mensagem.pgp", o arquivo de texto plano "mensagem.txt" é destruído depois de recuperado.

Obviamente, deve-se tomar cuidado com esta opção. Observe também que ela não apagará nenhum fragmento do texto plano que o seu processador de texto pode criar no disco, enquanto você estava editando a mensagem antes de rodar o PGP. Muitos processadores de texto criam arquivos reserva, arquivos temporários ou ambos. Além disso, o PGP sobre-escreve o arquivo apenas uma vez, o que é suficiente para impedir as tentativas convencionais de recuperação do disco, mas não suficiente para resistir a uma tentativa sofisticada e definida de recuperação de traços magnéticos fracos dos dados, utilizando um hardware especial de recuperação de disco.

Exibindo o Texto Plano Decriptografado na Sua Tela

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Para ver a saída do texto plano decriptografado na sua tela (como o comando do estilo UNIX "more"), sem escrevê-lo em um arquivo, use a opção -m (more) enquanto decriptografa:

pgp -m arquivo_de_texto_cifrado

Exibe o texto plano decriptografado em sua tela, uma tela cheia de cada vez.

Produzindo uma Mensagem Somente Para os Olhos do Destinatário

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Para especificar que o texto plano decriptografado do destinatário seja mostrado SOMENTE em sua tela e não salvo em disco, acrescente a opção -m:

pgp -sem mensagem.txt userID_do_destinatário

Depois, quando o destinatário decriptografar o texto cifrado com sua chave secreta e frase senha, o texto plano será exibido na tela mas não será salvo em disco. O texto será mostrado como deveria ser, se utilizado o comando do UNIX "more", uma tela cheia de cada vez. Se o destinatário quiser ler a mensagem novamente, terá que decriptografar o texto cifrado de novo.

Esta característica é o modo mais seguro de você proteger sua mensagem confidencial de ser deixada inadvertidamente no disco do destinatário. A característica foi acrescentada a pedido de um usuário que queria enviar mensagem íntimas a seu amante, mas estava com medo que acidentalmente poderia deixar as mensagens decriptografadas no computador de seu marido.

Observe que esta característica não previnirá uma pessoa inteligente e determinada de encontrar um modo de salvar o texto plano decriptografado no disco, é somente para ajudar a evitar que um usuário comum de fazê-lo.

Preservando o Nome do Arquivo do Texto Plano Original

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Normalmente, o PGP nomeia o arquivo de saída do texto plano decriptografado com um nome similar ao nome do arquivo de entrada do texto cifrado, mas sem a extensão. Ou ainda, pode sobre-escrever aquela convenção especificando um nome de texto saída do texto plano na linha de comando com a opção -o. Para as correspondências eletrônicas, este é um modo razoável de nomear o arquivo de texto plano, porque senão você tem que decidir o nome quando criptografá-lo e suas típicas mensagens de correio eletrônico muitas vezes originam-se de inúteis nomes de arquivo de texto plano originais como "para_phil.txt".

Mas quando o PGP encriptografa um arquivo de texto plano, sempre salva o nome do arquivo original e anexa-o ao texto plano antes de comprimí-lo e criptografá-lo. Normalmente, este nome original de arquivo escondido é excluído pelo PGP quando decritografa, mas você pode dizer ao PGP que quer mantê-lo e usá-lo como sendo o nome do arquivo saída do texto plano decriptografado. É útil se o PGP for usado em arquivos cujos nomes é importante conservar.

Para recuperar o nome do arquivo original do texto plano enquanto decritografa, acrescente a opção -p, assim:

pgp -p arquivo_de_texto_cifrado

Eu geralmente não uso esta opção, porque se o fizer cerca de metade da minha correspondência eletrônica seria decriptografada com os mesmos nomes de arquivo de texto plano como "para_phil.txt" ou "prz.txt".

Editando Seu UserID ou Sua Frase Senha

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Algumas vezes, você precisa mudar sua frase senha, talvez porque alguém olhou sobre seu ombro enquanto digitava.

Ou ainda, você precisa mudar seu userID, porque se casou e mudou seu nome, ou talvez mudou seu endereço eletrônico. Ou queira acrescentar um segundo ou terceiro userID a sua chave, porque você é conhecido por mais de um nome, endereço eletrônico ou cargo que ocupa. O PGP deixa que você anexe mais do que um userID a sua chave, qualquer um deles pode ser usado para verificar sua chave no anel de chave.

Para editar seu próprio userID ou frase senha para sua chave secreta:

pgp -kae userID [anel_de_chave]

O PGP lhe pergunta por um novo userID ou uma nova frase senha.

O parâmetro opcional [anel_de_chave], se especificado, deve ser um anel de chave pública e não um anel de chave secreta. O campo do userID deve ser seu próprio userID, que o PGP sabe que é seu porque aparece tanto em seu anel de chave pública quanto em seu anel de chave secreta. Apesar de você especificar somente o anel de chave pública, os dois anéis de chave serão atualizados.

O comando -kae trabalha diferente, dependendo se você usá-lo em uma chave pública ou secreta. Pode ser usado para editar os parâmetros confiáveis para uma chave pública.

Editando os Parâmetros Confiáveis Para Uma Chave Pública

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Algumas vezes, você precisa alterar os parâmetros confiáveis para uma determinada chave pública em seu anel de chave pública. Para uma discussão sobre quais são estes parâmetros confiáveis, veja a seção "Como que o PGP mantêm a trilha da chaves que são válidas?" no volume de Tópicos Essenciais do Guia do Usuário do PGP.

Para editar os parâmetros confiáveis para uma chave pública:

pgp -kae userID [anel_de_chave]

O parâmetro opcional [anel_de_chave], se especificado, deve ser um anel de chave pública e não um anel de chave secreta.

Verificando Se Tudo Está Bem no Seu Anel de Chave Pública

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Normalmente, o PGP verifica automaticamente todas as chaves novas ou assinaturas no seu anel de chave pública e atualiza todos os parâmetros confiáveis e números de validade. Teoricamente, ele mantêm atualizadas todas as informações sobre a posição(status) da validade de chaves a medida que é acrescentado ou deletado mais material de seu anel de chave pública. Mas talvez, você quer forçar explicitamente o PGP a desempenhar uma análise compreensiva de seu anel de chave pública, verificando todas as assinaturas certificadas, os parâmetros confiáveis, atualizando todos os números de validez e verificando sua própria chave definitivamente confiável com uma cópia de segurança em um disquete protegido contra escrita. Parece ser uma boa idéia fazer esta manutenção higiênica periodicamente para assegurar que não há nada de errado com seu anel de chave pública. Para forçar o PGP a desempenhar uma análise completa de seu anel de chave pública, use o comando -kac (key ring check):

pgp -kac

Você também pode fazer com que o PGP verifique todas as assinaturas de apenas uma simples chave pública selecionada, assim:

pgp -kac userID [anel_de_chave]

Para mais informações em como a cópia reserva de sua própria chave é verificada, veja a descrição do parâmetro BAKRING na seção do arquivo de configuração deste manual.

Verificando Uma Chave Pública Pelo Telefone

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Se conseguir a chave pública de alguém que não está certificada por ninguém que você confie, como você pode saber que a chave é realmente dela? O melhor modo de verificar uma chave não-certificada é através de um canal independente diferente daquele que você recebeu a chave. Uma maneira bem conveniente, se você conhece esta pessoa e se a reconheceria no telefone, é ligar e verificar sua chave pelo telefone. Melhor do que ler toda a sua chave (ASCII-blindada) para a pessoa no telefone, pode ler somente a "impressão digital" de sua chave. Para ver esta impressão digital, use o comando -kavc:

pgp -kavc userID [anel_de_chave]

Mostrará a chave com o resumo de 16 bytes dos componentes da chave pública. Leia esta impressão digital de 16 bytes para o proprietário da chave no telefone, enquanto ele a verifica com sua própria impressão, usando o mesmo comando -kavc no final.

Vocês podem verificar as chaves um do outro deste modo, e então, podem assinar as chaves um do outro com segurança. Esta é uma maneira segura e conveniente de conseguir a rede confiável de chave iniciada pelo seu círculo de amigos.

Observe que enviando uma impressão digital de chave por correio eletrônico não é a melhor maneira de verificar uma chave, porque esta pode ser interceptada e modificada. É melhor utilizar um canal diferente daquele que foi usado para enviar a chave. Uma boa combinação é enviar a chave por correio eletrônico e a impressão da chave através de uma conversa por telefone. Algumas pessoas distribuem suas impressões digitais de chave em seus cartões de apresentação, o que parece muito legal.

Se você não me conhece, não me ligue para verificar minha chave pelo telefone, eu recebo muitos telefonemas deste tipo. Desde que cada usuário do PGP tem uma cópia da minha chave pública, ninguém poderia falsificá-la devido as cópias que estão por aí. A discrepância logo seria notada por alguém que a tenha verificado de mais de uma fonte e a palavra logo sairia na Internet.

Controlando Grandes Anéis de Chave Pública

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

O PGP foi originalmente planejado para controlar pequenos anéis de chaves pessoais para conter todos os seus amigos, como um rolodex pessoal. Centenas de pares de chaves é um tamanho razoável para cada anel de chave. Mas, como o PGP tornou-se muito popular, as pessoas estão tentando agora acrescentar outros anéis de chave maiores para seus próprios anéis de chave. Algumas vezes, isto envolve a adição de milhares de chaves a seu anel de chave. O PGP, em sua forma atual, não pode desempenhar esta operação em um período razoável de tempo, enquanto espera em seu teclado. Não para anéis de chave enormes.

Você pode querer acrescentar um enorme anel de chave "importado" a seu próprio anel de chave, porque você está interessado somente em uma dúzia de chaves que estão em um grande anel de chave que está trazendo. Se é tudo isso que você quer de outro anel de chave, seria mais eficiente se extrair as poucas chaves que precisa de um grande anel de chave externo e então acrescentar somente estas chaves ao seu próprio anel de chave. Utilize o comando -kax para extraí-las do anel de chave externo, especificando o nome do anel de chave na linha de comando. Então acrescente estas chaves extraídas para seu próprio anel de chave.

A verdadeira solução é melhorar o PGP para utilizar técnicas avançadas de base de dados para gerenciar eficientemente grandes anéis de chave. Até isto acontecer, terá que usar somente os anéis de chave menores, melhor dizendo, seja paciente.

Usando o PGP Como Um Filtro do Estilo UNIX

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Os fas de UNIX estão acostumados a usar os "pipes" do UNIX para fazer duas aplicações trabalharem juntas. Ou seja, a saída de uma aplicação para ser alimentada diretamente através de um pipe a ser lido como saída por uma outra aplicação. Para este trabalho, as aplicações devem ser capazes de ler um material bruto originário da "saída padrão" e de escrever a saída terminal para a "saída padrão". O PGP pode operar neste modo. Se não entender o que isto significa, então você provavelmente não precisa desta característica.

Para usar um modo de filtro do estilo UNIX, lendo da entrada padrão e escrevendo a saída padrão, acrescente a opção -f, assim:

pgp -feast userID_do_destinatário <arq_entrada > arq_saída

Esta característica facilita que o PGP trabalhe com aplicações de correio eletrônico.

Quando utilizar o PGP no modo de filtro para decriptografar um arquivo de texto cifrado, você o achará útil quando usar a variável de ambiente PGPPASS para conservar a frase senha, de tal maneira que não lhe será perguntado. A característica PGPPASS será explicada abaixo.

Diminuindo Questões Desnecessárias: BATCHMORE

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Com a bandeira (flag) BATCHMORE ativada na linha de comando, o PGP não fará perguntas desnecessárias ou pedirá os nomes de arquivos alternativos. Aqui está um exemplo de como selecionar esta bandeira:

pgp +batchmode arquivo_cifrado

É útil para rodar o PGP não-interativamente a partir dos roteiros da shell de UNIX ou dos arquivos de lote do MSDOS. Alguns comandos de gerenciamento de chave ainda precisam da interação do usuário até quando está ativado BATCHMODE, assim os roteiros da shell precisam evitá-los.

BATCHMODE também pode ser ativado para verificar a validade de uma assinatura em um arquivo. Se não houver assinatura no arquivo, o código de saída será 1. Se houver uma assinatura boa, o código de saída será 0.

Forçando uma Resposta "Sim" Para questões confirmatórias: FORCE

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Esta flag de linha de comando faz com que o PGP admita "sim" como a resposta do usuário para o pedido de confirmação para sobre-escrever um arquivo existente, ou quando remover uma chave do anel de chave através do comando -kar. Aqui está um exemplo de como selecionar esta bandeira:

pgp +force arquivo_cifrado

ou: pgp -kar +force Smith

Esta característica é útil para rodar o PGP de maneira não-interativa a partir de um roteiro de shell UNIX ou arquivo de lote MSDOS.

O PGP Retorna a Posição de Saída Para Shell

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Para facilitar rodar o PGP em modo "lote", tal como de um arquivo ".bat" do MSDOS ou de um roteiro de shell UNIX, o PGP retorna a posição de saída errada para o shell. Um código de posição de saída igual a zero significa uma saída normal, enquanto que uma posição de saída diferente de zero indica que ocorreu algum tipo de erro. Condições diferentes de saída errada retornam a diferentes códigos de posição de saída para o shell.

Variável de Ambiente Para A Frase Senha

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Normalmente, o PGP pede ao usuário para digitar uma frase senha sempre que precisar dela para abrir uma chave secreta. Mas, é possível armazenar a frase senha em uma variável de ambiente do seu shell de comando do sistema operacional. A variável de ambiente PGPPASS pode ser usada para conservar a primeira frase senha que o PGP tentará usar. Se a frase senha armazenada na PGPPASS estiver incorreta, o PGP a corrige pedindo a frase senha correta ao usuário.

Por exemplo, em MSDOS, o comando shell:

SET PGPPASS= zaphod beeblebrox para presidente

eliminaria o pedido da frase senha se ela fosse realmente "zaphod beeblebrox para presidente".

Esta característica arriscada torna sua vida mais conveniente se você precisa regularmente lidar com um grande número de mensagens recebidas endereçadas a sua chave secreta, eliminando, assim, a necessidade de você digitar repetidamente sua frase senha toda vez que rodar o PGP.

Acrescentei esta característica por causa da demanda popular. Entretanto, esta é uma característica um tanto perigosa, porque mantêm sua preciosa frase senha armazenada em um outro lugar além de seu cérebro. Pior até, se você está particularmente despreocupado, ela pode até ser armazenada em um disco no mesmo computador que sua chave secreta. Particularmente, seria perigoso e estúpido de sua parte instalar este comando em um arquivo roteiro ou de lote, tal como o arquivo AUTOEXEC.BAT do MSDOS. Alguém poderia aparecer na sua hora de almoço e roubar tanto seu anel de chave secreta quanto o arquivo contendo sua frase senha.

Não consigo enfatizar o suficiente a importância deste risco. Se você tenciona usar esta característica, leia as seções "Exposição em Sistemas Multi-Usuários" e "Como proteger Chaves Secretas da Divulgação" neste volume e no volume de Tópicos Essenciais do Guia do Usuário do PGP.

Se você precisa usar esta característica, o modo mais seguro para fazê-lo seria digitar manualmente no comando shell o ajuste da PGPPASS toda vez que ligar (boot) sua máquina para começar a usar o PGP e então depois apagá-la ou desligar sua máquina quando terminar. Você definitivamente nunca deveria fazer isto em um ambiente onde outra pessoa pode ter acesso a sua máquina. Alguém poderia aparecer e simplesmente pedir ao seu computador para exibir o conteúdo da PGPPASS.

Ajustando Parâmetros de Configuração: CONFIG.TXT

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

O PGP tem um número de parâmetros ajustáveis pelo usuário que podem ser definidos em um arquivo de texto especial de configuração chamado "config.txt", no diretório apontado pela variável de ambiente do shell PGPPATH. Tendo um arquivo de configuração, isto possibilita ao usuário definir várias bandeiras e parâmetros para o PGP sem a obrigação de ter sempre que definí-los na linha de comando do PGP.

Os parâmetros de configuração podem ser determinados por números inteiros, valores de cadeia de caracteres ou valores ligados/desligados, dependendo de que tipo de parâmetro de configuração. Um exemplo de arquivo de configuração é fornecido pelo PGP, assim você pode ver alguns exemplos.

No arquivo de configuração, linhas em branco são ignoradas, assim como é o tudo que sucede o caractere de comentário "#". Palavras-chaves não diferenciam letras maiúsculas de minúsculas.

Aqui está um pequeno fragmento como exemplo de um típico arquivo de configuração:

# TMP é o diretório para os arquivos temporários do PGP, tal como um

disco RAM.

TMP = "e:\" # Pode ser sobre-escrito pela variável de ambiente TMP.

Armor = on # Use a bandeira -a para a blindagem ASCII sempre que

aplicável.

# CERT_DEPTH é como os apresentadores podem profundamente inserir

apresentadores.

cert_depth = 3

Se alguns parâmetros de configuração não estão definidos no arquivo de configuração, ou se não houver arquivo de configuração, ou ainda se o PGP não conseguir achá-lo, os valores para os parâmetros de configuração padronizam para um valor razoável qualquer.

Observe que é possível também ajustar estes mesmos parâmetros de configuração diretamente na linha de comando do PGP, precedendo o ajuste de parâmetros com um caracter "+". Por exemplo, os dois comando seguintes do PGP produzem o mesmo efeito:

pgp -e +armor=on mensagem.txt smith

ou: pgp -ea mensagem.txt smith

Segue um resumo dos vários parâmetros que podem ser definidos no arquivo de configuração.

TMP - Nome do caminho do diretório para arquivos temporários

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: TMP = ""

O parâmetro de configuração TMP específica qual diretório usar para arquivos temporários de trabalho do PGP. O melhor lugar para colocá-los é em um disco RAM, se você tiver um. Isto facilita bastante as coisas e aumenta um pouco a segurança. Se o TMP está indefinido, os arquivos temporários vão para o diretório atual. Se a variável de ambiente do shell TMP estiver definida, o PGP a usa para especificar onde os arquivos temporários devem ir.

LANGUAGE - Seletor de língua estrangeira

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: LANGUAGE = "en"

O PGP mostra vários pedidos (prompts), mensagens de advertência e pela tela aconselha o usuário. Por exemplo, mensagens como "Arquivo não encontrado." ou "Por favor, entre com sua frase senha:". Estas mensagens são normalmente em inglês. Mas, é possível fazer com que o PGP mostre suas mensagens ao usuário em outras línguas, sem ter que modificar o programa executável do PGP.

Um número de pessoas em vários países traduziram todas as mensagens mostradas pelo PGP, advertências e pedidos (prompts) para suas línguas nativas. Esta centena de séries de mensagens traduzidas foram colocadas em um arquivo de texto especial chamado "língua.txt", distribuído junto com a versão do PGP. As mensagens são armazenadas neste arquivo em inglês, espanhol, alemão, holandês, francês, italiano, russo, "1t3" para lituaniano, "1v" para Latvian, "esp" para esperanto. Por exemplo, se esta linha aparecer no arquivo de configuração:

LANGUAGE = "fr"

O PGP seleciona o francês como sendo a língua para mostrar suas mensagens. O ajuste padrão é o inglês.

Quando o PGP precisa mostrar uma mensagem ao usuário, ele procura no arquivo "língua.txt" a série de mensagens equivalentes na língua estrangeira selecionada e exibe aquela mensagem traduzida ao usuário. Se o PGP não conseguir encontrar o arquivo de série da língua, se a língua selecionada não está no arquivo, se aquela frase não estiver traduzida para a língua selecionada no arquivo ou ainda se aquela frase estiver totalmente perdida do arquivo, o PGP exibe a mensagem em inglês.

Para conservar o espaço de disco, muitas traduções estrangeiras não estão incluídas no pacote da versão padrão do PGP, mas estão disponíveis separadamente.

MYNAME - UserID padrão para produzir assinaturas

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: MYNAME = ""

O parâmetro de configuração MYNAME específica o userID padrão utilizado para selecionar a chave secreta e produzir assinaturas. Se MYNAME não estiver definido, será usada a chave secreta mais recente que você instalou no seu anel de chave secreta. O usuário também pode sobre-escrever este ajuste especificando um userID na linha de comando do PGP com a opção -u.

TEXTMODE - Considerando o texto plano como um arquivo texto

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: TEXTMODE = off

O parâmetro de configuração TEXTMODE é equivalente a opção -t da linha de comando. Se ativado, faz com que o PGP considere o texto plano como um arquivo de texto, não um arquivo binário, e o converte a um "texto canônico" antes de critografá-lo. O texto canônico tem um retorno de carro e um avanço de linha no final de cada linha do texto.

Este modo será desligado automaticamente se o PGP detectar que o arquivo de texto plano contem o que ele considera como sendo dados binários não-texto. Se, primeiramente, você quiser usar o PGP somente para propósitos de correio eletrônico, deve fazer: TEXTMODE=ON.

Para sistemas VAX/VMS, a versão atual do PGP padroniza TEXTMODE=ON.

Para maiores detalhes, veja a seção "Enviando arquivos de texto ASCII por diferentes ambientes de máquina".

CHARSET - Especifica o conjunto de caracteres locais para arquivos texto

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: CHARSET = NOCONV

Devido ao fato que o PGP tem que processar mensagens, em muitas línguas que não o inglês, com um conjunto de caracteres não-ASCII, será necessário que você diga ao PGP quais são os conjuntos de caracteres locais que sua máquina utiliza. Isto determina quais conversões de caracteres são desempenhadas quando os arquivos de texto planos são convertidos para e de um formato de texto canônico. É apenas uma referência se você esta em um ambiente não-ASCII e não em inglês.

O parâmetro de configuração CHARSET seleciona o conjunto de caracteres locais. As opções são NOCONV (sem conversão), LATIN1 (ISO 8859-1 Alfabeto Latino1), KOI8 (usado por muitos sistemas UNIX russos), ALT_CODES (usado por sistemas MSDOS russos), ASCII e CP850 (usado por muitas línguas européias ocidentais em PCs de MSDOS padrão).

LATIN1 é a representação interna usada pelo PGP para texto canônico, então se você selecionar LATIN1 nenhuma conversão é feita. Observe também que o PGP considera KO18 como LATIN1, mesmo sendo um conjunto de caracteres completamente diferente (russo), pois seria inútil de qualquer forma tentar converter KO18 para LATIN1 e para CP850. Isto significa que ajustar CHARSET para NOCONV, LATIN1 ou KO18 para o PGP é tudo equivalente.

Se você utiliza MSDOS e espera enviar ou receber tráfego de mensagens nas línguas européias ocidentais, ajuste CHARSET="CP850". Isto fará com que o PGP converta mensagens de texto canônico recebidas do LATIN1 para CP850 depois de decriptografar. Se você usar a opção -t (modo texto) para converter para texto canônico, o PGP converterá o seu texto CP850 para LATIN1 antes de criptografá-lo.

Para maiores detalhes, veja a seção "Enviando arquivos de texto ASCII por diferentes ambientes de máquina".

ARMOR - Ativa a saída da blindagem ASCII

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: ARMOR=off

O parâmetro de configuração ARMOR é equivalente a opção -a da linha de comando. Se ativado, faz com que o PGP emita o texto cifrado ou as chaves no formato ASCII Base-64 ajustável para serem transportados por canais de correio eletrônico. Arquivos de saída são nomeados com a extensão ".asc".

Se você pretende usar o PGP principalmente para propósitos de correio eletrônico, deve fazer ARMOR=ON.

Para maiores detalhes, veja a seção "Enviando o texto cifrado por canais de correio eletrônico: formato base-64" no volume de Tópicos Essenciais.

ARMORLINES - Tamanho dos arquivos multi-partes de blindagem ASCII

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: ARMORLINES = 720

Quando o PGP cria um arquivo de base-64 ".asc" muito grande, para enviar o texto cifrado ou as chaves por correio eletrônico, ele quebra o arquivo em pequenos pedaços para serem enviados pelos utilitários de correio da Internet. Normalmente, estes utilitários proíbem arquivos maiores que 50k bytes, o que significa que se limitarmos o número de linhas para cerca de 720, estaremos dentro do limite. Os pedaços dos arquivos são nomeados com sufixos ".as1", ".as2", ".as3", etc.

O parâmetro de configuração ARMORLINES específica o número máximo de linhas para separar cada pedaço em uma seqüência multi-parte de arquivo ".asc". Se você ajustá-lo para zero, o PGP não quebrará o arquivo em pedaços.

Arquivos de correio eletrônico da Fidonet, geralmente, tem um limite superior a 32K bytes, assim 450 linhas seria apropriado para ambientes de Fidonet.

Para maiores detalhes, veja a seção "Enviando o texto cifrado por canais de correio eletrônico: formato de base-64" no volume de Tópicos Essenciais.

KEEPBINARY-Mantem arquivos binários de textos cifrados depois de decriptografar

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: KEEPBINARY = off

Quando o PGP le um arquivo ".asc", ele reconhece que o arquivo está em formato de base-64 e o converte de volta a binário antes de processá-lo como sempre faz, produzindo como subproduto um arquivo de texto cifrado ".pgp" na forma binária. Depois de processar para decriptografar o arquivo ".pgp", o arquivo final de saída estará na forma normal de texto plano.

Você pode apagar o arquivo intermediário binário ".pgp", ou você pode fazer com que o PGP o apague automaticamente . Pode ainda re-executar o PGP no arquivo original ".asc".

O parâmetro de configuração KEEPBINARY ativado ou desativado mantêm o arquivo intermediário ".pgp" enquanto a decriptografa.

Para maiores detalhes, veja a seção "Enviando o texto cifrado por canais de correio eletrônico: Formato base-64" no volume de Tópicos Essenciais.

COMPRESS - Ativa a compressão

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: COMPRESS = on

O parâmetro de configuração COMPRESS ativa ou desativa a compressão de dados antes de criptografar. É usado principalmente para testar o PGP. Normalmente, o PGP tenta comprimir o texto plano antes de ser criptografado. Geralmente, é melhor que você deixe o PGP tentar comprimir o texto plano.

COMPLETES_NEEDED - Número de apresentadores totalmente confiáveis necessários

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: COMPLETES_NEEDED = 1

O parâmetro de configuração COMPLETES_NEEDED específica o número mínimo de apresentadores totalmente confiáveis necessários para certificar completamente a chave pública no seu anel de chave pública. Isto lhe dá uma maneira regular o ceticismo do PGP.

Para maiores detalhes, veja a seção "Como o PGP mantêm a trilha das chaves que são válidas?" no volume de Tópicos Essenciais.

MARGINALS_NEEDED - Número de apresentadores parcialmente confiáveis necessários

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: MARGINALS_NEEDED = 2

O parâmetro de configuração MARGINALS_NEEDED específica o número mínimo de apresentadores parcialmente confiáveis necessários para certificar totalmente uma chave pública no seu anel de chave pública. Isto lhe dá uma maneira de regular o ceticismo do PGP.

Para maiores detalhes, veja a seção "Como o PGP mantêm a trilha das chaves que são válidas?" no volume de Tópicos Essenciais.

CERT_DEPTH - Até onde os apresentadores podem ser ninhados

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: CERT_DEPTH = 4

O parâmetro de configuração CERT_DEPTH específica quantos níveis você pode aninhar apresentadores, para certificar que outros apresentadores certifiquem chaves públicas no seu anel de chave pública. Por exemplo, se CERT_DEPTH é ajustado para 1, pode haver somente uma camada de apresentadores abaixo da sua própria chave totalmente confiável. Se este for o caso, lhe será pedido para certificar diretamente as chaves públicas de todos os apresentadores confiáveis no seu anel de chave. Se você ajustar o CERT_DEPTH para 0, não terá absolutamente nenhum apresentador e terá que certificar diretamente cada e toda chave no seu anel de chave pública para poder usá-lo. O CERT_DEPTH mínimo é 0, o máximo é 8.

Para maiores detalhes, veja a seção "Como o PGP mantêm a trilha das chaves que são válidas?" no volume de Tópicos Essenciais.

BAKRING - Nome do arquivo para o anel de chave secreta reserva

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: BAKRING = ""

Todos os certificados de chave que o PGP faz no seu anel de chave pública depende principalmente da sua própria chave (ou chaves) totalmente confiável. Para detectar qualquer falsificação do seu anel de chave pública, o PGP verifica se sua própria chave não foi falsificada. Para fazer isto, o PGP compara sua chave pública com uma cópia reserva da sua chave secreta que está em algum meio resistente a falsificação, tal como um disquete protegido contra escrita. Uma chave secreta contem todas as informações que a sua chave pública tem e mais alguns componentes secretos. Isto significa que o PGP pode verificar sua chave pública com uma cópia reserva da sua chave secreta.

O parâmetro de configuração BAKRING específica qual nome do caminho que deve ser usado para a cópia reserva confiável do PGP de seu anel de chave secreta. Em MSDOS, você poderia ajustá-lo para "A:\secring.pgp" para direcioná-lo a uma cópia reserva protegida contra escrita do seu anel de chave secreta na sua unidade de disco flexível. Esta comparação é desempenhada somente quando você executa a opção do PGP -kac para verificar todo o seu anel de chave pública.

Se o BAKRING não estiver definido, o PGP não verificará sua própria chave com nenhuma cópia reserva.

Para maiores detalhes, veja a seção "Como proteger chaves públicas de falsificações" e "Como o PGP mantêm a trilha das chaves que são válidas?" no volume de Tópicos essenciais.

PUBRING - Nome do arquivo para seu anel de chave pública

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: PUBRING = "$PGPPATH/pubring.pgp"

Você pode manter seu anel de chave pública em um diretório separado do seu arquivo config.txt no diretório especificado pela sua variável de ambiente $PGPPATH. Ajustando o parâmetro PUBRING, também pode especificar o caminho completo e o nome do arquivo para seu anel de chave pública. Por exemplo, em um sistema MSDOS, você poderia manter seu anel de chave pública em um disquete, fazendo:

PUBRING = "a:pubring.pgp"

Esta característica é manuseada especialmente quando especifica-se um anel

de chave alternativo na linha de comando.

SECRING - Nome do arquivo para seu anel de chave secreta

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: SECRING = "$PGPPATH/secring.pgp"

Você pode manter seu anel de chave secreta em um diretório separado do seu arquivo config.txt em um diretório especificado pela sua variável de ambiente $PGPPATH. Isto é feito colocando seu anel de chave secreta em um diretório ou dispositivo que está mais protegido do que seu anel de chave pública. Ajustando o parâmetro SECRING, também pode especificar o caminho completo e o nome do arquivo para seu anel de chave secreta. Por exemplo, em um sistema MSDOS, você pode manter seu anel de chave secreta em um disquete, fazendo:

SECRING = "a:secring.pgp"

RANDSEED - Nome do arquivo para a origem do número aleatório

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: RANDSEED = "$PGPPATH/randseed.bin"

Você pode manter seu arquivo de origem do número aleatório (para gerações de chaves de seção) em um diretório separado do seu arquivo config.txt, especificado pela sua variável de ambiente $PGPPATH. Isto é feito colocando seu arquivo de origem do número aleatório em um diretório ou dispositivo que seja mais protegido que seu anel de chave pública. Ajustando o parâmetro RANDSEED, também pode especificar o caminho completo e o nome do arquivo para seu arquivo de origem do número aleatório. Por exemplo, em um sistema MSDOS, poderia mantê-lo em um disquete, fazendo:

RANDSEED = "a:randseed.bin"

PAGER - Seleciona o comando shell para exibir a saída de texto plano

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: PAGER = ""

Se você usar a opção -m (more) enquanto decriptografa, o PGP permite que você veja a saída do texto plano decriptografado na tela (como no comando "more" do UNIX), sem escrevê-lo para um arquivo. Isto mostra o texto plano decriptografado na sua tela, uma tela cheia de cada vez.

Se você preferir usar um utilitário para mostrar uma pagina mais requintada, melhor do que a apresentada pelo PGP, pode especificar o nome do comando shell que o PGP chama para exibir seu arquivo de saída do texto plano. O parâmetro de configuração PAGER específica o comando shell que deve chamar para exibir o arquivo. Por exemplo, em um sistema MSDOS, você poderia usar o program comum de software compartilhado "list.com" para mostrar sua mensagem de texto plano. Considerando que você tenha uma cópia do "list.com", pode ajustar o PAGER em conformidade:

PAGER = "list"

Entretanto, se o remetente especificou que este arquivo é apenas para seus olhos e não pode ser escrito em disco, o PGP sempre usa sua função própria para exibir um texto.

Para maiores detalhes, veja a seção "Exibindo o texto plano decriptografado em sua tela".

SHOWPASS - Ecoa a frase senha ao usuário

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: SHOWPASS = off

Normalmente, o PGP não permite que você veja sua frase senha quando a digita. Isto faz com que se torne mais difícil alguém ver sobre seus ombros enquanto digita e aprender sua frase senha. Mas, algumas pessoas tem problemas em digitar suas frases senhas sem ver o que estão digitando, podem estar digitando em um lugar privado ou em seus próprios lares. Assim, perguntam se o PGP pode ser configurado para que seja mostrado suas frases senha enquanto as digitam.

O parâmetro de configuração SHOWPASS ativado faz com que o PGP ecoe sua digitação enquanto você entra com sua frase senha.

TZFIX - Ajuste de área de fuso

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: TZFIX = 0

O PGP fornece o fuso horário para as chaves e certificados de assinaturas de acordo com Greenwich (GMT - Greenwich Mean Time) ou com a hora de coordenada (UTC - Coordenated Universal Time), o que significa a mesma coisa para o que queremos. Quando o PGP pergunta ao sistema a hora do dia, é dever do sistema providenciá-lo em GMT.

Mas, algumas vezes, por causa dos sistemas MSDOS estarem impropriamente configurados, a hora do sistema retorna a hora de tempo americano padrão da costa do Pacífico (US Pacific Standard Time) com mais 8 horas. Parece estranho, não é? Talvez seja por causa de algum tipo de jingoismo da costa ocidental americana, o MSDOS pressupõe que a hora local seja a hora da costa americana do pacífico e corrige previamente a hora da costa do pacífico para GMT. Em oposição, isto afeta o comportamento da função interna de tempo de GMT que o PGP usa. Entretanto, se sua variável de ambiente do MSDOS TZ já estiver propriamente definida para sua área de fuso, ele corrige o conceito errado que o MSDOS tem de que todo mundo vive na costa ocidental dos Estados Unidos.

O parâmetro de configuração TZFIX específica o número de horas a acrescentar a função de tempo do sistema para chegar a GMT, para fusos horários de GMT em chaves e assinaturas. Se a variável de ambiente do MSDOS TZ estiver propriamente definida, pode deixar TZFIX=0. Os sistemas UNIX geralmente não devem precisar se preocupar em ajustar o TZFIX. Mas se você estiver usando algum outro sistema operacional desconhecido que não conheça GMT, terá que usar TZFIX para ajustar o tempo do sistema para GMT.

Em sistemas MSDOS que não possuem o TZ definido no ambiente, deverá fazer TZFIX=0 para a Califórnia, -1 para o Colorado, -2 para Chicago, -3 para Nova Iorque, -8 para Londres, -9 para Amsterdã. No verão, o TZFIX deve ser diminuído manualmente a partir destes valores. Que bagunça!

Seria mais fácil ajustar sua variável de ambiente TZ no seu arquivo AUTOEXEC.BAT, e não usar a correção TZFIX. Então, o MSDOS lhe dá bons fusos horários GMT e manuseará para você ajustes de tempo salvos das horas do dia. Aqui estão algumas linhas como exemplo para serem inseridas no AUTOEXEC.BAT, dependendo da sua área de fuso:

Para Los Angeles: SET TZ=PST8PDT

Para Denver: SET TZ=MST7MDT

Para Arizona: SET TZ=MST7

(o Arizona nunca usa tempo salvo das horas do dia)

Para Chicago: SET TZ=CST6CDT

Para Nova Iorque: SET TZ=EST5EDT

Para Londres: SET TZ=GMT0BST

Para Amsterdã: SET TZ=MET-1DST

Para Moscou: SET TZ=MSK-3MSD

Para Aukland: SET TZ=NZT-13

CLEARSIG - Ativa mensagens assinadas a serem encapsuladas como texto claro

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: CLEARSIG = on

Normalmente, as mensagens assinadas do PGP, não-criptografadas, tem um certificado de assinatura na forma binária. A mensagem assinada também é compressada e devolvida de forma ilegível para olhos humanos, apesar da mensagem não estar realmente criptografada. Para enviar este dado binário por canais de 7 bits de correio eletrônico, a blindagem ASCII de base-64 é aplicada (veja o parâmetro ARMOR). Mesmo se o PGP não comprimir a mensagem, a blindagem ASCII ainda a devolverá ilegível aos olhos humanos. O destinatário terá que usar o PGP para retirar a blindagem e descomprimí-la antes de ler a mensagem.

Se a mensagem do texto plano original está na forma de texto (não binária), existe um modo de enviar uma mensagem assinada por um canal de correio eletrônico, de tal forma que esta mensagem não seja comprimida e a blindagem ASCII seja aplicada somente ao certificado binário de assinatura, mas não a mensagem de texto plano. A bandeira CLEARSIG fornece esta característica útil, tornando possível gerar uma mensagem assinada que pode ser lida por olhos humanos, sem a ajuda do PGP. Claro que você ainda precisará dele para verificar se a assinatura é verdadeira.

A bandeira CLEARSIG é pré-ajustada para "on", começando na versão 2.5 do PGP. Para ativar a ação completa do CLEARSIG, as bandeiras ARMOR e TEXTMODE também devem ser ativadas. Ajuste ARMOR=ON (ou use a opção -a) e ajuste TEXTMODE=ON (ou use a opção -t). Se seu arquivo config tiver com o parâmetro CLEARSIG desligado, pode ativá-lo novamente diretamente na linha de comando, assim:

pgp -sta +clearsig=on mensagem.txt

Esta representação da mensagem é análoga ao tipo de mensagem MIC-CLEAR usado no Correio Otimizado Privado da Internet (PEM - Privacy Enhanced Mail). É importante observar que este método apenas aplica a blindagem ASCII no certificado binário de assinatura e não no próprio texto da mensagem, existem alguns riscos que a mensagem não protegida pode sofrer, alguns danos acidentais enquanto estiver en route. Isto pode acontecer se ela passar por qualquer portão de correio eletrônico que desempenha conversões de conjuntos de caracteres ou, em alguns casos, se espaços extras forem acrescentados ou removidos dos finais das linhas. Se isto ocorrer, a assinatura vai falhar ao verificar, o que pode dar uma indicação falsa de uma falsificação intencional. Mas, o PEM deixa uma vulnerabilidade similar, então parece que é válido ter esta característica em vez dos riscos.

A partir da versão 2.2 do PGP, os espaços em branco trilhados em cada linha são ignorados quando calculado a assinatura para o texto no modo CLEARSIG.

VERBOSE - Mensagens secretas, normais ou secretas

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: VERBOSE = 1

O parâmetro VERBOSE pode ser ajustado para 0, 1 ou 2, dependendo de quanto você quer ver de detalhes nas mensagens de diagnóstico do PGP. Os ajustes são:

0 - Exibe as mensagens somente se houver um problema. Os usuários de UNIX quiseram este ajuste como sendo o "modo silencioso".

1 - Ajuste padrão normal. Exibe uma quantidade razoável de detalhes em mensagens de diagnóstico ou de consultoria.

2 - Exibe a informação máxima, geralmente ajuda a diagnosticar os problemas no PGP. Não é recomendado para uso comum. Além disso, o PGP não tem problemas, certo?

INTERACTIVE - Pede confirmação para adicional chaves

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: INTERACTIVE = off

Ativando este modo significará que se você acrescentar um arquivo de chave contendo chaves múltiplas para seu anel de chave, o PGP pedirá uma confirmação para cada chave antes de acrescentá-la ao seu anel de chave.

NOMANUAL - Deixa o PGP gerar chaves sem o manual

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ajuste padrão: NOMANUAL = off

É importante que a versão freeware do PGP não seja distribuída sem a documentação ao usuário que, normalmente vem com ela no pacote da versão padrão. Este manual, contem informações importantes para utilizar o PGP, assim como importantes observações legais. Mas algumas pessoas distribuiram versões anteriores do PGP sem o manual, causando muitos problemas para muitas pessoas que as conseguiram. Para desencorajar a distribuição do PGP sem a documentação necessária, o PGP tem sido mudado para que seja necessário o Guia do Usuário do PGP que pode ser encontrado em qualquer lugar no seu computador (como no seu diretório PGP), antes que o PGP deixe você gerar um par de chaves. Entretanto, alguns usuários gostam de usar o PGP em pequenos computadores laptops com capacidade limitada de armazenamento, assim rodaram o PGP sem a presente documentação em seus sistemas. Para satisfazê-los, o PGP pode ser ajustado para deixar de lado alguns de seus requisitos sobre o manual, ativando a bandeira NOMANUAL na linha de comando durante a geração da chave, desta forma:

pgp -kag +nomanual

A bandeira NOMANUAL somente pode ser ajustada na linha de comando, não no arquivo config. Desde que você tenha lido este manual para aprender como ativar esta característica de passar por cima, espero que isto ainda seja eficaz no desencorajamento da distribuição do PGP sem o manual.

Uma Breve Olhada Sobre o Que Está Debaixo do Pano

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Vamos dar uma olhada em algumas características internas do PGP.

Números Aleatórios

^^^^^^^^^^^^^^^^^^

O PGP utiliza um gerador pseudoaleatório criptograficamente forte para criar chaves convencionais de sessão temporária. O arquivo de origem para este propósito é chamado "randseed.bin". Este também pode ser mantido em qualquer diretório que for indicado pela variável de ambiente PGPPATH. Se este arquivo de origem aleatória não existir, é criado automaticamente e originado com números verdadeiramente aleatórios derivados da sincronização de suas latências das teclas.

Este gerador re-origina o arquivo de disco cada vez que é usado, misturando material novo de chave parcialmente derivada da hora do dia com outras fontes verdadeiramente aleatórias. Ele usa o algoritmo convencional de criptografia como um motor para o gerador de número aleatório. O arquivo de origem contem o material de origem aleatória e o material de chave aleatória para encaixar em um motor convencional de criptografia para o gerador aleatório.

Este arquivo de origem aleatória deve estar, pelo menos, levemente protegido da exposição, para reduzir o risco de um atacante derivar suas chaves de sessão próximas ou anteriores. O ataque teria dificuldade ao tentar conseguir algo útil capturando este arquivo de origem aleatória, porque o arquivo é revisado (laundered) criptograficamente antes e depois de cada uso. Apesar disso, parece prudente tentar pelo menos evitar que caia em mãos erradas.

Se você não se sente bem em confiar em qualquer fonte aleatória algoritmicamente derivada, embora sejam fortes, lembre-se que você já confiava na força da mesma codificação convencional para proteger suas mensagens. Se for ela forte suficiente para isso, então também deveria ser forte suficiente para ser usada como uma fonte de números aleatórios para as chaves de sessão temporárias. Observe que o PGP ainda usa números realmente aleatórios de fontes físicas (principalmente de sincronizações de teclado) para gerar pares de chaves pública/secreta de longas expressões.

Algoritmo Convencional de Criptografia do PGP

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Como descrito anteriormente, o PGP "autocarrega" um algoritmo convencional de criptografia de chave simples usando um algoritmo de chave pública para criptografar a chave convencional de sessão e então trocar para criptografia convencional rápida. Então, vamos falar sobre este algoritmo convencional de criptografia. Não é o DES!

O Padrão Federal de Criptografia de Dados (DES - DATA Encryption Standard) é considerado como um bom algoritmo para a maioria das aplicações comerciais. Mas o Governo nunca confiou no DES para proteger seus próprios dados confidenciais, porque o comprimento da chave DES é de apenas 56 bits, muito pequena para um ataque forte e intenso. A DES de 16 voltas completas também tem sido atacada com algum sucesso por Biham e Shamir usando criptoanálises diferenciais e por Matsui usando criptoanálise linear.

O Ataque prático mais devastador 'a DES foi descrito na Conferência de Criptografia de 1993, onde Michael Wiener do Centro Bell de Pesquisa do Noroeste apresentou um documento sobre como quebrar a DES com uma máquina especial. Ele planejou e testou totalmente um chip que advinha, até achar a correta, 50 milhões de chaves de DES por segundo. Apesar de ter impedido a construção de chips reais, estes podem ser conseguidos manufaturados por $10,50 cada e por 1 milhão de dolares podem ser construídos 57.000 desses em uma máquina especial, que podem testar cada chave DES em 7 horas, mediando uma solução em 3,5 horas. Por 1 milhão de dólares o chip pode ser escondido no orçamento de muitas companhias. Por 10 milhões de dólares, leva-se 21 minutos para quebrar uma chave e por 100 milhões apenas dois minutos. Com o valor de qualquer grande orçamento do governo para examinar o tráfego de DES, pode-se quebrar em questão de segundos. Isto significa que a DES reta de 56 bits é hoje totalmente condenada para uso em propósitos de serias aplicações de segurança de dados.

Um possível sucessor para a DES pode ser uma variação conhecida como "DES tripla", que usa duas chaves de DES para criptografar três vezes, obtendo um espaço de chave real de 112 bits. Uma versão futura do PGP pode suportar e ter como uma opção a DES tripla.

O PGP não usa a DES como seu algoritmo convencional de chave simples para criptografar mensagens. Pelo contrário, o PGP usa um algoritmo diferente de bloque convencional de criptografia de chave pública, chamado IDEA (tm).

Para o interessado em criptografia, a codificação IDEA tem um tamanho de bloco de 64 bits para o texto plano e para o texto cifrado. Usa um tamanho de chave de 128 bits. É baseado no conceito de projeto de "misturar operações de diferentes grupos algébricos". Roda mais rápido em software do quem a DES. Como a DES, pode ser usada em modos de realimentação cifrada (CFB) e encadeamento de bloco cifrado (CBC). O PGP a usa em modo CFB de 64 bits.

A codificação de bloco IPES/IDEA foi desenvolvida na ETH em Zurique por James L. Massey e Xuejia Lai e publicada em 1990. Não é um algoritmo "home-grown". Seus projetistas tem uma reputação bastante ilustre na comunidade criptológica. Trabalhos publicados anteriormente sobre este algoritmo o chamaram IPES (Improved Proposed Encryption Standard - Padrão Melhorado de Criptografia Proposta), mas, mais tarde mudaram para o nome para IDEA (International Data Encryption Algorithm - Algoritmo Internacional de Criptografia de Dados). Desta forma, a IDEA resistiu melhor a ataques do que outras codificações tais como FEAL, REDOL-II, LOKI, Snefru e Knafre. Provas recentes indicam que a IDEA é mais resistente do que a DES aos ataques bem-sucedidos de criptoanálises diferenciais de Biham & Shamir. Biham e Shamir, ainda sem sucesso, estão examinando a codificação IDEA para encontrar fraquezas. Grupos de criptoanalistas acadêmicos na Bélgica, Inglaterra e Alemanha, assim como os serviços militares de muitos países europeus, também estão tentando atacá-lo. Assim, esta nova codificação continua atraindo outras tentativas de ataque da maioria dos formidáveis quartéis do mundo criptoanalítico, a confiança no IDEA está crescendo com o passar do tempo.

De vez em quando, recebo cartas de pessoas que tenham acabado de descobrir a terrível verdade: o PGP não usa RSA pura para criptografar grandes quantidades de dados. Elas ficam preocupadas, pois, se usarmos um esquema de chave pública híbrida e convencional somente para acelerarmos as coisas, o pacote todo fica enfraquecido. No final das contas, uma corrente é igualmente forte a sua ligação mais fraca. Elas exigem uma explicação para este "compromisso" aparente de força do PGP. Isto talvez porque ficaram surpreendidas pelo respeito do público e influenciadas pela força e pelo mistério da RSA, acreditando erroneamente que a RSA é intrinsicamente mais forte que qualquer codificação convencional. Bem, não é não.

As pessoas que trabalham em pesquisa de fatoração dizem que a carga de trabalho necessária para consumir todas as possíveis chaves de 128 bits na codificação IDEA igualaria a carga de trabalho de fatoração necessária para quebrar uma chave de 3100 bits, o que é um pouco maior que o tamanho da chave RSA de 1024 bits que a maioria das pessoas usam em aplicações de alta segurança. Dada os limites dos tamanhos das chaves e considerando que não existe fraquezas escondidas na codificação convencional, a fraca ligação nesta abordagem híbrida está no algoritmo de chave pública e não na codificação convencional.

Não é ergonomicamente prático usar RSA pura com chaves grandes para criptografar e decriptografar mensagens longas. Uma chave RSA de 1024 bits decriptografaria mensagens cerca de 4.000 vezes mais lento que a codificação IDEA. Certamente, no mundo real, ninguém faz isto desta maneira. Muitas pessoas, pouco experientes em criptografia, não percebem que a atração da criptografia por chave pública não está no fato de ela ser intrinsicamente mais forte do que uma codificação convencional, mas sua simpatia está no fato de que ela lhe ajuda a gerenciar as chaves mais convenientemente.

A RSA não é apenas muito lenta para ser usada em dados muitos grandes, mas também possui determinadas fraquezas que podem ser aproveitadas em alguns casos especiais de tipos particulares de mensagens que são alimentadas pela codificação RSA. Estes casos especiais podem ser evitados usando-se uma abordagem híbrida da RSA para criptografar chaves aleatórias de sessão para uma codificação convencional. Assim, a linha base é esta: usando RSA pura em dados muito grandes é uma abordagem errada, período. É muito lenta, não é muito forte e ainda pode ser mais fraca. Se você achar uma aplicação de software que utiliza RSA pura em dados muito grandes, provavelmente significa que o executador não entende desses assuntos.

Compressão de Dados

^^^^^^^^^^^^^^^^^^^

O PGP normalmente comprime o texto plano antes de encriptografá-lo. Depois de criptografado e tarde demais para comprimí-lo, pois os dados criptografados estão incompreensíveis. A compressão de dados economiza o tempo de transmissão de modem, o espaço em disco e, o mais importante, fortifica a segurança criptográfica. Muitas técnicas de criptoanálise exploram certas redundâncias encontradas no texto plano para tentar quebrar sua codificação. A compressão de dados reduz esta redundância no texto plano, aumentando desse forma a resistência em relação a criptoanálise. Demora um pouco mais para comprimir o texto plano, mas do ponto de vista da segurança parece valer a pena, pelo menos em minha prudente opinião.

Arquivos que são muito pequenos ou somente que não comprimem bem não são comprimidos pelo PGP.

Se você preferir, pode usar PKZIP para comprimir o texto plano antes de criptografá-lo. O PKZIP e uma utilidade muito eficaz de compressão de software compartilhado e amplamente disponível, na PKWare, Inc. Ou ainda, você pode usar ZIP, uma utilidade de compressão de freeware compatível em UNIX e outros sistemas ao PKZIP, que está disponível no Jean-houp Gailly. Em certos casos, existem algumas vantagens em usar PKZIP ou ZIP, porque diferente do algoritmo de compressão embutido do PGP, o PKZIP e ZIP apresenta uma ótimo desempenho nos arquivos de múltipla compressão dentro de um arquivo simples comprimido, que, quando descomprimido, é reconstituído novamente em arquivos separados. O PGP não tentará comprimir um arquivo de texto plano que já foi comprimido. Depois de decriptografar, o destinatário pode descomprimir o texto plano com o PKUNZIP. Se o texto plano decriptografado é um arquivo PKZIP comprimido, o PGP automaticamente o reconhece, isto é, avisa ao destinatário que o texto plano decriptografado é um arquivo PKZIP.

Para os leitores tecnicamente curiosos, a versão atual do PGP usa as rotinas freeware de compressão ZIP escritas por Jean-houp Gailly, Mark Adler e Richard B. Wales. Este software ZIP usa algoritmos de compressão funcionalmente equivalentes aqueles usados pelo novo PKZIP 2.0 da PKWare. O software de compressão ZIP foi selecionado pelo PGP principalmente devido a sua livre disponibilidade de código fonte C portátil e porque tem uma proporção de compressão realmente boa, além de rápido.

Peter Gutmam também escreveu uma ótima utilidade de compressão chamada HPACK, disponível de graça em muitos sítios FTP da Internet. Ele criptografa os arquivos comprimidos usando formatos de dados do PGP e anéis de chave. Ele me pediu para que mencionasse isso aqui.

Resumos de Mensagens e Assinaturas Digitais

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Para criar uma assinatura digital, o PGP criptografa com sua chave secreta. Entretando, o PGP na verdade não criptografa toda a sua mensagem com sua chave secreta, pois levaria muito tempo. Ao contrário, o PGP criptografa um "resumo da mensagem".

O resumo da mensagem e um "destilado" compacto (128 bits) de sua mensagem, similar ao conceito de uma soma de verificação. Você também pode pensar que é como uma "impressão digital" da mensagem. O resumo da mensagem "representa" sua mensagem, de tal forma que se a mensagem for alterada de alguma forma, seria computado um resumo diferente da mensagem. Assim torna possível detectar qualquer mudança feita na mensagem por um falsificador. Um resumo da mensagem é computado usando uma função hash criptograficamente forte da mensagem. Seria computacionalmente impossível para um atacante inventar uma mensagem substituta que produza um resumo idêntico da mensagem. Em relação a isso, um resumo da mensagem e muito melhor do que uma soma de verificação, porque é mais fácil inventar uma mensagem diferente que produzir a mesma soma de verificação. Mas, como uma soma de verificação, você não conseguiria inventar a mensagem original de seu resumo da mensagem.

Somente um resumo da mensagem não e suficiente para autenticar uma mensagem. O algoritmo do resumo da mensagem e conhecido publicamente e não requer conhecimento de nenhuma das chaves secretas para ser calculado. Se tudo que fizéssemos fosse unir um resumo da mensagem a uma mensagem, então um falsificador conseguiria alterar uma mensagem e unir simplesmente um novo resumo da mensagem calculado a partir da nova mensagem alterada. Para fornecer uma autenticação verdadeira, o remetente tem que criptografar (assinar) o resumo da mensagem com sua chave secreta.

Um ressumo da mensagem é calculado a partir da mensagem do remetente. A chave secreta do remetente é usada para criptografar o resumo da mensagem e o fuso horário eletrônico, formando assim uma assinatura digital, ou um certificado de assinatura. O remetente envia a assinatura digital junto com a mensagem. O destinatário recebe a mensagem e a assinatura digital e recupera o resumo original da mensagem a partir da assinatura digital criptografando-o com a chave pública do remetente. O destinatário computa um novo resumo da mensagem e verifica se este combina com aquela recuperada a partir da assinatura digital. Se combinar, então isto prova que a mensagem não foi alterada e veio do remetente que tem a chave pública que foi usada para verificar a assinatura.

Um falsificador em potencial teria que produzir também uma mensagem alterada que produzisse um resumo idêntico da mensagem (o que é impossível), ou ele teria que criar uma nova assinatura digital a partir de um resumo diferente da mensagem (também impossível, sem saber a chave secreta do remetente).

As assinaturas digitais provam quem enviou a mensagem e que esta também não foi alterada por um erro ou um projeto. Também fornece a não-repudiação, o que significa que será difícil para o remetente desaprovar facilmente sua assinatura na mensagem.

A utilização dos resumos das mensagens para formar assinaturas digitais apresenta outras vantagens, além de ser mais rápido do que assinar diretamente toda a mensagem verdadeira com a chave secreta. A utilização dos resumos das mensagens permite que as assinaturas sejam de um pequeno tamanho padrão fixo, sem considerar o tamanho da mensagem verdadeira. Também permite que o software verifique automaticamente a integridade da mensagem, de uma forma similar ao uso de somas de verificação. Permite que as assinaturas sejam armazenadas separadamente das mensagens, talvez até em um arquivo público, sem revelar informações sensíveis sobre as mensagens verdadeiras, porque ninguém conseguiria inventar um conteúdo de mensagem a partir de um resumo de mensagem.

O algoritmo do resumo de mensagem usado aqui é o algoritmo do resumo de mensagem MD5, localizado no domínio público da Segurança de Dados RSA, Inc. O projetista do MD5, Ronald Rivest, escreveu isto:

"É conjecturado que a dificuldade de igualar duas mensagens que tenham o mesmo resumo de mensagem está na ordem de operações 2^64 e que a dificuldade de igualar qualquer mensagem que tenha um determinado resumo de mensagem está na ordem das operações 2^128. O algoritmo MD5 foi cuidadosamente escrutinado por fraquezas. É, entretanto, um algoritmo relativamente novo e análises de segurança mais fortes são realmente justificadas, como é o caso de uma proposta nova deste tipo. O nível de segurança fornecido pelo MD5 deveria ser suficiente para implementar esquemas híbridos de assinatura digital de alta segurança baseados no MD5 e no criptosistema de chave pública RSA."

Compatibilidade com Versões Anteriores do PGP

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

A versão 2.6 do PGP consegue ler qualquer coisa que foi produzida pelas versões 2.3, 2.3a, 2.4 ou 2.5. Entretanto, devido a um acordo negociado entre o MIT e a Segurança de Dados RSA (RSA Data Security), o PGP 2.6 mudará um pouco seu comportamento em 1o. de setembro de 1994, acionado por um cronômetro de software embutido. Nesta data, a versão 2.6 começará a produzir um formato novo de dados levemente diferente para mensagens, assinaturas e chaves. O PGP 2.6 ainda será capaz de ler e processar mensagens, assinaturas e chaves produzidos sob o formato antigo, mas gerará o formato novo. Esta mudança incompatível tem a intenção de desencorajar as pessoas de continuar a usar as versões mais antigas (2.3a e anteriores) do PGP, cujos conteúdos dos Associados da Chave Pública violam sua patente RSA (veja a seção sobre assuntos legais). O PGP 2.4, distribuído pela Viacrypt (veja a seção Onde Conseguir uma Versão Comercial do PGP) evita a infração através do acordo de licença da Viacrypt com os Associados da Chave Pública. O PGP 2.5 e 2.6 evita esta infração usando o Kit de Ferramenta Criptográfico RSAREF (tm) com a licença da Segurança de Dados RSA, Inc.

Fora dos Estados Unidos, a patente RSA não está em vigor, assim os usuários do PGP estão livres para usar implementações do PGP que não precisem da RSAREF e suas restrições. Esperançosamente, implementadores das versões do PGP fora dos Estados Unidos também optarão pelo novo formato, cuja descrição detalhada está disponível no MIT. Se todos se atualizarem antes de 1o. de setembro de 1994, ninguém experimentará nenhuma descontinuidade na inter-operabilidade.

Esta mudança de formato que começou na versão 2.6 é igual a um processo que acontece naturalmente quando novas características são acrescentadas, fazendo com que versões mais velhas do PGP sejam incapazes de ler coisas do PGP mais novo, enquanto a versão mais nova ainda consegue ler as coisas velhas. A única diferença é que, ao invés de ser uma atualização técnica, é uma "atualização legal". É uma mudança que vale a pena, se isto conseguir nos trazer paz.

De acordo com a Viacrypt, que vende uma versão comercial do PGP, seu PGP envolverá a manutenção da inter-operabilidade com novas versões de freeware do PGP.

Existe uma outra mudança que afeta a inter-operabilidade com versões anteriores do PGP. Infelizmente, devido as limitações do formato de dados impostas pela RSAREF, o PGP 2.5 e 2.6 não consegue interpretar nenhuma mensagem ou assinatura feita com a versão 2.2 ou anterior. Não podemos fazer mais nada sobre isto, pois a única escolha que temos é usar os novos formatos de dados, devido a exigência legal de mudar para RSAREF.

Começando com a versão 2.4 (foi a primeira versão da Viacrypt) até pelo menos a 2.6, o PGP não permite que você gere chaves RSA maiores que 1024 bits. O limite máximo sempre foi 1024 bits. Mas, por causa de um erro em versões anteriores, foi possível gerar chaves maiores que 1024 bits. Estas chaves grandes causaram problemas de inter-operabilidade entre diferentes versões antigas do PGP que utilizam algoritmos aritméticos diferentes com diferentes tamanhos naturais de palavras. Em algumas plataformas, o PGP limitou as chaves grandes. Em acréscimo a estes problemas antigos de tamanho de chave, o limite de 1024 bits agora é obrigatório para a RSAREF. Uma chave de 1024 bits está praticamente fora dos ataques feitos por governos maiores.

Em geral, existe uma compatibilidade da versão 2.0 até a 2.4. Devido ao fato de novas características serem acrescentadas, versões antigas nem sempre conseguem trabalhar com alguns arquivos criados com as versões mais novas. Por causa das mudanças maciças em todos os algoritmos e estruturas de dados, a versão 2.0 do PGP (e posteriores) não é nada compatível com a versão 1.0 do PGP, que ninguém usa mais.

Vulnerabilidades

^^^^^^^^^^^^^^^^

Nenhum sistema de segurança de dados e impenetrável. O PGP pode ser cercado de vários modos. Em qualquer sistema de segurança de dados, tem que se perguntar se a informação que esta tentando proteger e mais valiosa para o ata cante do que o custo do ataque. Isto deveria levá-lo a se proteger de ataques mais baratos, enquanto não se preocupa, com ataques mais caros.

Algumas das discussões que seguem podem parecer indevidamente paranóia, mas tal atitude e apropriada para uma discussão razoável sobre assuntos de vulnerabilidade.

Frase Senha e Chave Secreta Comprometidas

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Provavelmente, o ataque mais simples será se você deixar a frase senha de sua chave secreta escrita em qualquer lugar. Se alguém pegá-la e também pegar seu arquivo de chave secreta, poderão ler suas mensagens e fazer assinaturas em seu nome.

Não use senhas óbvias que podem ser adivinhadas facilmente, tais como os nomes de seus filhos ou esposa. Se sua frase senha for uma palavra simples, pode ser adivinhada facilmente por um computador que tenha todas as palavras do dicionário até que ele a encontre. É por isso que uma frase senha é melhor que uma senha. Um atacante mais sofisticado pode ter em seu computador os dados de um livro de citações famosas para encontrar sua frase senha. Uma frase senha fácil de ser lembrada e difícil de ser adivinhada pode ser construída facilmente com alguns dizeres sem sentido criativo ou anotações literárias obscuras.

Para maiores detalhes, veja a seção "Como Proteger Chaves Secretas da Exposição" no volume de tópicos essências do Guia do Usuário do PGP.

Falsificação de Chave Púbica

^^^^^^^^^^^^^^^^^^^^^^^^^^^^

A vulnerabilidade é maior se as chaves públicas estiverem falsificadas. Isto constitui a vulnerabilidade crucial mais importante de um criptosistema de chave pública, em parte, porque muitos novatos não a reconhecem imediatamente. A importância desta vulnerabilidade e das contra-medidas higiênicas apropriadas são detalhadas na seção "Como Proteger Chaves Públicas da Falsificação" no volume de Tópicos Essências.

Resumindo: quando você usa a chave pública de alguém, certifique-se que esta não foi falsificada. Uma nova chave pública de uma outra pessoa dever ser confiável somente se você a tiver conseguido diretamente de seu proprietário, ou se foi assinada por alguém que você confia. Certifique-se que ninguém conseguirá falsificar seu próprio anel de chave. Mantenha o controle físico tanto de seu anel de chave pública quanto de seu anel de chave secreta, preferivelmente em seu próprio computador do que em um sistema remoto de multi-usuário. Tenha uma cópia reserva dos dois anéis de chaves.

Arquivos "Quase Deletados"

^^^^^^^^^^^^^^^^^^^^^^^^^

Um outro problema de segurança latente é causado pelo modo como muitos sistemas operacionais apagam arquivos. Quando criptografa um arquivo e então apaga o arquivo original de texto plano, o sistema operacional, na verdade, não apaga fisicamente os dados. Apenas marca aqueles blocos do disco que foram deletados, permitindo que o espaço seja reutilizado mais tarde. É mais ou menos como se livrar de documentos de papel importantes colocando-os na caixa de papel reciclável, em vez do picador de papel. Os blocos de disco ainda contem os dados importantes originais que você queria apagar, e provavelmente será sobre-escrito no futuro, eventualmente por novos dados em qualquer ponto. Se um atacante ler estes blocos de disco apagados logo depois de serem desalocados, poderia recuperar seu texto plano.

De fato, isto poderia até acontecer acidentalmente, se por alguma razão algo sair errado o disco e alguns arquivos forem apagados ou danificados. Um programa de recuperação de disco pode ser rodado para recuperar os arquivos danificados, mas isto muitas vezes significa que alguns arquivos previamente apagados serão recuperados com algo mais. Os seus arquivos confidenciais que você pensou terem desaparecido para sempre poderiam então reaparecerem e serem vistos por qualquer um que esteja tentando recuperar seu disco danificado. Mesmo quando estiver criando a mensagem original com um processador de texto ou editor de texto, o editor pode criar múltiplas cópias temporárias de seu texto no disco, devido a seu trabalho interno. Estas cópias temporárias de seu texto são apagadas pelo processador de texto quando estiver pronto, mas estes fragmentos importantes ainda ficam em algum lugar no disco.

Vou contar uma verdadeira história de horror. Tenho uma amiga casada e com filhos pequenos, que uma vez teve um amante breve e não muito sério. Ela escreveu uma carta para seu amado em seu processador de texto e deletou a carta depois de enviá-la. Mais tarde, depois que o caso amoroso havia acabado, o disquete danificou-se de alguma forma e ela teve que recuperá-lo porque continha outros documentos importantes. Pediu a seu marido para salvar o disco, parecia perfeitamente seguro pois ela sabia que havia deletado a carta encriminatória. Seu marido rodou um pacote de um software comercial de recuperação de disco para salvar os arquivos. Recuperou os arquivos, incluindo a carta apagada. Ele a leu, e isto determinou uma cadeia trágica de acontecimentos.

O único modo de evitar que o texto plano apareça é de alguma forma fazer com que os arquivos de texto plano apagados sejam sobre escritos. A menos que você tenha certeza que todos os blocos de disco apagados logo serão reutilizados, terá que tomar algumas medidas para que o arquivo de texto plano e todos fragmentos deixados no disco por seu processador de texto sejam apagados. Você pode sobre-escrever o arquivo original de texto plano depois de criptografá-lo usando a opção do PGP -W (Wipe). Cuide de todos os fragmentos do texto plano deixados no disco, usando qualquer uma das utilidades de disco disponíveis que consigam sobre-escrever todos os blocos não-usados. Por exemplo, as utilidades Norton para MSDOS conseguem fazer isto.

Mesmo se você sobre-escrever os dados do texto plano no disco, é ainda possível para um atacante determinado e desembaraçado recuperar os dados. Trilhas magnéticas fracas dos dados originais permanecem no disco depois de serem sobre-escritas. Um sofisticado hardware especial de recuperação de disco pode algumas vezes ser usado para recuperar os dados.

Vírus e Cavalos de Tróia

^^^^^^^^^^^^^^^^^^^^^^^^

Um outro ataque poderia envolver um vírus ou um verme (worm) hostil de computador especialmente projetado infectaria o PGP ou seu sistema operacional. Este vírus hipotético poderia ser projetado para capturar sua frase senha, sua chave secreta ou as mensagens decifradas, e escrever as informações capturadas em um arquivo ou enviá-las por uma rede até o proprietário do vírus. Poderia também alterar o comportamento do PGP de forma que as assinaturas não sejam verificadas propriamente. Este ataque é mais barato do que os ataques criptoanalíticos.

Para nos defendermos contra estas quedas temos que ficar na categoria de defensa contra a infecção generalizada de vírus. Existem alguns produtos anti-vírus moderadamente capazes e comercialmente disponíveis, existem também procedimentos higiênicos para se seguir reduzir bastante as chances de uma infecção viral. Um tratamento completo com contra-medidas anti-virais e anti-verme estão longe de terem um espaço neste documento. O PGP não possui defesas contra vírus e considera que seu próprio computador e um ambiente de execução seja realmente confiável. Se tais vírus ou verme realmente aparecerem, felizmente logo surgirá um aviso de alerta.

Um outro ataque similar envolve alguém que criou uma inteligente imitação do PGP que se comporta como o PGP em muitos aspectos, mas não funciona do mesmo modo que deveria. Por exemplo, poderia ser uma cópia razoavelmente enfraquecida que não conseguisse verificar apropriadamente as assinaturas, permitindo que certificados de chaves falsas fossem aceitos. Esta versão "Cavalo de Tróia" do PGP não é difícil de ser criada por um atacante, porque o código de origem do PGP está amplamente disponível, assim qualquer um poderia modificar o código de origem e produzir uma imitação zumbi lobotomizada do PGP que parecesse verdadeira mas que expressa seu controle diabólico. Esta versão Cavalo de Tróia do PGP poderia então circular amplamente, alegando ser a minha versão. Que maldade.

Você deve se esforçar para conseguir sua cópia do PGP de uma fonte confiável, seja ela qual for. Talvez de mais de uma fonte independente, compare as utilizando uma utilidade de comparação de arquivo.

Existem outros modos de verificar se o PGP é falsificado, usando assinaturas digitais. Se alguém que você confia assina a versão executável do PGP, comprovando de fato que ela não foi infectada ou falsificada, tenha a certeza que você possui uma cópia razoavelmente boa. Poderia usar uma versão anterior confiável do PGP para verificar a assinatura de uma versão posterior do PGP suspeita. Mas isto não resolverá absolutamente nada se seu sistema operacional estiver infectado, pois ele nem detectará se sua cópia original PGP.EXE foi maliciosamente alterada de tal modo que comprometa sua própria capacidade de verificar assinaturas. Este procedimento também supõe que você tem uma cópia confiável da chave pública que utilizou para verificar a assinatura no PGP executável.

A Quebra da Segurança Física

^^^^^^^^^^^^^^^^^^^^^^^^^^^^

A quebra da segurança física pode permitir que alguém adquira fisicamente os seus arquivos de texto plano ou suas mensagens impressas. Um oponente determinado poderia conseguir isso através de arrombamento, vistoria do lixo, procura irracional e apreensão, suborno, chantagem ou infiltração de seu pessoal. Alguns desses ataques podem ser possíveis especialmente contra organizações políticas populares que dependem de um grande número de voluntários. Foi amplanmente divulgado na imprensa que o FBI utilizava contra grupos de direitos civis e anti-guerra o programa COINTELPRO para arrombar, infiltrar e grampear ilegal os telefones. Olhe o que aconteceu no Hotel Watergate.

Não tenha um senso falso de segurança só porque possui uma ferramenta criptográfica. Técnicas criptográficas protegem dados somente enquanto estão criptografados, violações diretas de segurança física ainda podem comprometer os dados de texto plano ou as informações escritas ou faladas.

Este tipo de ataque é mais barato do que os ataques criptográficos ao PGP.

Ataques Tempest

^^^^^^^^^^^^^^^

Um outro tipo de ataque que tem sido usado por oponentes bem equipados envolve a deteção remota de sinais eletromagnéticos de seu computador. Este ataque caro e de algum modo bem elaborado ainda é, provavelmente, mais barato do que os ataques criptoanalíticos diretos. Um furgão apropriadamente instrumentado pode estacionar perto de seu escritório e remotamente conseguir todos os toques de teclas e as mensagens exibidas na tela de vídeo do seu computador. Isto comprometeria todas as suas senhas, mensagens, etc. Este ataque pode ser impedido blindando apropriadamente todos os equipamentos de seu computador e os cabos de rede, de tal forma que não consiga emitir esses sinais. Esta tecnologia de blindagem é conhecida como "Tempest", é usada por algumas agências governamentais e contratantes de defesa. Existem vendedores de hardware que fornecem comercialmente a blindagem Tempest, apesar de ela precisar de algum tipo de licença governamental. Agora, porque você acha que o governo limitaria o acesso a blindagem Tempest?

Protegendo contra fusos horários falsos

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

A vulnerabilidade, de alguma forma, obscura do PGP envolve usuários desonestos que criam fusos horários falsos com seus próprios certificados de chave pública e assinaturas. Você pode pular esta seção se for um usuário comum e se não souber muito sobre protocolos obscuros de chave pública.

Não há nada que impeça um usuário desonesto de alterar os dados e os ajustes de hora do relógio de seu próprio sistema e gerar seus próprios certificados de chave pública e assinaturas que parecem terem sido criadas em uma outra hora. Isto faz com que pareça que ele assinou algo antes ou depois do que realmente fez, ou que seu par de chaves pública/secreta foi criado antes ou depois do horário que está marcado. Isto pode trazer alguns benefícios legais ou finaceiros, por exemplo criar algum tipo de brecha que permitiria a ele repudiar uma assinatura.

Uma solução para este problema poderia envolver alguma Autoridade de Certificação Confiável ou um tabelião que criaria assinaturas notariadas com um fuso horário confiável. Poderia não necessariamente exigir uma autoridade centralizada. Talvez até algum apresentador confiável ou grupo desinteressado serviria para esta função que é desempenhada hoje pelos tabeliões públicos verdadeiros. Um certificado de chave pública poderia ser assinado por um tabelião e o fuso horário confiável com sua assinatura teria algum significado legal. O tabelião poderia entrar com um certificado assinado em um arquivo de transações especiais de certificados controlado por ele mesmo. Este arquivo poderia ser lido por qualquer pessoa.

O tabelião também poderia assinar as assinaturas de duas outras pessoas, criando um certificado de assinatura de um certificado de assinatura. Isto serviria como um testemunho para a assinatura, do mesmo modo que tabeliões verdadeiros fazem hoje com papéis. Novamente, o tabelião entraria com um certificado de assinatura separado (sem todo o documento verdadeiro que foi assinado) em um arquivo de transações controlado por ele. A assinatura do tabelião teria um fuso horário confiável que poderia ter mais credibilidade que o fuso horário da assinatura original. Uma assinatura se torna "legal" se é assinada e registrada pelo tabelião.

Este problema de certificação de assinatura com tabeliões e fusos horários confiáveis garante muitas discussões. Esta lata de vermes ainda não será completamente fechada aqui. Existe um bom ponto de vista sobre este assunto no artigo de Denning de 1993 no IEEE Computer (veja referências). Existem muito mais detalhes para serem trabalhados nestes vários esquemas de certificação. Isto será desenvolvido mais tarde conforme o aumento do uso do PGP e outros produtos de chave pública desenvolverem seus próprios esquemas de certificação.

Exposição em sistemas multi-usuário

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

O PGP foi originalmente planejado para um usuário comum de máquina MSDOS que tenha seu controle físico direto. Rodei o PGP em casa no meu próprio computador e a menos que alguém invada minha casa ou monitore minhas transmissões eletromagnéticas, eles não conseguiram ver meus arquivos de texto plano ou minhas chaves secretas.

Mas, atualmente o PGP também roda em sistemas multi-usuário tais como UNIX e VAX/VMS. Em sistemas multi-usuário, existem riscos muito maiores de seu texto plano ou suas chaves ou senhas serem expostas. O administrador do sistema UNIX ou um instrutor inteligente consegue ver seus arquivos de texto plano, ou talvez até usar um software especial para monitorar completamente seus toques de teclas ou ler o que está na sua tela. Em um sistema UNIX, qualquer outro usuário consegue ler remotamente sua informação de ambiente simplesmente usando um comando UNIX "ps". Existem sistemas parecidos as máquinas de ambiente DOS conectadas em uma rede de área local. O verdadeiro risco de segurança depende de cada situação em particular. Alguns sistemas multi-usuário podem ser seguros porque todos os usuários são confiáveis, porque tem medidas de segurança de sistema que são seguras suficientes para resistir a ataques de intrusos ou porque não existem intrusos suficientemente interessados. Alguns sistemas UNIX são seguros porque são usados apenas por um usuário, existem até computadores notebook que rodam UNIX. Não teria motivo nenhum de simplesmente excluir o PGP de rodar em todos os sistemas UNIX.

O PGP não é projetado para proteger seus dados de um sistema comprometido, enquanto estiverem na forma de texto plano. Nem consegue impedir que um intruso use medidas sofisticadas para ler sua chave secreta enquanto ela estiver sendo usada. Terá apenas que considerar estes riscos em sistemas multi-usuário e acostumar-se com as expectativas e comportar de acordo com as medidas de segurança. Talvez sua situação seja tal que você deveria considerar rodar o PGP somente em um sistema isolado de usuário simples sob seu controle físico direto. Isto é o que eu faço e é o que recomendo.

Análises de Tráfego

^^^^^^^^^^^^^^^^^^^

Mesmo se o atacante não conseguir ler o conteúdo de suas mensagens criptografadas, ele pode saber pelo menos alguma informação útil, observando de onde as mensagens vem e para onde elas vão, o tamanho das mensagens e a que hora do dia as mensagens foram enviadas. É a mesma coisa se um atacante observar sua conta telefônica com chamadas de longas distâncias para ver para quem você telefonou, quando e por quanto tempo, embora o conteúdo real de suas chamadas seja desconhecido para ele. Isto é chamado análise de tráfego. Somente o PGP não protege contra análise de tráfego. Para resolver este problema seria necessário protocolos de comunicação especializados e projetados para reduzir a exposição a análise de tráfego em seu ambiente de comunicação, possivelmente com alguma assistência criptográfica.

Criptoanálise

^^^^^^^^^^^^^

Um ataque criptoanalítico caro e formidável poderia possivelmente ser montado por alguém com amplos recursos de computadores, tal como uma agência de inteligência governamental. Poderia quebrar sua chave RSA usando alguma violação nova e secreta de fatoração. Mas, é fundamental que o governo dos Estados Unidos confie no algoritmo RSA suficientemente para que em alguns casos utilize-o para proteger suas próprias armas nucleares de acordo com Ron Rivest. Uma academia civil tem sido intensamente atacada sem sucesso desde 1978.

Talvez o governo tenha até alguns métodos confidenciais para quebrar o algoritmo de criptografia convencional IDEA (tm) usado no PGP. Este é o pior pesadelo de todo criptografador. Não existe nenhuma garantia de segurança absoluta e implementações criptográficas práticas.

Mas, ainda é justificável possuir algum otimismo. Os projetistas do algoritmo IDEA estão entre os melhores criptografadores da Europa. Ele passou por uma análise de segurança extensiva e mesma revisão de alguns dos melhores criptoanalistas do mundo não confidencial. Parece que existem algumas vantagens de projeto sobre o DES em resistir a diferentes criptoanálises que estão sendo usadas para quebrar o DES.

Além disso, mesmo se o algoritmo tiver fraquezas sutis desconhecidas, o PGP comprime o texto plano antes de criptografar, o que deve reduzí-lo muito. A carga de trabalho computacional para quebrar uma fraqueza parece ser muito mais cara do que o valor da mensagem.

Se sua situação justifica a preocupação com ataques muito formidáveis deste calibre, então talvez, você deveria contactar um consultor de segurança de dados para ter acessos de segurança de dados personalizados feitos de acordo com suas necessidades especiais. A Engenharia de Software Boulder (Boulder Software Engineering), cujo endereço e telefone são fornecidos no final deste documento, pode fornecer tais serviços.

Em resumo, sem uma proteção criptográfica boa de suas comunicações de dados, pode ocorrer, praticamente sem esforços e talvez até como rotina para um oponente, a interceptação suas mensagens, especialmente aquelas enviadas por sistemas de correio eletrônico ou modem. Se você usa o PGP e segue as precauções razoáveis, o atacante terá que despender mais esforços e gastar mais para violar sua privacidade.

Se você se protege contra os ataques mais simples e se sente confiante que sua privacidade não está sendo violada por um atacante determinado com altos recursos, então provavelmente se sentirá seguro usando o PGP. O PGP lhe dá Pretty Good Privacy.

ASSUNTOS LEGAIS

###############

Marcas Registradas, Direitos Autorais e Garantias

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

"Pretty Good Privacy", "Software Pretty Good de Phil e o rótulo "Pretty Good" para software de computador e produtos de hardware são todas marcas registradas de Philip Zimmermann e do Software Pretty Good de Phil. O PGP é um direito autoral de Philip R. Zimmermann, 1990-1994. Todos os direitos reservados. Philip Zimmermann também tem o direito autoral sobre o Manual do Usuário do PGP, assim como qualquer tradução em língua estrangeira deste ou do software e de todos os trabalhos derivados. Todos os direitos reservados.

O MIT também tem o direito autoral, em particular, sobre o pacote de distribuição que distribui a partir de seu sítio FTP. Este direito autoral na "compilação" do pacote de distribuição de nenhuma forma implica que o MIT tem o direito autoral sobre o PGP em si ou sobre suas documentações para o usuário.

O autor não assume a responsabilidade dos danos resultantes do uso de seu software, mesmo se o dano resultar de defeitos neste software, não faz representações em relação a comercialização do software ou sua solicitação para qualquer propósito específico. É fornecido "como é" sem urgência ou qualquer tipo de garantia. Devido ao fato que certos atos podem apagar arquivos ou causar lhes danos irreparáveis, o autor não assume a responsabilidade pela perda ou modificação de qualquer dado.

Direitos de Patentes sobre os Algoritmos

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

O criptossistema de chave pública RSA foi desenvolvido no MIT, que possui a sua patente (E.U.A. patente 4.405.829, impressa em 20 de setembro de 1983). Uma companhia na Califórnia chamada Public Key Partners (PKP) tem a licença comercial exclusiva para vender e sub-licenciar o criptosistema de chave pública RSA. O MIT distribui a versão freeware do PGP sob os termos da licença RSAREF da Seguradora de Dados RSA, INC. (RSADSI).

Usuários não-americanos de versões mais novas do PGP devem observar que a patente RSA não se aplica fora dos Estados Unidos e que pelo menos quando o autor o escreveu não se preocupou com a patente RSA em outros países. Agências Federais podem usar o algoritmo RSA, porque o governo paga para o desenvolvimento desta com fundos da Marinha e da Fundação Nacional para a Ciência. Mas, apesar do fato que os usuários do governo terem livre acesso ao algoritmo RSA, o uso governamental do PGP tem restrições adicionais impostas por um acordo que possuo com a ViaCrypt, como explicarei mais adiante.

Eu escrevi meu software de PGP a partir de um rascunho, com minha própria implementação desenvolvida independente do algoritmo RSA. Antes de publicar o PGP consegui uma opinião por escrito formal e legal de um advogado de patente, com ampla experiência em patentes de software. Estou convencido que a publicação do PGP do modo que fiz não viola a lei da patente.

A PKP não apenas adiquiriu os direitos exclusivos de patentes para o criptosistema de RSA, mas também, adquiriu os direitos exclusivos de três outras patentes que cobrem outros sistemas de chave pública inventados por outras pessoas da Universidade de Stanford, também desenvolvidos com verbas federais. Isto essencialmente dá a uma companhia uma fechadura legal nos Estados Unidos de quase todos os criptosistemas práticos de chave pública. Até parecem que clamam pelos pedidos de patentes no conceito de criptografia de chave pública, esquecendo-se de que algoritmos inteligentes e originais são inventados independentemente por outras pessoas. Considero isso como um problema compreensivo de monopólio, porque a criptografia de chave pública, na minha opinião, está destinada a se tornar uma tecnológica crucial muito importante na proteção de nossas liberdades civis e de nossa privacidade em nossa crescente sociedade conectada. E por último, coloca estas ferramentas vitais em risco fornecendo ao governo um simples ponto de pressão para poder influenciar.

Começando com a versão 2.5 do PGP (distribuída pelo MIT, os detentores da patente original RSA), a versão freeware do PGP usa a biblioteca de sub-rotina RSAREF para desenvolver seus cálculos RSA, sob a licença RSAREF que permite o uso não-comercial nos Estados Unidos. A RSAREF é uma sub-rotina da Seguradora de Dados RSA, Inc., que implementa o algoritmo RSA. As sub-rotinas RSAREF são usadas no lugar das sub-rotinas originais do PGP para as funções RSA no PGP. Veja a licença RSAREF para os termos e condições de uso das aplicações RSAREF.

O PGP 2.5 foi distribuído pelo MIT por um curto período de teste em maio de 1994, antes de ser distribuída a versão 2.6. Apesar de que a versão 2.5 foi distribuída antes de 16 de marco, a licença RSAREF de 1994, que é uma licença permanente, seria melhor que os usuários nos Estados Unidos atualizassem a versão 2.6 para facilitar o desuso do PGP 2.3a e versões anteriores. O PGP 2.5 também apresenta erros que foram corrigidos na 2.6 e a 2.5 não conseguirá ler o novo formato de dados depois de 1o. de setembro de 1994. (Veja a seção sobre Compatibilidade com Versões Anteriores do PGP).

A versão 2.0 do PGP foi um esforço conjunto com uma equipe internacional de engenheiros de software, implementando otimizações ao PGP original sob minha orientação de projeto. Foi divulgada por Branko Lankester nos Países Baixos e por Peter Gutmann na Nova Zelândia, fora do alcance da lei de patente americana. Apesar de ser divulgado somente na Europa e Nova Zelândia, espalhou-se espontaneamente pelos Estados Unidos sem a minha ajuda ou a ajuda do grupo que desenvolveu o PGP.

A codificação convencional de bloco IDEA (tm) usada pelo PGP é coberta por uma patente na Europa, mantida pela ETH e por uma companhia suíça chamada AscomTech AG. O número da patente americana é US005214703 e o número da patente européia é EP 0 482 154 B1. A IDEA (tm) é a marca registrada da Ascom-Tech AG. Para uso não-comercial não é exigido nenhuma taxa de licença da IDEA. Os usuários comerciais da IDEA podem obter detalhes sobre o licenciamento com Dieter Profos, Ascom Tech AG, Seção de Teleserviços, Postfach 151, 4502 Solothurn, Suíca, Tel. +41 65 242885, Fax +41 65 235761.

A Ascom-Tech AG concedeu permissão que a versão freeware do PGP utilize em qualquer lugar do mundo a codificação IDEA para usos não-comerciais. Nos Estados Unidos e Canadá, todos os usuários comerciais ou governamentais precisam obter uma versão licenciada da ViaCrypt, que possui uma licença da Ascom-Tech para a codificação IDEA. Recentemente, a Ascom-Tech mudou sua política em relação a utilização da IDEA no PGP para uso comercial fora dos Estados Unidos, esta política ainda parece estar em desenvolvimento.

As rotinas de compressão ZIP no PGP surgiram a partir do código fonte freeware, com a permissão do autor. Não conheço nenhuma patente nos algoritmos de compressão usados nas rotinas ZIP, mas você tem toda liberdade para verificar esta questão.

Licenciamento e Distribuição

~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Nos Estados Unidos, o PGP 2.6 está disponível no Instituto Tecnológico de Massachusetts, sob os termos da licença RSAREF. Não tenho nenhuma objeção que qualquer pessoa utilize livremente ou distribua a versão freeware do PGP, sem o pagamento das taxas para mim, mesmo que seja para uso pessoal não-comercial. Para uso comercial, contacte a ViaCrypt em Phoenix, Arizona (telefone 602-944-0773). Você precisa ter as observações de direitos autorais, patente e marca registrada do PGP e manter com ele toda a documentação.

OBSERVAÇÃO: Apesar das complexidades e das restrições, parcialmente sobrepostas de todos os outros termos e condições impostas pela várias licenças de patentes e de direitos autorais (RSA, RSAREF e IDEA) de terceiros, uma restrição adicional não considerada no uso do PGP é imposta pelo meu próprio acordo com a ViaCrypt: A versão freeware do PGP é somente para uso pessoal e não-comercial, todos os outros usuários nos Estados Unidos e Canadá precisam obter uma versão licenciada completa do PGP da ViaCrypt.

Tive que fazer um acordo com a ViaCrypt de tal forma que houvesse uma maneira legalmente segura de corporações utilizarem o PGP, sem o risco de um processo por infração de patente da PKP. Para o PGP ser bem sucedido em todos os sentidos como um padrão viável de indústria, o estigma legal associado aos direitos da patente RSA tinha que ser resolvido. A ViaCrypt já obteve uma licença de patente da PKP para produzir, utilizar e vender produtos que utilizam a patente RSA. A ViaCrypt ofereceu uma solução sobre a delicada situação da patente para que infiltre no ambiente corporativo. Poderiam vender uma versão licenciada do PGP, mas somente se a licenciassem sobre determinados termos. Então entramos em acordo para fazê-lo, abrindo a porta do futuro do PGP no setor comercial, tudo isto foi necessário para o seu futuro político.

O PGP não é um software compartilhado, é um freeware. Publicado como um serviço a comunidade. Dando o PGP de graça encorajará mais pessoas a usá-lo, o que esperançosamente terá um impacto social maior. Isto leva a uma consciência e a um uso difundido do criptosistema de chave pública RSA.

Sinta-se a vontade para disseminar o pacote completo da versão do PGP o quanto for possível, mas tome cuidado para não violar os controles americanos de exportação se você morar nos Estados Unidos. De a todos os seus amigos. Se você tiver acesso a uma BBS, por favor, transfira o pacote completo da versão objeto executável do PGP para quantas BBSs forem possível. A versão freeware do PGP está disponível na forma de código fonte, você pode disseminar também o pacote da versão fonte se a possuir. OBSERVAÇÃO: Sob nenhuma circunstância o PGP deve ser distribuído sem sua documentação, incluindo este Guia do Usuário do PGP e o acordo de licença RSAREF.

O pacote da versão objeto executável do PGP 2.6 para MSDOS contem o software executável do PGP, a documentação, a licença RSAREF, exemplos de anéis de chave, incluindo minha própria chave pública, e assinaturas para o software e este manual, tudo em um arquivo comprimido PKZIP chamado pgp26.zip. O pacote da versão fonte do PGP para MSDOS contem todos os arquivos de fonte c em um arquivo comprimido PKZIP chamado pgp26src.zip. O nome do arquivo para o pacote da versão é derivado a partir do número da versão de lançamento.

O sítio da versão principal do PGP é o Instituto Tecnológico de Massachusetts, em seu sítio FTP "net-dist.mit.edu", no diretório /pub/PGP. Você pode obter cópias de graça ou atualizar o PGP a partir deste sítio, de qualquer outro sítio FTP da Internet ou de uma BBS que contem o PGP. Não peça uma cópia diretamente para mim, especialmente se você morar fora dos Estados Unidos ou Canadá.

Depois de todo este trabalho, tenho que adimitir que não me importo em receber algumas correspondências de fas do PGP, para medir sua popularidade. Mantenha-me informado sobre o que você acha dele e quantos dos seus amigos o utilizam. Relatórios de erros e sugestões para melhorar o PGP também são bem vindos. Talvez, uma versão futura do PGP refletirá suas sugestões.

Este projeto não recebe verbas e está prestes a me comer vivo. Isto significa que você não pode contar com uma resposta a sua correspondência, a menos que precise somente de uma resposta curta e que inclua junto com sua carta um envelope selado. Mas, eu muitas vezes respondo as correspondências eletrônicas. Por favor, me escreva em inglês, pois tenho poucas habilidades em línguas estrangeiras. Se você me telefonar e eu não estiver é melhor tentar mais tarde. Eu geralmente não respondo a chamadas telefônicas de longas distâncias, a menos que você deixe uma mensagem dizendo que eu posso ligar a cobrar. Se você precisar de uma quantidade significativa de meu tempo, estou disponível em uma base paga de consultoria e, claro, respondo a estas chamadas.

A maioria das correspondências inconvenientes que recebo são de pessoas bem intencionadas que me mandam alguns dólares e pedem por uma cópia do PGP. Eu não envio estas cópias porque acho melhor evitar qualquer problema legal com a PKP. Ou pior, algumas vezes estes pedidos são de países estrangeiros e teria que arriscar uma violação das leis americanas de controle de exportação criptográfica. Mesmo se não houvesse escândalos legais envolvidos em enviar o PGP, geralmente eles não mandam dinheiro suficiente para que pague meu tempo. Apenas não considero isso como um negócio de ordem de correspondência de custo e volume baixos. Não consigo apenas ignorar o pedido e ficar com o dinheiro, porque eles provavelmente consideram o dinheiro como uma taxa para mim para que seus pedidos sejam atendidos. Se eu devolver o dinheiro, teria que pegar o meu carro, dirigir até o correio e comprar alguns selos, pois estes pedidos raramente incluem um envelope já postado. Tenho que gastar um tempo para escrever uma resposta educada dizendo que não posso fazer o que me foi pedido. Se adiar a resposta e colocar a carta em cima da minha escrivaninha, ela provavelmente desapareceria logo, em alguns minutos, e não veria mais a luz do dia durante meses. Multiplique estas inconveniências menores pelo número de pedidos que recebo, a partir daí você perceberá o problema. Já não é suficiente que o software seja de graça? Seria melhor se as pessoas tentassem conseguir o PGP em qualquer uma das outras fontes miríades. Se você não tiver um modem, peça a um amigo para conseguí-lo para você. Se você não conseguir acha o PGP, eu não me importo em responder a uma rápida chamada telefônica.

Se alguém quiser ser um voluntário para melhorar o PGP, por favor me informe. Certamente daria um pouco mais de trabalho. Algumas características foram descartadas. Um número de usuários do PGP, desde então, tem gastado seu tempo para transferir o PGP para UNIX em estações SPARC da Sun, para Ultrix, para VAX/VMS, para OS/2, para AMIGA e para Atari ST. Talvez você possa ajudar a transferí-lo para alguns ambientes novos. Mas, por favor, me informe se você planeja transferir ou acrescentar melhorias ao PGP, para evitar a duplicação de esforços e que você comesse com uma versão atrasado do código fonte.

Devido ao fato que muitas traduções em línguas estrangeiras do PGP estão sendo produzidas, a maioria delas não são distribuídas com o pacote regular da versão do PGP, porque exigiria muito espaço de disco. "Kits" separados de tradução de línguas estão disponíveis em muitas fontes independentes e, as vezes, estão disponíveis separadamente nos mesmos centros de distribuição que contem o software regular do PGP. Estes kits incluem versões traduzidas do arquivo LANGUAGE.TXT, PGP.HLP e do Guia do Usuário do PGP. Se você quiser fazer uma tradução para sua língua nativa, me contate primeiro para obter as informações mais recentes, as diretrizes padrões e para descobrir se já existe uma tradução em sua língua. Para descobrir onde conseguir um kit de língua estrangeira em sua língua, você pode verificar nos grupos de discussão da Internet, ou conseguir com Mike Johnson (mpj@csn.org).

Se você tiver acesso à Internet, preste atenção em anúncios sobre as novas versões do PGP, nos grupos de discussão da Internet "sci.crypt" e no próprio grupo de discussão do PGP, "alt.security.pgp". Se quiser saber onde conseguir o PGP, o MIT é o sítio FTP principal de distribuição (net-dist.mit.edu). Ou peça a Mike Johnson (mpj@csn.org) uma lista de sítios FTP da Internet e números de telefones de BBSs.

Versões futuras do PGP podem ter um formato de dados diferente para mensagens, assinaturas, chaves e anéis de chaves, com a finalidade de fornecer novas características importantes. Isto pode causar problemas de compatibilidade das versões anteriores com esta versão do PGP. Versões futuras podem fornecer utilidades de conversão para converter chaves antigas, mas você terá que desfazer-se de mensagens antigas criadas pelo PGP antigo.

Controles de Exportação

~~~~~~~~~~~~~~~~~~~~~~~

O governo americano tornou ilegal, na maioria dos casos, a exportação de boa tecnologia criptográfica e aqui pode estar incluído o PGP. Eles consideram este tipo de software do mesmo jeito que consideram os armamentos. É determinado pelas políticas voláteis do Departamento de Estado, do Departamento de Defesa e do Departamento do Comércio, são leis não fixadas. Eu não exportarei este software fora dos Estados Unidos ou Canadá em casos quando é ilegal fazê-lo, de acordo com os controles americanos e recomendo que outras pessoas não o exportem.

Se você mora fora dos Estados Unidos ou Canadá, eu recomendo que não viole as leis de exportação americana para conseguir qualquer versão do PGP. Desde que milhares de usuários domésticos conseguiram a primeira versão, depois de sua publicação inicial, de algum modo se tornou público nos Estados Unidos e, assim, espalhou-se pelo exterior como sementes de dente de leão sopradas pelo vento.

Começando pela versão 2.0 do PGP até a versão 2.3a, o ponto de lançamento do software esta fora dos Estados Unidos, em computadores publicamente acessíveis na Europa. Cada versão foi eletronicamente enviada aos Estados Unidos e postadas em computadores publicamente acessíveis nos Estados Unidos por ativistas privados do PGP em países estrangeiros. Existem algumas restrições nos Estados Unidos considerando a importação de armamento, mas, eu não conheço nenhum caso onde isto entrou em vigor ou foi cumprido pela importação de software criptográfico dentro dos Estados Unidos. Imagino que uma ação legal desse tipo seria um bom espetáculo de controvérsias.

A versão 2.4 do PGP ViaCript é vendida nos Estados Unidos e Canadá e não é exportado. O seguinte pronunciamento foi pedido a Viacript pelo governo americano para a inclusão da documentação do PGP da Viacript: "O PGP é exportado restritamente pelo Departamento da Administração de Exportação, Departamento do Comércio dos Estados Unidos e pelos Departamentos de Controles de Defesa do Comércio e do Controle de Armamentos pelo Departamento de Estado dos Estados Unidos. O PGP não pode ser exportado ou re-exportado diretamente ou indiretamente: (a) sem todas as licenças de exportação ou re-exportação e aprovações governamentais exigidas pelas leis aplicadas; ou (b) na violação da proibição da exportação ou re-exportação de qualquer parte do PGP". O governo pode alegar que as versões freeware do PGP também estão subordinadas a esses controles.

As versões 2.5 e 2.6 freeware do PGP foram lançadas depois de colocadas em um sítio de FTP controlado e mantido pelo MIT. Este sítio tem restrições e limitações que estão sendo usadas em outros sítios FTP, para estarem de acordo com as exigências do controle de exportação em relação a outros softwares de criptografia, tais como o Kerberos e outros softwares provenientes da Seguradora de Dados RSA, Inc. Sugiro que você não faça nada que pudesse enfraquecer estes controles ou facilite qualquer importação imprópria do PGP da ViaCrypt ou versões freeware do PGP.

Alguns governos estrangeiros impuseram serias penalidades se qualquer pessoa no pais simplesmente usar as comunicações criptografadas. Em alguns países até atirariam em você por isso. Mas, se você mora neste tipo de pais com certeza precise ainda mais do PGP.

A Situação Legal de Philip Zimmermann

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Na época em que escrevi este manual, estava na mira de uma investigação criminal da Alfândega Americana no Distrito Noroeste da Califórnia. Meu advogado de defesa foi avisado pelo Advogado Assistente Americano que a área da lei de interesse da investigação está em relação aos controles de exportação sobre o software de criptografia. O mandatório federal sentenciou diretrizes para esta transgressão de 41 a 51 meses de detenção em um prisão federal. A Alfândega Americana parece ter se posicionado da mesma forma que para publicação eletrônica doméstica de software de criptografia e para a sua exportação. O promotor da justiça publicou uma série de intimações federais do grande juri. Pode levar meses até que se chegue a uma decisão se devem procurar por uma denúncia ou não. Esta situação pode mudar a qualquer hora, de modo que esta descrição pode estar desatualizada quando você estiver lendo este documento. Fique atento as notícias para maiores detalhes. Se eu for indiciado e chegar a julgamento, será o maior caso deste tipo.

Tenho um fundo de defesa legal colocado para este caso. Nenhuma organização está levantando fundos para mim, então estou dependendo de pessoas que como você contribuam diretamente para esta causa. Os fundos são controlados pelo meu advogado de defesa, Phil Dubois, aqui em Boulder. Por favor envie suas contribuições para:

Philip Dubois

2305 Broadway

Boulder, Colorado 80304 USA

Telefone 303-444-3885

E-mail: dubois@csn.org

Você também pode telefonar para fazer sua doação e colocá-la no cartão de crédito Mastercard ou Visa. Se você quiser ficar numa boa, pode usar o correio eletrônico da Internet para enviar sua contribuição, criptografe sua mensagem com o PGP, de modo que ninguém consiga interceptar o número do seu cartão de crédito. Inclua na sua mensagem de correio eletrônico o número do seu Mastercard ou Visa, data de expiração, nome no cartão e a quantidade da doação. Então, assine com sua própria chave e criptografe com a chave pública de Phil Dubois (a chave está incluída no pacote padrão de distribuição do PGP, no arquivo "keys.asc"). Coloque uma observação na linha de assunto dizendo que é uma doação ao meu fundo, de forma que o Sr. Dubois decriptografe logo a mensagem. Por favor, não mande muitas correspondências eletrônicas comuns para ele, é melhor que ele utilize seu valioso tempo para trabalhar em meu caso.

Se você quiser ler algumas histórias da imprensa sobre o caso, veja as seguintes referências:

1) William Bulkeley, "Cipher Probe", Wall Street Journal, terça-feira,

28 de abril de 1994, primeira pagina.

2) John Cary, "Spy vs. Computer Nerd: The Fight Over Data Security",

Business Week, 4 de outubro de 1993, pagina 43.

3) Jon Erickson, "Cryptography Fires Up the Feds", Dr. Dobb's Journal,

dezembro de 1993, pagina 6.

4) John Markoff, "Federal Inquiry on Software Examines Privacy Programs",

New York Times, terça-feira, 21 de setembro de 1993, pagina C1.

5) Kurt Kleiner, "Punks and Privacy", Mother Jones Magazine, Jan/Fev de

1994, pagina 17.

6) John Markoff, "Cyberspace Under Lock and Key", New York Times, domingo,

13 de fevereiro de 1994.

7) philip Elmer-DeWitt, "Who Should Keep the Keys", Time, 14 de marco de

1994, pagina 90.

Onde Conseguir Uma Versão Comercial do PGP

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Para conseguir uma versão licenciada completa do PGP para uso nos Estados Unidos e Canadá, contate:

ViaCrypt

2104 West Peoria Avenue

Phoenix, Arizona 85029

Telefone: 602-944-0773

Fax: 602-943-2601

E-mail: viacrypt@acm.org

A ViaCrypt tem uma versão do PGP para MSDOS e alguns números de plataformas UNIX. Outras versões estão em desenvolvimento. Se você precisar usar o PGP no campo comercial ou governamental, a ViaCrypt tem uma versão do PGP para sua plataforma de hardware, você deve ter o PGP da ViaCrypt.

A ViaCrypt obteve todas as licenças necessárias da PKP, da Ascom-Tech AG e de Philip Zimmermann para vender o PGP, para uso em ambientes governamentais ou comerciais. O PGP da ViaCrypt é a maneira mais correta de conseguir uma versão completamente licenciada do PGP em seu ambiente corporativo.

Relatando os Erros do PGP

~~~~~~~~~~~~~~~~~~~~~~~~~

Os erros do PGP devem ser informados via correio eletrônico ao MIT, que é o sítio de distribuição oficial do PGP. O endereço eletrônico para relatórios de erros é pgp-bugs@mit.edu.

GRUPOS POLÍTICOS RELACIONADOS A COMPUTADORES

############################################

O PGP é um software com um lado bem político. Parece apropriado mencionar aqui alguns grupos ativistas relacionados a computadores. Maiores detalhes sobre estes grupos e como fazer parte deles são fornecidos em um arquivo de documento separado no pacote da versão do PGP.

A Fundação para a Fronteira Eletrônica (EFF - Eletronic Frontier Foundation) foi fundada em 1990 com a finalidade de assegurar a liberdade de expressão na mídia digital, com ênfase particular na aplicação de princípios encorporados na Constituição Americana e na Carta de Direitos e na comunicação baseada em computadores. Podem ser encontrados em Washington DC, no telefone (202) 347-5400. O endereço eletrônico da Internet é: eff@eff.or.

Profissionais de Computação com Responsabilidade Social (CPSR - Computer Professionals For Social Responsibility) autoriza profissionais de computação e usuários de computadores a defender para uso responsável a tecnologia de informação e autoriza todos que usam a tecnologia de computadores para participar de debates públicos sobre as políticas de impacto dos computadores na sociedade. Podem ser encontrados: 415-322-3778 em Palo Alto, endereço eletrônico cpsr@csli.stanford.edu.

A Liga para Liberdade de Programação (LPF - Ligue for Programming Freedom) é uma organização popular de professores, estudantes, homens de negócios e usuários dedicados com a finalidade de devolver a liberdade de escrever programas. Consideram as patentes nos algoritmos de computadores prejudiciais à indústria de software americana. Podem ser encontrados pelo telefone (617) 433-7071. Endereço eletrônico:lpf@uunet.uu.net.

Para maiores detalhes sobres estes grupos, veja o documento que acompanha o pacote da versão do PGP.

LEITURAS INTRODUTÓRIAS RECOMENDÁVEIS

####################################

1) Bruce Schneier, "Applied Cryptography: Protocols, Algorithms, and

Source Code in C", John Wiley & Sons, 1993.

(Este livro é um trabalho inicial sobre o assunto)

2) Dorothy Denning, "Cryptography and Data Security", Addison-Wesley,

Reading, MA 1992.

3) Dorothy Denning, "Protecting Public Keys and Signature Keys", IEEE

Computer, Fevereiro de 1993.

4) Martin E. Hellman, "The Mathematics of Public-kaey Cryptography",

Scientific American, Agosto de 1979.

5) Steven Levy, "Crypto Rebels", WIRED, maio/junho de 1993, pagina 54.

(Este é um artigo essencial sobre o PGP e outro tópicos relacionados.)

OUTRAS LEITURAS

###############

6) Ronald Rivest, "The MD5 Message Digest Algorithm", Laboratório do MIT

da Ciência da Computação, 1991.

7) Xuejia Lai, "On the Design and Security of Block Ciphers", Séries ETH

sobre Processamento de Informação (Ed. J. L. Massey), vol.1,

Hartung-Gorre Verlag, Konstanz, Suíca, 1992.

8) Philip Zimmermann, "A Proposed Standard Format for RSA Cryptosystems",

Avanços na Segurança de Computadores, vol III, editado por Rein Turn,

Artech House, 1988.

9) Paul Wallich, "Eletronic Envelopes", Scientific American, fevereiro de

1993, pagina 30. (Este é um artigo sobre o PGP)

10) William Bulkeley, "Cipher Probe", Wall Street Journal, 28 de abril de

1994, primeira pagina. (Este é um artigo sobre o PGP e Zimmermann)

PARA CONTACTAR O AUTOR

######################

Philip Zimmermann pode ser encontrado em:

Boulder Software Engineering

3021 Eleventh Street

Boulder, Colorado 80304 USA

Internet: prz@acm.org

Telefone: 303-541-0140 (voz) (das 10 as 19 Horário da Montanha)

Linha de fax disponível, se combinado pela linha de voz.

APÊNDICE A: ONDE CONSEGUIR O PGP

################################

O que vem a seguir descreve como conseguir o software freeware criptográfico de chave pública do PGP (Pretty Good Privacy) de um sítio FTP anônimo na Internet ou de outras fontes.

O PGP tem um sofisticado gerenciamento de chave, um esquema de criptografia híbrida RSA/convencional, resumos de mensagens para assinaturas digitais, compressão de dados antes de criptografar e um bom projeto ergonômico. O PGP é bem caracterizado, rápido e tem uma excelente documentação para o usuário. O código fonte é de graça.

O Instituto Tecnológico de Massachusetts é o distribuidor da versão 2.6 do PGP, para distribuição somente nos Estados Unidos. Está disponível no "net-dist.mit.edu", um sítio de FTP controlado que possui restrições e limitações parecidas as usadas pela Segurança de Dados RSA, Inc., que coincide com as exigências do controle de exportação. O software reside no diretório /pub/PGP.

Um lembrete: Ajuste o modo para binário ou para imagem quando estiver fazendo uma transferência de FTP. Quando carregar Kermit em seu computador, especifique o modo binário de 8 bits em ambas as pontas.

Existem dois arquivos comprimidos na versão padrão, com o nome do arquivo derivado do número da versão de lançamento. Para a versão 2.6 do PGP, deve ter o pgp26.zip que contem o executável binário MSDOS e o Guia do Usuário do PGP, se quiser também ter o pgp26src.zip que contem todos os códigos fonte. Estes arquivos podem ser descomprimidos com a utilidade freeware MSDOS de descompressão de arquivos PKUNZIP.EXE, versão 1.10 ou posteriores. Para usuários de UNIX que não possuem uma implementação de UNZIP, o código fonte também pode ser encontrado no arquivo comprimido tar pgp26src.tar.z.

Se você não tiver os números de nenhuma BBS local a mão, aqui está uma BBS que você poderia tentar. A BBS Catacombs, operada por Mike Johnson em Longmont, Colorado, tem o PGP disponível para ser carregado por pessoas somente nos Estados Unidos e Canadá. O número da BBS é 303-772-1062. O número do telefone de voz de Mike Johnson é 303 772-1773 e seu endereço eletrônico é mpj@csn.org. Mike também tem disponível o PGP em um sítio FTP da Internet somente para usuários nos Estados Unidos e Canadá; o nome do sítio é csn.org, no diretório /mpj/ , você deve ler o arquivo README.MPJ para tê-lo.

Para conseguir uma versão completamente licenciada do PGP para uso nos Estados Unidos e Canadá, contacte a ViaCrypt em Phoenix, Arizona. Seu número telefônico é 602-944-0773. A ViaCrypt obteve todas as licenças necessárias da PKP, Ascom-Tech AG e Philip Zimmermann para vender o PGP para uso em ambientes governamentais e comerciais. O PGP da ViaCrypt é tão seguro quanto o freeware do PGP e é completamente compatível nas duas versões freeware. O PGP da ViaCrypt é a maneira correta de conseguir uma versão completamente licenciada do PGP em seu ambiente corporativo ou governamental.

Distribuições binárias ou de fontes do PGP estão disponíveis na biblioteca da Corporação de Distribuição Canadense, que é aberta ao público. Tem filiais em Toronto, Montreal e Vancouver. Contacte Max Allen, em +1 416 205-6017 se tiver dúvidas.

Aqui estão algumas pessoas e seus endereços eletrônicos ou números telefônicos que você pode contactar em alguns países para obter informações sobre a disponibilidade do PGP local para versões anteriores a 2.5:

Peter Gutmann Hugh Kennedy

pgut1@cs.aukuni.ac.nz 70042.710@compuserve.com

Nova Zelândia Alemanha

Branko Lankester Miguel Angel Gallardo

branko@hacktic.nl gallardo@batman.fi.upm.es

+31 2159 42242 (341) 474 38 09

Países Baixos Espanha

Hugh Miller Colin Plumb

hmiller@lucpul.it.luc.edu colin@nyx.cs.du.edu

(312) 508-2727 Toronto, Ontário, Canadá

EUA

Jean-loup Gailly

jloup@chorus.fr

França