Pague pelo armazenamento usando prova de recuperação em Bitcoin

Desenvolvemos uma nova maneira de os usuários pagarem pelo armazenamento em nuvem. Comparado com o armazenamento em nuvem tradicional, como o S3 da Amazon, os usuários não precisam confiar no servidor. Usamos contratos inteligentes Bitcoin para garantir que os pagamentos dependam da Prova de Recuperação (PoR) do servidor, que só pode ser gerada se os dados ainda estiverem disponíveis e podem ser recuperados quando necessário.

Prova de Recuperação (PoR)

Muitas pessoas terceirizam o armazenamento enviando seus dados (como músicas, fotos e documentos) para servidores remotos para garantir confiabilidade e fácil acesso a partir de vários dispositivos, incluindo telefones celulares e laptops.

Esses usuários estão à mercê de seu provedor de armazenamento e devem confiar no servidor. Se os dados raramente forem acessados, um servidor mal-intencionado poderá descartá-los para economizar recursos ou encobrir um incidente de perda de dados para proteger sua reputação.

O esquema PoR é um protocolo criptográfico que permite a um usuário ou terceiro (como um auditor) verificar se o servidor armazena seus dados. Esse recurso de auditoria garante ao usuário que seus dados ainda estão sendo armazenados. Isso também pode ser crítico para provedores de armazenamento, como startups desconhecidas, já que os usuários podem relutar em confiar seus dados a startups.

Pague pelo armazenamento usando PoR

Um PoR ingênuo é onde o usuário simplesmente solicita ao servidor que baixe todos os dados e verifique a autenticidade. No entanto, isso é muito ineficiente quando os dados armazenados são grandes.

O esquema Shacham/Waters PoR¹ é um protocolo de auditoria eficiente entre cliente e servidor. Um servidor auditado deve conhecer todos os dados do cliente. Também é verificável publicamente, que é o que precisamos ao verificar provas em contratos inteligentes.

Os arquivos são primeiro codificados usando o código Erasure , um tipo de código de correção de erros, para que mesmo que o servidor perca uma pequena parte do arquivo, ele possa ser recuperado. O arquivo codificado é dividido em n pedaços. Uma tag (também chamada de validador) é calculada para cada bloco, que contém suas metainformações e é necessária para uma validação válida. Tanto o pedaço quanto seu rótulo são enviados ao servidor para armazenamento.

Para testar se o servidor ainda possui arquivos, os usuários selecionam aleatoriamente um conjunto de blocos no desafio. Após o servidor receber o desafio, ele precisa enviar de volta uma resposta para verificação pelo usuário.

PORs: prova de recuperação de arquivos grandes

Formalmente, o PoR Shacham/Waters consiste em três etapas.

Precisamos de protocolos não interativos em um ambiente de blockchain onde usuários/validadores e servidores/certificadores não precisem se comunicar entre si. Na etapa 1, deixamos o provador (neste caso, o servidor) gerar o próprio desafio. Para garantir um desafio justo, precisamos de uma fonte de aleatoriedade publicamente rastreável e incontrolável, como o último blockhash³. Na etapa 2, o servidor gera um PoR fora da cadeia com base no desafio da etapa 1. Na etapa 3, o contrato inteligente verifica o PoR. A verificação requer algoritmos de curva elíptica e emparelhamento linear , ambos implementados.

Os usuários implantam contratos inteligentes que só liberarão fundos quando um PoR válido for fornecido. O servidor só será pago se puder enviar um PoR válido, que ele só poderá gerar se ainda estiver armazenando arquivos do usuário.

pagamento periódico

Podemos estender o pagamento único para uma assinatura adicionando pagamentos recorrentes na parte superior para pagar ao servidor um valor fixo de forma recorrente.

canal de pagamento

Se os usuários e o servidor puderem interagir regularmente, eles também poderão realizar pagamentos recorrentes abrindo um canal de pagamento. Os usuários desafiam o servidor mensalmente. O servidor responde com um PoR. Após validar o PoR, o usuário envia seu pagamento mensal aumentando o saldo do canal do servidor. Quando a assinatura de armazenamento expirar, qualquer uma das partes poderá fechar o canal.


[1] Prova compacta de capacidade de pesquisa por H Shacham 2008

[2] A quantidade máxima de perda depende da taxa de correção de erros.

[3] Contanto que o pagamento seja menor que a recompensa do bloco, isso é seguro.

Acho que você gosta

Origin blog.csdn.net/freedomhero/article/details/133076283
Recomendado
Clasificación