Misplaced Pages

Hashcash

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

Hashcash is a proof-of-work system used to limit email spam and denial-of-service attacks . Hashcash was proposed in 1997 by Adam Back and described more formally in Back's 2002 paper "Hashcash – A Denial of Service Counter-Measure". In Hashcash the client has to concatenate a random number with a string several times and hash this new string. It then has to do so over and over until a hash beginning with a certain number of zeros is found.

#199800

51-411: The idea "...to require a user to compute a moderately hard, but not intractable function..." was proposed by Cynthia Dwork and Moni Naor in their 1992 paper "Pricing via Processing or Combatting Junk Mail". Hashcash is a cryptographic hash-based proof-of-work algorithm that requires a selectable amount of work to compute, but the proof can be verified efficiently. For email uses, a textual encoding of

102-443: A moderator before being sent to the rest of the subscribers (moderated lists), although higher-traffic lists typically only moderate messages from new subscribers. Companies sending out promotional newsletters have the option of working with whitelist mail distributors, which agree to standards and high fines from ISPs should any of the opt-in subscribers complain. In exchange for their compliance and agreement to prohibitive fines,

153-429: A centralized e-mail topology (like a mailing list ), in which some server is to send an enormous number of legitimate e-mails, and botnets or cluster farms with which spammers can increase their processing power enormously. Most of these issues may be addressed. E.g., botnets may expire faster because users notice the high CPU load and take counter-measures, and mailing list servers can be registered in white lists on

204-427: A different header be computed for each recipient. The date allows the recipient to record headers received recently and to ensure that the header is unique to the email message. The sender prepares a header and appends a counter value initialized to a random number. It then computes the 160-bit SHA-1 hash of the header. If the first 20 bits (i.e. the 5 most significant hex digits) of the hash are all zeros, then this

255-438: A hash collision is exponential with the number of zero bits. So additional zero bits can be added (doubling the amount of time needed to compute a hash with each additional zero bit) until it is too expensive for spammers to generate valid header lines. Confirming that the header is valid is much faster and always takes the same amount of time, no matter how many zero bits are required for a valid header, since this requires only

306-482: A hash digest with several leading zeros. The more zeros, the higher the reputation. Hashcash is not patented, and the reference implementation and most of the other implementations are free software. Hashcash is included or available for many Linux distributions . RSA has made IPR statements to the IETF about client-puzzles in the context of an RFC that described client-puzzles (not hashcash). The RFC included hashcash in

357-404: A hashcash stamp is added to the header of an email to prove the sender has expended a modest amount of CPU time calculating the stamp prior to sending the email. In other words, as the sender has taken a certain amount of time to generate the stamp and send the email, it is unlikely that they are a spammer. The receiver can, at negligible computational cost, verify that the stamp is valid. However,

408-731: A key technology underlying hashcash and bitcoin . Her publications include: She was elected as a Fellow of the American Academy of Arts and Sciences (AAAS) in 2008, as a member of the National Academy of Engineering in 2008, as a member of the National Academy of Sciences in 2014, as a fellow of the Association for Computing Machinery (ACM) in 2015, and as a member of the American Philosophical Society in 2016. Dwork received

459-534: A list, so the group of subscribers is referred to as "the mailing list", or simply "the list". At least two types of mailing lists can be defined: Historically mailing lists preceded email/web forums; both can provide analogous functionalities. When used in that fashion, mailing lists are sometimes known as discussion lists or discussion forums . Discussion lists provide some advantages over typical web forums, so they are still used in various projects, notably Git and Debian . The advantages over web forums include

510-469: A member of the list sends a note to the group's special address, the e-mail is broadcast to all of the members of the list. The key advantage of a mailing list over things such as web-based discussion is that as the new message becomes available they are immediately delivered to the participants' mailboxes. A mailing list sometimes can also include information such as phone number, postal address, fax number, and more. An electronic mailing list or email list

561-459: A now deprecated open specification called "Email Postmark". It is similar to Hashcash. This was part of Microsoft's Coordinated Spam Reduction Initiative (CSRI). The Microsoft email postmark variant of Hashcash is implemented in the Microsoft mail infrastructure components Exchange, Outlook, and Hotmail. The format differences between Hashcash and Microsoft's email postmark are that postmark hashes

SECTION 10

#1732787314200

612-412: A number of awards for her work. Dwork is the daughter of American mathematician Bernard Dwork , and sister of historian Debórah Dwork . She has a black belt in taekwondo . Mailing list A mailing list is a collection of names and addresses used by an individual or an organization to send material to multiple recipients. The term is often extended to include the people subscribed to such

