Pular para o conteúdo principal
Change page

Armazenamento Descentralizado

Última edição: @borja_reverter(opens in a new tab), 2 de setembro de 2024

Ao contrário de um servidor localizado centralmente operado por uma única empresa ou organização, os sistemas de armazenamento descentralizado consistem em uma rede ponto a ponto de usuários operadores que mantêm uma parte dos dados gerais, criando um sistema resiliente de armazenamento e compartilhamento de arquivos. Elas podem estar em um aplicativo baseado em blockchain ou qualquer rede baseada em peer-to-peer.

A Ethereum em si pode ser usada como um sistema de armazenamento descentralizado, e é quando se trata de codificar o armazenamento em todos os contratos inteligentes. No entanto, quando se trata de grandes quantidades de dados, para as quais a Ethereum não foi concebida. A corrente está crescendo constantemente, mas no momento da escrita, a cadeia Ethereum é de cerca de 500GB - 1TB (dependendo do cliente(opens in a new tab)), e cada nó da rede precisa ser capaz de armazenar todos os dados. Se a cadeia fosse expandir para grandes quantidades de dados (diga 5TBs) não seria viável que todos os nós continuassem a rodar. Além disso, o custo de implantar essa quantidade de dados para a rede principal seria proibitivamente caro devido às taxas de gás.

Devido a essas restrições, precisamos de uma cadeia ou metodologia diferente para armazenar grandes quantidades de dados de forma descentralizada.

Ao analisar as opções de armazenamento descentralizado (dStorage), existem algumas coisas que o usuário deve ter em mente.

  • Mecanismo de persistência/estrutura de incentivo
  • Execução de retenção de dados
  • Descentralizada
  • Consenso

Mecanismo de persistência / estrutura de incentivo

Baseado em blockchain

Para que uma peça de dados se mantenha para sempre, precisamos utilizar um mecanismo de persistência. Por exemplo, na Ethereum, o mecanismo de persistência é que toda a cadeia precisa ser contabilizada ao executar um nó. Novos dados são empilhados no final da cadeia, continuando a crescer - exigindo que cada nó replique todos os dados embutidos.

Conhecemos isto como persistência baseada em blockchain.

O problema com persistência baseada em blockchain é que a cadeia pode ficar muito grande para manter e armazenar todos os dados viáveis (por exemplo, muitas fontes(opens in a new tab) estimam que a Internet precisa de mais de 40 Zetabytes de capacidade de armazenamento).

A blockchain (cadeia de blocos) também deve ter algum tipo de estrutura de incentivo. Para persistência baseada em blockchain, há um pagamento feito ao validador. Quando os dados são adicionados à cadeia, os validadores são pagos para adicionar os dados.

Plataformas com persistência baseada em blockchain (cadeia de blocos):

Baseado em contratos

A persistência baseada em contrato tem a intuição de que os dados não podem ser replicados por todos os nós e mantidos para sempre, senão que, ao invés disso, devem ser mantidos com acordos de contrato. Trata-se de acordos celebrados com vários nós que prometeram a conservação de dados por um período de tempo. Devem ser reembolsados ou renovados sempre que se esgotem para manter os dados persistentes.

Na maioria dos casos, em vez de armazenar todos os dados on-chain, o hash de onde os dados estão localizados em uma cadeia é armazenado. Dessa forma, a cadeia inteira não precisará escalar para guardar todos os dados.

Plataformas com persistência baseada em blockchain (cadeia de blocos):

Considerações finais

IPFS é um sistema distribuído para armazenamento e acesso a arquivos, sites, aplicações e dados. Ele não tem um esquema baseado em incentivos, mas pode ser usado com qualquer uma das soluções acima baseadas em contratos de incentivos para persistências de longo prazo. Outra maneira de persistir dados no IPFS é trabalhar com um serviço fixo, que permita "fixar" seus dados para você. Você pode até mesmo rodar seu próprio nó IPFS e contribuir para a rede para persistir seus dados ou os de outra pessoa de forma gratuita!

