GPG Key/pt
Contents |
Introdução
GPG, o 'GNU Privacy Guard' (n.t.: Guarda de Privacidade do GNU) é uma ferramenta de código aberto que permite ao utilizador encriptar e assinar dados com muita segurança. Este howto vai descrever como tornar ficheiros seguros, e assinar digitalmente emails.
Utilização do GPG
Obter o GPG
Linux
Actualmente o GPG está pré-instalado em todas as distribuições Linux com que me cruzei, conhecido pelo comando 'gpg' e seus amigos. Se não estiver, utilize o gestor de pacotes da sua distribuição para instalá-lo.
FreeBSD
No FreeBSD, o GPG pode ser instalado pela colecção de ports:
# cd /usr/ports/security/gnupg # make install clean
Windows
O GPG para Windows pode ser descarregado aqui: http://www.gnupg.org/download/
Criar chaves
Primeiro, temos que criar as chaves que são necessárias para encriptar dados com elas. Uma 'chave pública', bem como o seu par, uma 'chave privada', são criadas. A 'chave privada' deve ser guardada apenas para si, e não pode permitir que seja comprometida. As chaves públicas podem ser enviadas para todas as pessoas de quem quer receber dados de modo seguro. A chave pública apenas pode encriptar dados, e APENAS a chave privada que é seu o par pode decriptar de novo os dados de novo, ie. não outra chave pública.
Execute:
# gpg --gen-key
Os valores por omissão devem ser suficientes e tudo está bem explicado. No fim, uma frase-passe deve ser introduzida. Não a revele a ninguém, se a sua chave privada é roubada por alguém, a frase-passe é a única protecção que tem.
Listar chaves
Execute:
# gpg --list-keys
No meu sistema eu tenho o seguinte output:
/home/jonny/.gnupg/pubring.gpg ------------------------------ pub 1024D/446C786C 2008-07-28 uid Example (Example Key) <example@example.com> sub 4096g/FB8E3A35 2008-07-28
Os dados após 'uid' é o ID do utilizador da chave. Para referenciar uma chave em particular, você trá que utilizar parte do ID do utilizador para que o GPG saiba que é a chave que se está a referir, se você tiver várias. Isto pode ser um endereço de email, o comentário ou nome por exemplo.
Exportar a chave pública
Execute:
# gpg --output public_key.gpg --armor --export <user ID>
Expliquei o que <user ID> era mais acima. Tente o endereço de email que utilizou para gerar a sua chave.
Este comando vai deixá-lo com a public_key.gpg, a qual pode mandar para os seus amigos, permitindo-os encriptar dados que apenase podem ser decriptadas por si, com a sua chave privada.
Importar uma chave pública
O seu amigo, que agora recebeu a chave pública que você criou vai agora executar:
# gpg --import blake.gpg
Isto vai importar a chave para o seu chaveiro. Ele pode ver a chave utilizando:
# gpg --list-keys
Encriptar e Decriptar
O seu amigo pode agora encriptar um documento secreto (secret_document.doc) antes de o enviar por email para si, utilizando um comando como este:
# gpg --output secret_document.doc.gpg --encrypt --recipient <user ID> secret_document.doc
Quando você receber o seu documento, poderá decriptá-lo utilizando:
# gpg --output secret_document --decrypt secret_document.doc.gpg
Aqui, ser-lhe-á perguntado pela sua frase-passe.
Assinaturas digitais em emails
Um email, aqui email.txt, pode ser assinado digitalmente usando a sua chave privada. As pessoas com a sua chave pública podem verificar que este email é de facto seu. Para criar a assinatura execute:
# gpg --output email.sig --detach-sig email.txt
O ficheiro de assinatura, email.sig pode ser então anexado ao email. O destinatário do email pode verificar que o email é de si (se ele tiver a sua chave pública) executando: gpg --verify email.sig email
Mais Informação
Para mais informações, veja a documentação GPG (da qual este howto foi baseado): http://www.gnupg.org/documentation/index.en.html