Tor (rede de anonimato) é um software livre e de código aberto que proporciona a comunicação anônima e segura ao navegar na Internet e em atividades online, protegendo contra a censura e principalmente a privacidade. O nome é derivado de um acrônimo do projeto original do software chamado “The Onion Router”, em português “O Roteador Cebola”. O Tor direciona o tráfego da Internet por meio de uma rede sobreposta livre e de alcance mundial, consistindo de mais de sete mil retransmissores, para ocultar a localização e utilização do usuário de qualquer pessoa que realize vigilância de rede ou análise de tráfego. O uso do Tor dificulta o rastreamento da atividade da Internet para o usuário: isso inclui “visitas a sites, postagens online, mensagens instantâneas e outras formas de comunicação”. O uso pretendido do Tor é proteger a privacidade pessoal de seus usuários, bem como sua liberdade e capacidade de conduzir comunicação confidencial, mantendo suas atividades na Internet não monitoradas.
Funcionamento
O Tor implementa o roteamento cebola ou por camadas, isto é, usando a rede voluntária de servidores do projeto ao redor do mundo, o programa cria circuitos para trafegar os dados dos usuários. Todo o tráfego da rede Tor é criptografado e mesmo um participante voluntário da rede não consegue observar o tráfego que passa pelo seu servidor, uma vez que tudo é criptografado. Cada circuito no Tor é formado por pelo menos três servidores: servidor de Guarda (guard node), servidor do meio (middle relay) e o servidor de saída (exit node). O número de três conexões é um balanço entre performance e segurança.
Os circuitos de conexão Tor tem tempo de duração e são selecionados a partir de um algoritmo que, entre outras coisas, evita que todo o seu circuito seja criado num mesmo país ou por um mesmo participante da rede. Nesse circuito, em cada nó, o Tor criptografa todos os dados e repassa para o próximo nó da rede. Para evitar análise de tráfego de rede, nessa conexão cada nó sabe apenas um trecho do circuito.
Há um pseudo domínio com terminação .onion, acessível apenas pelo Tor.
Características
Uma observação importante: o usuário deve ter cuidado se for usar a rede Tor para tráfegos não-criptografados, pois a segurança ao nível de transporte que o Tor implementa é só até o nó Tor de saída (exit node). Desse ponto até o destino da rede “convencional”, o tráfego é encaminhado da maneira original como foi entregue ao Tor na máquina local. Então, se o usuário configurar o seu Tor para operar como servidor de relay, terá a possibilidade de logar o tráfego original de todas as pessoas que estiverem passando por túneis cujo nó de saída seja o seu nó Tor, é um pacote de ferramentas para organizações e pessoas que desejam mais segurança na Internet. Com ele, o tráfego de dados na navegação de mensageiros instantâneos, IRC, navegadores, SSH e outros aplicativos que usam o protocolo TCP se tornará anônimo. Ele também fornece uma plataforma na qual os desenvolvedores podem construir novos aplicativos baseados no anonimato, segurança e privacidade. O tráfego é mais seguro ao se usar Tor, pois as comunicações são ligadas através de uma rede distribuída de servidores, chamados roteadores onion (onion router), um projeto que visa à proteção e ao direito do usuário de permanecer anônimo na Internet.
Serviços cebolas (onion services)
O Tor também pode fornecer anonimato para outros servidores e sites. Servidores configurados para receber conexões de entrada somente através do Tor são chamados serviços cebolas, anteriormente chamados de serviços ocultos. Em vez de revelar o Endereço IP de um servidor (e, portanto, sua localização de rede), um serviço cebola é acessado através de seu endereço onion. A rede Tor lê esses endereços e pode encaminhar dados de e para os serviços cebolas, mesmo para aqueles hospedados por trás de firewalls ou NATs, preservando o anonimato de ambas as partes. O Tor é necessário para acessar os serviços cebolas.
Implementações
A principal implementação do Tor está escrita primariamente em C, com Python, JavaScript e diversas outras linguagens de programação, consistindo, em junho de 2020, em pouco mais de 500 mil linhas de código.
Tor Browser
O Tor Browser é carro-chefe do Tor Project. Ele foi criado sob o nome de Tor Browser Bundle por Steven J. Murdoch, tendo sido anunciado em janeiro de 2008. O Tor Browser consiste numa versão modificada do navegador Mozilla Firefox Extended Support Release somado ao TorButton, TorLauncher, NoScript, a extensão para Firefox HTTPS Everywhere e o Tor proxy. Os usuários podem executar o Tor Browser a partir de mídias removíveis. Ele também pode ser operado em dispositivos Microsoft Windows, macOS, ou Linux.
O Tor Browser inicia automaticamente processos secundários do Tor e direciona o tráfego pela rede Tor. Ao fim de uma sessão, o navegador exclui todos os dados sensíveis de privacidade, como cookies de HTTP e histórico de navegação.