O que é HashCash

De Área31 Hackerspace

EO nome do HashCash faz menção a um Prova de Trabalho (PoW) que foi usado para minimizar spam e ataques de negação de serviço (conhecido como DoS o DDoS) Essa tecnologia ganhou grande popularidade graças à sua implementação no Bitcoin e muitos outros criptomonedas. Sua função neles era fazer parte do algoritmo de validação de bloco. Tudo isso através do processo de mineração de criptomoedas.

Vem da Segunda Guerra Mundial, quando parentes enviaram comida enlatada para soldados. Entre esses alimentos, havia uma lata de carne pré-cozida muito comum nos Estados Unidos, chamada Spam. Em 1970, em um esboço da série de televisão Circo Voador de Monty Python (estrelando os comediantes britânicos Monty Python), pratos contendo spam foram servidos aos clientes. Era bastante popular na época e chegou ao campo da informática. Uma vez lá, era usado para se referir a spam enviado indiscriminadamente.

O desenvolvimento do HashCash vem da mão de Adam Back em 1997. Back é um renomado especialista em criptografia e hacker de computador. Ele desenvolvido a prova do sistema de trabalho. Isso é uma contramedida contra spam em e-mails e também em blogs (spam é spam). Back criou essa tecnologia com base em um trabalho chamado; "Avaliação através do processamento ou combate ao spam". Um documento apresentado em 1992 por especialistas em computação Cynthia Dwork y Moni naor.

O objetivo do HashCash é exigir que o trabalho do computador seja verificado. Uma vez verificado o trabalho, o usuário pode usar o recurso. O uso no email é baseado na adição de um cabeçalho criptografado ao email. Este cabeçalho possui as informações geradas pelo usuário usando o sistema HashCash. Esse é um tipo de selo que garante que o correio seja aprovado na prova de trabalho. Esse selo é um identificador que mostra que o remetente usou o processador por um pequeno período de tempo. Bem, é a única maneira de gerar um selo genuíno para cada email que você deseja enviar.

É baseado na ideia de que, se um determinado usuário usou seu processador para gerar esse carimbo, é improvável que ele seja um spammer. Receptores com um custo computacional quase insignificante muito baixo podem verificar isso. Desta forma, podemos garantir que não é spam.

Descriptografar o selo e garantir que não seja spam exige força bruta de computação. Ou o que é o mesmo, precisamos do processador para encontrar a resposta por tentativa e erro. Basicamente, o processador testará combinações de acordo com certos critérios até encontrar a resposta correta. Isso demonstraria que não é spam.

Os spammers baseiam seu modelo de negócios no envio de centenas, milhares e até milhões de e-mails rapidamente. Tudo isso com um baixo custo de recursos por mensagem. Por exemplo; Se um trabalho de 5 segundos for solicitado antes do envio de um email, o custo do envio de milhares de emails seria insuportável pelo remetente de spam. Por sua vez, o destinatário pode verificar rapidamente se há um trabalho de verificação antes de receber o correio. Com isso, você pode filtrar e classificar rapidamente emails legais a partir de tentativas de spam.

A criação do HashCash permitiu propor um mecanismo para controlar ataques de spam nos serviços de correio. Esse seria seu principal e maior uso na computação. No entanto, essa ferramenta também lançou as bases para outros sistemas, entre os quais podemos destacar:

Um dos links mais fracos em qualquer infraestrutura de rede é a conexão entre o cliente e o servidor. Isso pode ser violado de diferentes maneiras, levando ao fechamento da conexão ou ao roubo da sessão. Ambos os casos negam o atendimento ao cliente, mas também apresentam outros riscos de segurança. Para evitar isso, o HashCash pode ser usado.

Isso para criar um token de conexão gerado por uma função de custo interativa do HashCash. Com essa defesa, as conexões cliente-servidor são protegidas com um de hash garantindo que eles não possam ser "roubados" ou "quebrados" por agentes mal-intencionados.

Outro uso na computação HashCash está em utilização em sistemas de arquivos. Isso através de funções de hash para criar uma assinatura exclusiva para cada bloco de dados armazenados. Graças a esta assinatura, o sistema pode verificar sua autenticidade. Isso permite criar sistemas de arquivos tolerantes a falhas, como downgrade. Entre os sistemas de arquivos capazes de fazer isso estão ZFS, btrfs o SFS.

O desenvolvimento do HashCash foi um dos primeiros casos de uso reais que o Proof of Work (PoW) provou ser realmente útil no mundo da computação. Embora a técnica fosse conhecida, nunca havia sido adaptada a uma funcionalidade ou tarefa específica até Adam Back desenvolver o HashCash. A partir de então, o desenvolvimento do PoW foi aprimorado até a criação do Bitcoin.

O Bitcoin utiliza a função hashcash como parte de seu núcleo de mineração. Todos os mineradores de bitcoin também CPU, GPU, FPGA o ASICEles estão dedicando seus esforços à criação de comprovantes de trabalho HashCash. Como muitos algoritmos criptográficos, o HashCash usa uma função hash como um bloco de construção. É graças ao uso do HashCash, que a mineração de Bitcoin é possível. Sem esse software, a atual estrutura de mineração e segurança do Bitcoin não seria possível.[1]


Referências: