Foi lançado o GNUnet 0.17, um framework projetado para construir redes P2P descentralizadas e seguras. As redes criadas com o GNUnet não possuem um único ponto de falha e conseguem garantir a privacidade dos usuários, eliminando potenciais abusos por parte de agências de segurança e administradores que tenham acesso aos nós da rede.
O GNUnet suporta a criação de redes P2P sobre TCP, UDP, HTTP/HTTPS, Bluetooth e WLAN, podendo operar no modo F2F (Friend-to-friend). Suporte para a ultrapassagem de NAT, incluindo o uso de UPnP e ICMP, é oferecido. Para endereçamento de armazenamento de dados, é possível usar uma tabela hash distribuída (DHT). Ferramentas para a implementação de redes mesh são disponibilizadas. Para concessão e revogação seletiva de direitos de acesso, é utilizado o serviço de troca descentralizada de atributos de identificação reclaimID, que emprega o GNS (GNU Name System) e criptografia baseada em atributos.
O sistema se destaca por seu baixo consumo de recursos e pela utilização de uma arquitetura multiprocessada para garantir isolamento entre os componentes. Fornece ferramentas flexíveis para registro de logs e acumulação de estatísticas. Para o desenvolvimento de aplicativos finais, o GNUnet disponibiliza uma API para a linguagem C e bindings para outras linguagens de programação. Para simplificar o desenvolvimento, sugere-se o uso de loops de eventos em vez de threads e processos. Inclui uma biblioteca de testes para a implantação automática de redes experimentais que abrangem dezenas de milhares de pares.
Vários aplicativos prontos estão sendo desenvolvidos com base nas tecnologias GNUnet:
- O Sistema de Nomes de Domínio GNS (GNU Name System) atua como uma substituição totalmente descentralizada e resistente à censura para o DNS. O GNS pode ser usado lado a lado com o DNS e em aplicações tradicionais, como navegadores web. Ao contrário do DNS, o GNS utiliza um grafo direcionado em vez de uma hierarquia de servidores em árvore. A conversão de nomes é semelhante à do DNS, mas as solicitações e respostas são realizadas com preservação da privacidade — o nó que processa a solicitação não sabe a quem a resposta é enviada, e nós de trânsito e observadores externos não conseguem decifrar as solicitações e respostas. A integridade e a imutabilidade dos registros são garantidas pelo uso de mecanismos criptográficos. A zona DNS no GNS é definida por uma combinação de chaves pública e privada ECDSA baseada em curvas elípticas Curve25519.
- Serviço para troca anônima de arquivos, que não permite a análise das informações ao transmitir dados apenas de forma criptografada e não permite rastrear quem enviou, buscou ou baixou arquivos, graças ao uso do protocolo GAP.
- Sistema VPN para criar serviços ocultos no domínio '.gnu' e encaminhar túneis IPv4 e IPv6 sobre uma rede P2P. Além disso, suporta esquemas de tradução IPv4-para-IPv6 e IPv6-para-IPv4, bem como a criação de túneis IPv4 sobre IPv6 e IPv6 sobre IPv4.
- Serviço GNUnet Conversation para realizar chamadas de voz sobre o GNUnet. Para identificação de usuários, é utilizado o GNS; o conteúdo do tráfego de voz é transmitido de forma criptografada. A anonimidade ainda não é garantida — outros pares podem rastrear a conexão entre dois usuários e identificá-los. endereços IP.
- Plataforma para construir redes sociais descentralizadas Secushare, que utiliza o protocolo PSYC e suporta a disseminação de notificações em modo multicast com uso de criptografia de ponta a ponta, para que apenas usuários autorizados (aqueles a quem as mensagens não são endereçadas, incluindo administradores de nós, não consigam lê-las) tenham acesso a mensagens, arquivos, chats e discussões;
- Sistema para organização de e-mails criptografados chamado pretty Easy privacy, que aplica o GNUnet para proteger metadados e suporta vários protocolos criptográficos para verificação de chaves;
- O sistema de pagamento GNU Taler, que oferece anonimato para compradores, mas rastreia as transações dos vendedores para garantir transparência e fornecer relatórios fiscais. Suporta a operação com várias moedas existentes e dinheiro eletrônico, incluindo dólares, euros e bitcoins.
A nova versão do GNUnet inclui alterações que comprometem a compatibilidade do protocolo e podem causar problemas na interação entre nós baseados no GNUnet 0.17 e versões anteriores. Em particular, a compatibilidade no nível da Tabela Hash Distribuída (DHT) foi rompida — a implementação da DHT foi atualizada para uma nova versão do padrão, e as definições dos tipos de bloco foram transferidas para a GANA (GNUnet Assigned Numbers Authority). Foi adicionada suporte para formatos de mensagens alinhados e reorganizados. Alterações incompatíveis referentes ao sistema de nomes de domínio descentralizado GNS (GNU Name System) também foram revertidas conforme a nova especificação. Para os registros adicionados ao GNS, agora é possível configurar o tempo de vida do registro.
Fonte: opennet.ru