663-401: A particular day by the list server are combined into one email that is sent once per day to subscribers. Some mailing lists allow individual subscribers to decide how they prefer to receive messages from the list server (individual or digest ). Mailing lists have first been scholarly mailing lists. The genealogy of mailing lists as a communication tool between scientists can be traced back to

714-479: A single hashing operation. The Hashcash system has the advantage over micropayment proposals applying to legitimate e-mail that no real money is involved. Neither the sender nor recipient need to pay, thus the administrative issues involved with any micropayment system and moral issues related to charging for e-mail are entirely avoided. On the other hand, as Hashcash requires potentially significant computational resources to be expended on each e-mail being sent, it

765-399: Is a special use of email that allows for widespread distribution of information to many Internet users. It is similar to a traditional mailing list – a list of names and addresses – as might be kept by an organization for sending publications to its members or customers, but typically refers to four things: Electronic mailing lists usually are fully or partially automated through

816-555: Is an American computer scientist best known for her contributions to cryptography , distributed computing , and algorithmic fairness . She is one of the inventors of differential privacy and proof-of-work . Dwork works at Harvard University , where she is Gordon McKay Professor of Computer Science, Radcliffe Alumnae Professor at the Radcliffe Institute for Advanced Study , and Affiliated Professor at Harvard Law School and Harvard's Department of Statistics. Dwork

867-407: Is an acceptable header. If not, then the sender increments the counter and tries the hash again. Out of 2 possible hash values, there are 2 hash values that satisfy this criterion. Thus the chance of randomly selecting a header that will have 20 zeros as the beginning of the hash is 1 in 2 (approx. 10, or about one in a million). The number of times that the sender needs to try to get a valid hash value

918-406: Is at stake in the communities gathered around lists. Anthropologists, sociologists and historians have used mailing lists as fieldwork. Topics include TV series fandom, online culture, or scientific practices among many other academic studies. From the historian's point of view, the issue of the preservation of mailing lists heritage (and Internet fora heritage in general) is essential. Not only

969-429: Is even a small cost for each spam they send. Receivers can verify whether a sender made such an investment and use the results to help filter email. The header line looks something like this: The header contains: The header contains the recipient's email address, the date of the message, and information proving that the required computation has been performed. The presence of the recipient's email address requires that

1020-443: Is known for her research placing privacy-preserving data analysis on a mathematically rigorous foundation, including the invention of differential privacy in the early to mid 2000s, a strong privacy guarantee frequently permitting highly accurate data analysis. The definition of differential privacy relies on the notion of indistinguishability of the outputs irrespective of whether an individual has contributed their data or not. This

1071-433: Is modeled by geometric distribution . Hence the sender will on average have to try 2 values to find a valid header. Given reasonable estimates of the time needed to compute the hash, this would take about one second to find. No more efficient method than this brute force approach is known to find a valid header. A normal user on a desktop PC would not be significantly inconvenienced by the processing time required to generate

SECTION 20

#1732787314200

1122-403: Is needed. Hashcash can be incrementally deployed—the extra Hashcash header is ignored when it is received by mail clients that do not understand it. One plausible analysis concluded that only one of the following cases is likely: either non-spam e-mail will get stuck due to lack of processing power of the sender, or spam e-mail is bound to still get through. Examples of each include, respectively,

1173-632: Is notably used for archiving the Linux kernel mailing list along with many other software development mailing lists and has a web-service API used by search-and-retrieval tools intended for use by the Linux kernel development community ). Listwashing is the process through which individual entries in mailing lists are to be removed. These mailing lists typically contain email addresses or phone numbers of those that have not voluntarily subscribed. Only complainers are removed via this process. Because most of those that have not voluntarily subscribed stay on

1224-562: Is often available to allow people to subscribe, unsubscribe, and change their preferences. However, mailing list servers existed long before the World Wide Web , so most also accept commands over email to a special email address. This allows subscribers (or those who want to be subscribers) to perform such tasks as subscribing and unsubscribing, temporarily halting the sending of messages to them, or changing available preferences – all via email. The common format for sending these commands

1275-403: Is somewhat difficult to tune the ideal amount of average time one wishes clients to expend computing a valid header. This can mean sacrificing accessibility from low-end embedded systems or else running the risk of hostile hosts not being challenged enough to provide an effective filter from spam. Hashcash is also fairly simple to implement in mail user agents and spam filters. No central server

1326-416: Is to send an email that contains simply the command followed by the name of the electronic mailing list the command pertains to. Examples: subscribe anylist or subscribe anylist John Doe . Electronic mailing list servers may be set to forward messages to subscribers of a particular mailing list either individually as they are received by the list server, or in digest form in which all messages received on

