Foi lançada a nova versão do GNUnet 0.13. Nesta, um dos principais recursos novos que se destacam é o registro da GANA (GNUnet Assigned Numbers Authority), a implementação do GNS e muito mais. Para aqueles que não conhecem o GNUnet, eles devem saber que o objetivo é construir redes P2P seguras e descentralizadas.
As redes criadas com o GNUnet não têm um único ponto de falha e podem garantir a inviolabilidade das informações privadas dos usuários, incluindo a eliminação de possíveis abusos por agências de inteligência e administradores com acesso aos nós da rede. A versão está marcada como contendo alterações significativas no protocolo que violam a compatibilidade com versões anteriores ao 0.12.x.
O GNUnet suporta a criação de redes P2P através de TCP, UDP, HTTP / HTTPS, Bluetooth e WLAN, e pode funcionar no modo F2F (Friend to Friend). O desvio NAT é suportado, incluindo o uso de UPnP e ICMP. Uma tabela de hash distribuída (DHT) pode ser usada para endereçar a localização dos dados.
Além disso, são fornecidos meios para implantar redes de malha. Para conceder e revogar seletivamente direitos de acesso, é usada uma troca descentralizada de atributos de identificação de reclaimID, usando GNS (GNU Name System) e criptografia baseada em atributo.
Lançado GNUnet 0.13
O sistema é caracterizado pelo baixo consumo de recursos e pelo uso de uma arquitetura multithread para garantir o isolamento entre os componentes.
São fornecidas instalações flexíveis para gravação e estatísticas. Para desenvolver aplicativos de usuário final, o GNUnet fornece uma API para a linguagem C e pastas para outras linguagens de programação.
Para simplificar o desenvolvimento, propõe-se usar loops e processos de eventos em vez de threads. A estrutura inclui uma biblioteca de teste para implantação automática de redes experimentais, cobrindo dezenas de milhares de pares.
Destaques do GNUnet 0.13
Nesta nova versão, como mencionamos no início, a principal novidade é que o registro do GANA (GNUnet Assigned Numbers Authority) foi estabelecido, responsável por atribuir nomes e endereços ao GNUnet.
Isso também, juntamente com a implementação do sistema de nomes de domínio descentralizado GNS , está alinhado com as especificações propostas pela IETF.
Outra mudança importante é que o trabalho do “bloco” do plug-in NSS foi ajustado, novos sinalizadores suplementares foram adicionados para registros que não são publicados explicitamente sob a tag especificada, mas são retornados pelo resolvedor.
No mecanismo de revogação de chave (GNS/REVOCATION), a função de prova de trabalho concluída é transferida para o uso do algoritmo de hash Argon2. No serviço de troca de atributos de identificação descentralizada (RECLAIM), o tamanho do ticket foi aumentado para 256 bits.
Das outras mudanças que se destacam nesta nova versão:
- Saída de aviso adicionada ao utilitário gnunet-namestore ao adicionar registros TLSA ou SRV fora de um registro BOX.
- O plug-in de transporte que usa o protocolo UDP para transferência de dados foi movido para a categoria experimental devido a problemas de estabilidade;
- O formato do arquivo de chave e o método de serialização de chave privada ECDSA são unificados com outras bibliotecas (as chaves antigas deixarão de funcionar).
- A biblioteca libsodium é usada como uma implementação de algoritmos de criptografia baseados em curvas elípticas.
- Foi adicionada a capacidade de criar utilitários com a biblioteca cURL, não relacionada a gnutls.
- O servidor de integração contínua do Buildbot foi retornado.
- As bibliotecas libmicrohttpd, libjansson e libsodium estão incluídas nas dependências de construção.
Como instalar o GNUnet no Linux?
Para os interessados em instalar essa estrutura, eles podem fazer isso seguindo as instruções abaixo. Para quem é usuário do Arch Linux, Manjaro ou qualquer outro derivado, basta abrir um terminal e digite o seguinte comando:
sudo pacman -S gnunet
Agora, no caso daqueles que são usuários do Fedora, a instalação pode ser feita primeiro, habilitando o repositório com o seguinte comando:
E depois eles instalam com este comando:
Do mesmo modo, é possível compilar o código seguindo as instruções detalhadas neste link.