Alguns dias atrás, o lançamento de a nova versão do sistema de arquivos descentralizado IPFS 0.8.0 (InterPlanetary File System), que é um armazenamento de arquivos com versão global implementado na forma de uma rede P2P composta de sistemas membros.
IPFS combina ideias previamente implementadas em sistemas como Git, BitTorrent, Kademlia, SFS e a Web para parecer um único enxame de BitTorrent (pares que participam da distribuição) trocando objetos Git. O IPFS é endereçado pelo conteúdo, e não pelo local e nomes arbitrários. O código de implementação de referência é escrito em Go e licenciado pela Apache 2.0 e MIT.
Para aqueles que não estão familiarizados com o IPFS, eles devem saber que neste sistema de arquivos, um link de arquivo está diretamente relacionado ao seu conteúdo e inclui um hash criptográfico do conteúdo. O endereço do arquivo não pode ser renomeado arbitrariamente, ele só pode ser alterado após a alteração do conteúdo. Da mesma forma, é impossível fazer uma alteração no arquivo sem alterar o endereço (a versão antiga permanecerá no mesmo endereço e a nova estará disponível em um endereço diferente).
Levando em consideração que o identificador do arquivo muda a cada mudança, de modo a não transferir novos links a cada vez, serviços são fornecidos para vincular endereços permanentes que levam em consideração diferentes versões do arquivo (IPNS), ou definem um alias por analogia com FS e DNS tradicionais.
Depois de baixar o arquivo para o seu sistema, o participante passa a ser automaticamente um dos pontos de distribuição. Uma tabela hash distribuída (DHT) é usada para determinar os participantes da rede nos nós nos quais o conteúdo de interesse está presente.
IPFS ajuda a resolver problemas como confiabilidade de armazenamento (se o armazenamento original estiver desabilitado, o arquivo pode ser baixado dos sistemas de outros usuários), para suportar a censura de conteúdo e também para poder organizar o acesso na ausência de uma conexão com a Internet ou se a qualidade do canal de comunicação for ruim.
Principais novos recursos do IPFS 0.8
Nesta nova versão a capacidade de criar serviços externos foi implementada para fixar os dados do usuário (fixar os dados a um nó, para garantir que dados importantes sejam salvos). Os dados atribuídos ao serviço podem ter nomes separados, diferente do identificador de conteúdo (CID), portanto, é possível pesquisar os dados tanto por nome quanto por CID.
Para processar solicitações de correção de dados, IPFS Pinning Service API é proposta, que pode ser usado diretamente no go-ipfs. Na linha de comando para fixar, o comando "ipfs pin remote" é oferecido.
O subsistema de pinos foi redesenhado para torná-lo muito mais rápido e flexível na maneira como rastreia os pinos. Para usuários que trabalham com muitos pinos, isso levará a um grande aumento de velocidade na lista e modificação do conjunto de elementos ancorados, bem como diminuição do uso de memória.
Parte do redesenho foi configurado para levar em consideração a capacidade de interagir com os pinos locais da mesma forma que agora podemos interagir com os pinos remotos (por exemplo, nomes, ser capaz de definir o mesmo CID várias vezes, etc.). Fique ligado para mais melhorias de fixação.
Ao gerar links "https: //" para gateways, foi adicionada a capacidade de transferir nomes DNSLink usando subdomínios.
Os links agora podem ser usados, onde pontos nos nomes originais são substituídos pelo caractere "-" e os caracteres "-" existentes são substituídos por outro caractere semelhante, e o suporte para o protocolo QUIC foi estendido. Para aumentar o desempenho, a capacidade de aumentar o recebimento buffers para UDP são fornecidos.
Finalmente se você quiser saber mais sobre isso sobre esta nova versão, você pode verificar os detalhes em o seguinte link.
Como usar o IPFS no Linux?
Para aqueles que estão interessados em implementar o IPFS em seus sistemas, eles podem fazê-lo seguindo as instruções que são detalhados neste artigo.