1377-612: Is typically achieved by adding small amounts of noise either to the input data or to outputs of computations performed on the data. She uses a systems-based approach to studying fairness in algorithms including those used for placing ads. Dwork has also made contributions in cryptography and distributed computing , and is a recipient of the Edsger W. Dijkstra Prize for her early work on the foundations of fault-tolerant systems . Her contributions in cryptography include non-malleable cryptography with Danny Dolev and Moni Naor in 1991,

1428-566: The "nonce" that, when included in the block, results in an acceptable hash. Unlike hashcash, Bitcoin's difficulty target does not specify a minimum number of leading zeros in the hash. Instead, the hash is interpreted as a (very large) integer, and this integer must be less than the target integer. This is necessary because the Bitcoin network must periodically adjust its difficulty level to maintain an average time of 10 minutes between successive blocks. If only leading zeros were considered, then

1479-516: The Bitcoin cryptocurrency network employs a different hash-based proof-of-work challenge to enable competitive Bitcoin mining . A Bitcoin miner runs a computer program that collects unconfirmed transactions from users on the network. Together, these can form a "block" and earn a payment to the miner, but a block is only accepted by the network if its hash meets the network's difficulty target. Thus, as in hashcash, miners must discover by brute force

1530-462: The Hashcash string. However, spammers would suffer significantly due to the large number of spam messages sent by them. Technically the system is implemented with the following steps: If the hash string passes all of these tests, it is considered a valid hash string. All of these tests take far less time and disk space than receiving the body content of the e-mail. The time needed to compute such

1581-511: The ability to work offline, the ability to sign/encrypt posts via GPG , and the ability to use an e-mail client's features, such as filters. Mailers want to know when items are delivered, partly to know how to staff call centers. Salting (or seeding) their lists enables them to compare delivery times, especially when time-of-year affects arrival delays. It may also provide information about poor handling of samples. Having seeded entries in an eMail list simplifies tracking who may have "borrowed"

Hashcash - Misplaced Pages Continue

1632-495: The body in addition to the recipient, uses a modified SHA-1 as the hash function, and uses multiple sub-puzzles to reduce proof of work variance. Like e-mail, blogs often fall victim to comment spam . Some blog owners have used hashcash scripts written in the JavaScript language to slow down comment spammers. Some scripts (such as wp-hashcash) claim to implement hashcash but instead depend on JavaScript obfuscation to force

1683-461: The client to generate a matching key; while this does require some processing power, it does not use the hashcash algorithm or hashcash stamps. In a digital marketplace, service providers can use hashcash to build reputation to attract clients. To build reputation, a service provider first selects a public key as its ID, and then discovers by brute force a nonce that, when concatenated to the ID, results in

1734-481: The difficulty could only be doubled or halved, causing the adjustment to greatly overshoot or undershoot in response to small changes in the average block time. Still, the number of leading zeros in the target serves as a good approximation of the current difficulty. In January 2020, block #614525 had 74 leading zeros. Hashcash was used as a potential solution for false positives with automated spam filtering systems, as legitimate users will rarely be inconvenienced by

1785-576: The emails sent by whitelisted companies are not blocked by spam filters , which often can reroute these legitimate, non-spam emails. Some mailing lists are open to anyone who wants to join them, while others require an approval from the list owner before one may join. Joining a mailing list is called "subscribing" and leaving a list is called "unsubscribing". A mailing list archive is a collection of past messages from one or more electronic mailing lists. Such archives often include searching and indexing functionality. Many archives are directly associated with

1836-430: The extra time it takes to mine a stamp. SpamAssassin was able to check for Hashcash stamps since version 2.70 until version 3.4.2, assigning a negative score (i.e. less likely to be spam) for valid, unspent Hashcash stamps. However, although the hashcash plugin is on by default, it still needs to be configured with a list of address patterns that must match against the Hashcash resource field before it will be used. Support

1887-449: The first lattice-based cryptosystem with Miklós Ajtai in 1997, which was also the first public-key cryptosystem for which breaking a random instance is as hard as solving the hardest instance of the underlying mathematical problem ("worst-case/average-case equivalence"). With Naor she also first presented the idea of, and a technique for, combating e-mail spam by requiring a proof of computational effort, also known as proof-of-work —

1938-544: The header of a first post defines the topic of a series of answers thus constituting a thread) is a typical and ubiquitous structure of discourse within lists and fora of the Internet. It is pivotal to the structure and topicality of debates within mailing lists as an arena, or public sphere in Habermas wording. The flame wars (as the liveliest episodes) give valuable and unique information to historians to comprehend what

