| HashcashHashcash is a proof-of-work algorithm, which has been used as adenial-of-service counter measure technique in a number of systems. A hashcash stamp constitutes a proof-of-work which takes aparameterizable amount of work to compute for the sender. The recipient(and indeed anyone as it is publicly auditable) can verify received hashcashstamps efficiently. Hashcash was invented byAdam Back in1997 At this point it is most widely used as thebitcoin mining function. The emailanti-spam tool, like the proof-of-work algorithm, is also called hashcashand is used to create stamps to attach to mail to add a micro-cost tosending mail to deter spamming. The main use of the hashcash stamp is as awhite-listing hint to help hashcash users avoid losing email due to contentbased and blacklist based anti-spam systems. Hashcash source code includes a library form, and also the algorithm isextremely simple to code from scratch with the availability of a hashlibrary. Verification can be done by a human eye (count leading 0s) evenwith availability of common preinstalled command line tools such as sha1sum. The algorithm works with a cryptographic hash, such as SHA1, SHA256 orcoming SHA3 that exhibits 2nd-preimage resistance. Note that 2nd-preimageresistance is a stronger hash property than the collision resistanceproperty.
Microsoft released an incompatible hashcash specemail postmark which I believe is implemented in exchange, outlook,hotmail etc microsoft mail related infrastructure as part of theircoordinated spam reduction initiativeCSRI. They hash the body rather in addition to the recipient, and they also use amodified SHA1 as the hash, and use multiple sub-puzzles to reduce variance. |