SWARM é uma tecnologia descentralizada de armazenamento e distribuição de dados com um sistema de incentivo ao armazenamento e um oráculo de preços de aluguel de armazenamento.

Retenção de dados

A fim de conservar dados, os sistemas devem dispor de algum tipo de mecanismo para garantir a conservação dos dados.

Mecanismo de desafio

Uma das maneiras mais populares de garantir que os dados sejam mantidos, é usar algum tipo de desafio criptográfico emitido aos nós para ter certeza que eles ainda possuem os dados. Uma pessoa simples é olhar para a comprovação de acesso da Arweave. Eles lançam um desafio aos nós para ver se eles têm os dados tanto no bloco mais recente quanto em um bloco aleatório no passado. Se o nó não conseguir dar a resposta, ele será penalizado.

Tipos de dStorage com um mecanismo de desafio:

  • Züs
  • Skynet
  • Arweave
  • Filecoin
  • Rede Crust
  • 4EVERLAND

Descentralização

Não há ótimas ferramentas para medir o nível de descentralização das plataformas, mas, em geral, você vai querer usar ferramentas que não têm nenhuma forma de KYC para fornecer evidências que não estão centralizadas.

Ferramentas descentralizadas sem KYC:

  • Züs (implementação de uma edição não-KYC)
  • Skynet
  • Arweave
  • Filecoin
  • IPFS
  • Ethereum
  • Rede Crust
  • 4EVERLAND

Consenso

A maioria dessas ferramentas tem sua própria versão de um mecanismo de consenso mas, geralmente, elas são baseadas em proof-of-work (prova de trabalho) ou proof-of-stake (prova de participação, PoS).

Baseado em prova de trabalho (proof-of-work):

  • Skynet
  • Arweave

Baseado em prova de participação (proof-of-stake):

  • Ethereum
  • Filecoin
  • Züs
  • Rede Crust

IPFS - InterPlanetary File System é um sistema descentralizado de armazenamento e referenciamento de arquivos para a Ethereum.

Storj DCS - Armazenamento descentralizado e compatível com a S3-Cloud para desenvolvedores.

Skynet - O Skynet é uma cadeia descentralizada de PoW dedicada a uma web descentralizada.

Filecoin - Filecoin foi criado pela mesma equipe por trás do IPFS. É uma camada de incentivo no topo dos ideais IPFS.

Arweave - Arweave é uma plataforma de dStorage para armazenar dados.

Züs - Züs é uma plataforma de prova de participação dStorage com fragmentação e blobbers.

Rede Croust - Crust é uma plataforma de dStorage no topo do IPFS.

Swarm - Uma plataforma de armazenamento distribuída e serviço de distribuição de conteúdo para a pilha Ethereum web3.

OrbitDB - Um banco de dados descentralizado peer-to-peer no topo do IPFS.

Aleph.im - Projeto na nuvem descentralizado (banco de dados, armazenamento de arquivos, computação e DID). Uma combinação única de tecnologia off-chain e peer-to-peer. IPFS e compatibilidade multicadeia.

Ceramic - Armazenamento de banco de dados IPFS controlado pelo usuário para aplicativos ricos em dados e envolventes.

Filebase - Armazenamento descentralizado compatível com S3 e serviço de fixação IPFS com redundância geográfica. Todos os arquivos carregados para o IPFS através do Filebase são automaticamente fixados na infraestrutura do Filebase com replicação 3x em todo o mundo.

4EVERLAND - Plataforma web 3.0 de computação em nuvem que integra armazenamento, computação e capacidades de núcleo em rede, é compatível com o S3 e fornece armazenamento de dados síncrono em redes de armazenamento descentralizadas, como IPFS e Arweave. s

Kaleido - Uma plataforma blockchain como serviço com nós IPFS ao clique de um botão

Leitura adicional

Conhece um recurso da comunidade que ajudou você? Edite essa página e adicione-o!

  • Estruturas de desenvolvimento

Este artigo foi útil?