1989-630: The latest hardware. Like hashcash, cryptocurrencies use a hash function as their proof-of-work system. The rise of cryptocurrency has created a demand for ASIC -based mining machines. Although most cryptocurrencies use the SHA-256 hash function, the same ASIC technology could be used to create hashcash solvers that are three orders of magnitude faster than a consumer CPU, reducing the computational hurdle for spammers. In contrast to hashcash in mail applications that relies on recipients to set manually an amount of work intended to deter malicious senders,

2040-413: The list without permission. When similar or identical material is sent out to all subscribers on a mailing list, it is often referred to as a mailshot or a blast. A list for such use can also be referred to as a distribution list . On legitimate (non- spam ) mailing lists, individuals can subscribe or unsubscribe themselves. Mailing lists are often rented or sold. If rented, the renter agrees to use

2091-627: The mailing list only at contractually agreed-upon times. The mailing list owner typically enforces this by " salting " (known as "seeding" in direct mail) the mailing list with fake addresses and creating new salts for each time the list is rented. Unscrupulous renters may attempt to bypass salts by renting several lists and merging them to find common, valid addresses. Mailing list brokers exist to help organizations rent their lists. For some list owners, such as specialized niche publications or charitable groups, their lists may be some of their most valuable assets, and mailing list brokers help them maximize

Hashcash - Misplaced Pages Continue

2142-437: The mailing list, but some organizations, such as Gmane , collect archives from multiple mailing lists hosted at different organizations; thus, one message sent to one popular mailing list may end up in many different archives. Gmane had over 9,000 mailing list archives as of 16 January 2007. Some popular free software programs for collecting mailing list archives are Hypermail , MHonArc , FUDforum , and public-inbox (which

2193-468: The only known way to find a header with the necessary properties is brute force , trying random values until the answer is found; though testing an individual string is easy, satisfactory answers are rare enough that it will require a substantial number of tries to find the answer. The hypothesis is that spammers, whose business model relies on their ability to send large numbers of emails with very little cost per message, will cease to be profitable if there

2244-497: The subscribers' hosts and thus be relieved from the hashcash challenges. Another projected problem is that computers continue to get faster according to Moore's law . So the difficulty of the calculations required must be increased over time. However, developing countries can be expected to use older hardware, which means that they will find it increasingly difficult to participate in the e-mail system. This also applies to lower-income individuals in developed countries who cannot afford

2295-459: The text of the corpus of messages has yet to be perennially archived, but also their related metadata , timestamps , headers that define topics, etc. Mailing lists archives are a unique opportunity for historians to explore interactions, debates, even tensions that reveal a lot about communities. On both discussion lists and newsletter lists precautions are taken to avoid spamming . Discussion lists often require every message to be approved by

2346-536: The times of the fledgling Arpanet . The aim of the computer scientists involved in this project was to develop protocols for the communication between computers. In so doing, they have also built the first tools of human computer-mediated communication . Broadly speaking, the scholarly mailing lists can even be seen as the modern version of the salons of the Enlightenment ages, designed by scholars for scholars. The " threaded conversation " structure (where

2397-498: The title and referenced hashcash, but the mechanism described in it is a known-solution interactive challenge which is more akin to Client-Puzzles; hashcash is non-interactive and therefore does not have a known solution. In any case RSA's IPR statement can not apply to hashcash because hashcash predates (March 1997) the client-puzzles publication (February 1999) and the client-puzzles patent filing US7197639 (February 2000). Cynthia Dwork Cynthia Dwork (born June 27, 1958 )

2448-429: The use of special mailing list software and a reflector address set up on a server capable of receiving email. Incoming messages sent to the reflector address are processed by the software, and, depending on their content, are acted upon internally (in the case of messages containing commands directed at the software itself) or are distributed to all email addresses subscribed to the mailing list. A web-based interface

2499-419: The value of their lists. Transmission may be paper-based or electronic. Each has its strengths, although a 2022 article claimed that compared to email, " direct mail still brings in the lion's share of revenue for most organizations." A mailing list is simply a list of e-mail addresses of people who are interested in the same subject, are members of the same work group, or who are taking classes together. When

2550-591: Was elected a member of the National Academy of Engineering in 2008 for fundamental contributions to distributed algorithms and the security of cryptosystems. Dwork received her B.S.E. from Princeton University in 1979, graduating Cum Laude, and receiving the Charles Ira Young Award for Excellence in Independent Research. Dwork received her Ph.D. from Cornell University in 1983 for research supervised by John Hopcroft . Dwork

2601-512: Was removed from SpamAssassin's trunk on 2019-06-26, affecting version 3.4.3 and beyond. The Penny Post software project on SourceForge implements Hashcash in the Mozilla Thunderbird email client. The project is named for the historical availability of conventional mailing services that cost the sender just one penny; see Penny Post for information about such mailing services in history. Microsoft also designed and implemented

SECTION 50

#1732787314200
#199800