Atención: Estas instrucciones son para verificar el código fuente de tor. Por favor sigue las instrucciones correctas para verificar la firma del Navegador Tor.

La firma digital es un proceso que asegura que un paquete fue generado por sus desarrolladores y no ha sido alterado. Debajo explicamos por qué es importante y cómo verificar que el código fuente de tor que descargas es el que hemos creado y no ha sido modificado por algún atacante.

Cada archivo en nuestra página de descarga va acompañado de dos archivos etiquetados como "checksum" y "sig" con el mismo nombre que el paquete y la extensión ". sha256sum" y ".sha256sum.asc" respectivamente.

El archivo .asc verificará que el archivo .sha256sum (que contiene la suma de verificación del paquete) no se ha alterado. Una vez que validada la firma (ver a continuación cómo se hace), la integridad del paquete se puede validar con:

$ sha256sum -c *.sha256sum

Estos archivos te permiten verificar que el archivo descargado es exactamente el que buscas. Esto variará según el navegador web, pero normalmente puedes descargar este archivo haciendo clic-derecho en el enlace "sig" y "checksum" y seleccionando la opción "guardar archivo como".

Por ejemplo, tor-0.4.6.7.tar.gz está acompañado por tor-0.4.6.7.tar.gz.asc. Estos son nombres de archivos de ejemplo y no coincidirán exactamente con los nombres de los archivos que descargues.

Ahora mostramos cómo puedes verificar la firma digital de los archivos descargados en diferentes sistemas operativos. Por favor ten en cuenta que una firma es fechada en el momento en que el paquete ha sido firmado. Por lo tanto, cada vez que se sube un archivo nuevo, se genera una nueva firma con una fecha distinta. En la medida en que hayas verificado la firma, no deberías preocuparte si la fecha reportada varía con la del ejemplo.

Instalar GnuPG

En primer lugar, necesitas tener GnuPG instalado antes de verificar firmas.

Para usuarios de Windows:

Si usas Windows, descarga Gpg4win y ejecuta el instalador.

A fin de verificar la firma, necesitarás escribir unos pocos comandos en la utilidad de línea de comandos de Windows, cmd.exe.

Para usuarios macOS:

Si estás usando macOS, puedes instalar GPGTools.

Para comprobar la validez de la firma digital, debes escribir unos cuantos comandos en el Terminal (está en "Aplicaciones").

Para usuarios GNU/Linux:

Si usas GNU/Linux, probablemente ya tengas instalado GnuPG, la mayoría de distribuciones lo incluyen.

Con el objeto de verificar la firma, necesitarás tipear unos pocos comandos en una ventana de terminal. Cómo hacer esto variará dependiendo de tu distribución.

Obteniendo la clave de los desarrolladores de Tor

Las siguientes claves pueden firmar el tarball. No esperes todas las firmas, puede variar dependiendo de quién esté disponible para hacer el lanzamiento.

Puedes conseguir la clave con los enlaces proporcionados anteriormente o con:

$ gpg --auto-key-locate nodefault,wkd --locate-keys ahf@torproject.org
$ gpg --auto-key-locate nodefault,wkd --locate-keys dgoulet@torproject.org
$ gpg --auto-key-locate nodefault,wkd --locate-keys nickm@torproject.org

Esto debería mostrar (para nickm) algo parecido a:

gpg: key FE43009C4607B1FB: public key "Nick Mathewson <nickm@torproject.org>" imported
gpg: Total number processed: 1
gpg:               imported: 1
pub   rsa4096 2016-09-21 [C] [expires: 2025-10-04]
      2133BC600AB133E1D826D173FE43009C4607B1FB
uid           [ unknown] Nick Mathewson <nickm@torproject.org>
sub   rsa4096 2016-09-23 [S] [expires: 2025-10-04]
sub   rsa4096 2016-09-23 [E] [expires: 2025-10-04]

Si obtienes un mensaje de error, algo ha salido mal, y no puedes continuar hasta que te hayas dado cuenta de por qué no funcionó. Podrías importar la clave usando la sección Alternativa (usando una clave pública).

Después de importar la clave, puedes guardarla en un archivo (identificado aquí por su huella digital):

$ gpg --output ./tor.keyring --export 0x2133BC600AB133E1D826D173FE43009C4607B1FB

Este comando tiene como resultado que la clave sea guardada a un archivo que se encuentra en la ruta ./tor.keyring, por ejemplo, en la carpeta actual. Si ./tor.keyring no existe después de ejecutar este comando, algo ha salido mal y no puedes continuar hasta que hayas averiguado por qué no funcionó esto.

Comprobar la firma

Para verificar la firma del paquete que has descargado, necesitas descargar la firma .sha256sum.asc correspondiente y el propio archivo .sha256sum y verificarlo con un comando que le dice a GnuPG que verifique el archivo descargado.

Los siguientes ejemplos asumen que has descargado estos dos archivos en la carpeta "Descargas". Ten en cuenta que estos comandos usan nombres de archivos de ejemplo y los tuyos serán diferentes: habrás de descargar una versión diferente de la 9.0, y puede que no hayas elegido la versión en Inglés (en-US).

Para usuarios de Windows:

gpgv --keyring .\tor.keyring Downloads\tor-0.4.6.10.tar.gz.sha256sum.asc Downloads\tor-0.4.6.10.tar.gz.sha256sum

Para usuarios macOS:

gpgv --keyring ./tor.keyring ~/Downloads/tor-0.4.6.10.tar.gz.sha256sum.asc ~/Downloads/tor-0.4.6.10.tar.gz.sha256sum

Para usuarios de BSD o Linux:

gpgv --keyring ./tor.keyring ~/Downloads/tor-0.4.6.10.tar.gz.sha256sum.asc ~/Downloads/tor-0.4.6.10.tar.gz.sha256sum

El resultado del comando debería producir algo como esto (dependiendo de qué clave lo firmó):

gpgv: Signature made Mon 16 Aug 2021 04:44:27 PM -03
gpgv:                using RSA key 7A02B3521DC75C542BA015456AFEE6D49E92B601
gpgv: Good signature from "Nick Mathewson <nickm@torproject.org>"

Si te aparecen mensajes de error conteniendo 'No existe el archivo o directorio', o bien aldo salió mal con uno de los pasos previos, u olvidaste que estos comandos usan nombres de archivos de ejemplo, y los tuyos serán un poco diferentes.

Es posible que quieras saber más sobre GnuPG.

Verificación de la suma de comprobación

Una vez que hemos validado las firmas digitales de la suma de comprobación, necesitamos verificar la integridad del paquete.

Para usuarios de Windows:

certUtil -hashfile tor-0.4.6.10.tar.gz.sha256sum SHA256

Para usuarios macOS:

shasum -a 256 tor-0.4.6.10.tar.gz.sha256sum

Para usuarios de BSD o Linux:

sha256sum -c tor-0.4.6.10.tar.gz.sha256sum