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. Below we explain why it is important and how to verify that the Tor Browser you download is the one we have created and has not been modified by some attacker.

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, torbrowser-install-8.0.8_en-US.exe vem acompanhado de torbrowser-install-8.0.8_en-US.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
pub   rsa4096 2014-12-15 [C] [expires: 2025-07-21]
      EF6E286DDA85EA2A4BA7DE684E2C6E8793298290
uid           [ unknown] Tor Browser Developers (signing key) <torbrowser@torproject.org>
sub   rsa4096 2018-05-26 [S] [expires: 2020-12-19]

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 estes comandos usam exemplos de nomes de documentos e os seus serão diferentes: você terá baixado uma versão diferente da 9.0 e você pode não ter escolhido a versão em Inglês (en-US).

Para quem usa Windows:

gpgv --keyring .\tor.keyring Downloads\torbrowser-install-win64-9.0_en-US.exe.asc Downloads\torbrowser-install-win64-9.0_en-US.exe

Para usuários do macOS:

gpgv --keyring ./tor.keyring ~/Downloads/TorBrowser-9.0-osx64_en-US.dmg.asc ~/Downloads/TorBrowser-9.0-osx64_en-US.dmg

Para quem usa GNU/Linux (mude de 64 para 32 se você possui o pacote de 32-bit):

gpgv --keyring ./tor.keyring ~/Downloads/tor-browser-linux64-9.0_en-US.tar.xz.asc ~/Downloads/tor-browser-linux64-9.0_en-US.tar.xz

O uso do comando deve resultar em algo deste tipo:

gpgv: Signature made 07/08/19 04:03:49 Pacific Daylight Time
gpgv:                using RSA key EB774491D9FF06E2
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.

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 -

Tor Browser Developers key is also available on keys.openpgp.org and can be downloaded from https://keys.openpgp.org/vks/v1/by-fingerprint/EF6E286DDA85EA2A4BA7DE684E2C6E8793298290. If you're using MacOS or GNU/Linux, the key can also be fetched by running the following command:
$ gpg --keyserver keys.openpgp.org --search-keys torbrowser@torproject.org

Você também pode aprender mais sobre GnuPG.