Assinatura digital é um processo que certifica que um determinado pacote foi gerado pelas pessoas que o desenvolveram e que não sofreram nenhuma alteração.
Abaixo, explicamos por que ele é importante e como verificar se o navegador Tor que você baixou é o que criamos e não foi modificado por algum invasor.
Cada arquivo em nossa página de download é acompanhado por um arquivo rotulado "assinatura" com o mesmo nome do pacote e a extensão ".asc". Estes arquivos .asc são assinaturas do OpenPGP.
Eles permitem que você verifique se o documento baixado é exatamente aquele que pretendíamos que você baixasse.
Isto varia de acordo com o navegador, mas geralmente você pode baixar este arquivo clicando com o botão direito do mouse no link "assinatura" e selecionando a opção "salvar arquivo como".
Por exemplo, tor-browser-windows-x86_64-portable-13.0.1.exe
é acompanhado por tor-browser-windows-x86_64-portable-13.0.1.exe.asc
.
Estes são exemplos de nomes de arquivos e não irão corresponder exatamente aos nomes dos arquivos que você baixou.
Agora vamos lhe mostrar como você pode verificar a assinatura digital de cada documento baixado em vários sistemas operacionais.
Por favor, lembre que a assinatura é datada do momento em que o pacote foi assinado.
Assim, todas as vezes que um novo documento for carregado, uma nova assinatura é gerada com a nova data.
Se você tiver verificado a assinatura, não se preocupe com a mudança das datas.
Instalando GnuPG
Primeiro de tudo você precisa ter o GnuPG instalado antes de verificar as assinaturas.
Para quem usa Windows:
Se você utiliza Windows, baixe o Gpg4win e execute o instalador.
Para verificar a assinatura, você precisará digitar alguns comandos na linha de comando do Windows, cmd.exe
.
Para usuários do macOS:
Se você estiver utilizando macOS, pode instalar o GPGTools.
Para verificar a assinatura, você precisará digitar alguns comandos no Prompt de Comando do Windows (ver "Aplicações").
Para quem usa GNU/Linux:
Se você está usando GNU/Linux, então provavelmente já tem o GnuPG em seu sistema, já que a maioria das distribuições Linux já o possui pré-instalado.
Para verificar a assinatura, você precisará digitar alguns comandos no Terminal. A maneira de fazê-lo dependerá da distribuição utilizada.
Buscando a chave de desenvolvedores do Tor
A equipe do Navegador Tor assina os lançamentos do Navegador Tor.
Importar a assinatura chave do Navegador Tor (0xEF6E286DDA85EA2A4BA7DE684E2C6E8793298290):
gpg --auto-key-locate nodefault,wkd --locate-keys torbrowser@torproject.org
Isso deverá exibir algo como:
gpg: chave 4E2C6E8793298290: chave pública "Tor Browser Developers (signing key) <torbrowser@torproject.org>" importada
gpg: Número total processado: 1
gpg: importado: 1
EF6E286DDA85EA2A4BA7DE684E2C6E8793298290
uid [ unknown] Tor Browser Developers (signing key) <torbrowser@torproject.org>
OBSERVAÇÃO: Sua saída pode divergir um pouco do acima (por exemplo, datas de expiração), mas você deverá ver a chave importada corretamente.
Se você receber uma mensagem de erro, algo deu errado e você não poderá continuar até descobrir por que isso não funcionou. Você pode importar a chave usando a seção Solução alternativa (usando uma chave pública) .
Após importar a chave, você pode salvá-la em um arquivo (identificando-o através dessa impressão digital):
gpg --output ./tor.keyring --export 0xEF6E286DDA85EA2A4BA7DE684E2C6E8793298290
Este comando resulta em salvar a chave em um arquivo encontrado no caminho ./tor.keyring
, ou seja, no diretório atual.
Se ./tor.keyring
não existe após a execução deste comando, algo deu errado e você não pode continuar até descobrir por que isso não funcionou.
Verificando a assinatura
Para verificar a assinatura do pacote baixado, é necessário fazer o download do arquivo de assinatura ".asc" correspondente, bem como do próprio arquivo de instalação. Então, a partir de um comando, será solicitado ao GnuPG que verifique o arquivo baixado.
Os exemplos abaixo consideram que você tenha baixado estes dois arquivos para a pasta "Downloads".
Observe que esses comandos usam nomes de arquivo de exemplo e o seu será diferente: você precisará substituir os nomes de arquivo de exemplo pelos nomes exatos dos arquivos que você baixou.
Para usuários do Windows (altere x86_64 para i686 se você tiver o pacote de 32 bits):
gpgv --keyring .\tor.keyring Downloads\tor-browser-windows-x86_64-portable-13.0.1.exe.asc Downloads\tor-browser-windows-x86_64-portable-13.0.1.exe
Para usuários do macOS:
gpgv --keyring ./tor.keyring ~/Downloads/tor-browser-macos-13.0.1.dmg.asc ~/Downloads/tor-browser-macos-13.0.1.dmg
Para usuários GNU/Linux (mude x86_64 para i686 se você tiver o pacote de 32 bits):
gpgv --keyring ./tor.keyring ~/Downloads/tor-browser-linux-x86_64-13.0.1.tar.xz.asc ~/Downloads/tor-browser-linux-x86_64-13.0.1.tar.xz
O resultado do comando deve conter:
gpgv: Good signature from "Tor Browser Developers (signing key) <torbrowser@torproject.org>"
Se você receber mensagens de erro contendo 'Nenhum arquivo ou diretório', algo deu errado com uma das etapas anteriores ou você esqueceu que esses comandos usam nomes de arquivo de exemplo e o seu será um pouco diferente.
Atualizando a chave PGP
Execute o seguinte comando para atualizar a chave de assinatura do Tor Browser Developers em seu chaveiro local do servidor de chaves. Isso também irá buscar as novas subchaves.
gpg --refresh-keys EF6E286DDA85EA2A4BA7DE684E2C6E8793298290
Alternativa (usando uma chave pública)
Caso encontre erros que não possam ser resolvidos, sinta-se à vontade para baixar e usar essa chave pública. Como alternativa, também é possível utilizar o seguinte comando:
curl -s https://openpgpkey.torproject.org/.well-known/openpgpkey/torproject.org/hu/kounek7zrdx745qydx6p59t9mqjpuhdf |gpg --import -
A chave de desenvolvedores do navegador Tor também está disponível em keys.openpgp.org e pode ser baixado de https://keys.openpgp.org/vks/v1/by-fingerprint/EF6E286DDA85EA2A4BA7DE684E2C6E8793298290.
Se você estiver usando MacOS ou GNU/Linux, a chave também pode ser obtida executando o seguinte comando:
gpg --keyserver keys.openpgp.org --search-keys EF6E286DDA85EA2A4BA7DE684E2C6E8793298290
Você também pode aprender mais sobre GnuPG.