EThe name of HashCash makes mention of a Proof of Work (PoW) that was used to minimize spam and denial of service attacks (known as DoS o DDoS). This technology gained wide popularity thanks to its implementation in the Bitcoin and many others cryptocurrencies. Its function in them was to be part of the block validation algorithm. All this through the process of mining is. of cryptocurrencies.
The development of HashCash comes from the hand of Adam Back in 1997. Back is a renowned crypto expert and computer hacker. He development the proof of work system. This as a countermeasure against spam in emails and also in blogs (spam is spam). Back devised this technology based on a job called; "Assessment through processing or combating spam". A document presented in 1992 by computer experts Cynthia dwork y Moni naor.
The objective of HashCash is to require computer work for it to be verified. Once said work is verified, the user is allowed to use the resource. Use in email is based on adding an encrypted header to the email. This header has the information generated by the user using the HashCash system. This is a kind of seal that ensures that the mail has passed the proof of work. This seal is an identifier that shows that the sender has used the processor for a small amount of time. Well, it is the only way to generate a genuine stamp for each email you want to send.
How does HashCash work?
It is based on the idea that if a certain user has used their processor to generate this stamp, it is unlikely that they are a spammer. Receivers with a very low almost negligible computational cost can verify this. In this way we can guarantee that it is not spam.
Decrypting the seal and ensuring it is not spam requires brute computing force. Or what is the same, we need the processor to find the answer by trial and error. Basically, the processor will test combinations according to certain criteria until it finds the correct answer. This would demonstrate that it is not spam.
Spammers base their business model on sending hundreds, thousands, and even millions of emails quickly. All this with a low cost of resources per message. For example; If a 5-second job is requested before sending an email, the cost of sending thousands of emails would be unbearable by the spammer. For its part, the receiver can quickly verify if there is a verification work prior to receiving the mail. With this, you can quickly filter and classify legal emails from spam attempts.
HashCash use cases
The creation of HashCash allowed to propose a mechanism to control spam attacks on mail services. This would be its main and greatest use in computing. However, this tool also laid the foundations for other systems, among which we can highlight:
Protection of connections
One of the weakest links in any network infrastructure is the connection between the client and the server. This can be violated in different ways, leading to the closure of the connection or the theft of the session. Both cases deny customer service, but also present other security risks. To avoid this, HashCash can be used.
This in order to create a connection token generated by an interactive HashCash cost function. With this defense, client-server connections are protected with a hash ensuring that they cannot be "stolen" or "broken" by malicious actors.
Computer file systems
Another use in HashCash computing is in utilization within file systems. This through hashing functions to create a unique signature for each block of stored data. Thanks to this signature, the system is able to verify their authenticity. This allows you to create fault tolerant file systems like downgrade. Among the file systems capable of doing this are ZFS, Btrfs o SFS.