[hashcash] Re: hashcash v1 questions

  • From: Jonathan Morton <chromi@xxxxxxxxxxxxxxxxxxxxx>
  • To: hashcash@xxxxxxxxxxxxx
  • Date: Mon, 31 May 2004 22:23:14 +0100

The reason I'm looking for this tool is because camram white lists folks
you've spoken with and white lists by name can be forged relatively
easily. I need a stronger mechanism to identify someone as familiar.

Absolutely. I like key-fingerprint-based whitelisting, but I don't like
having keys in hashcash stamps. Generating a 25-bit collision on an ~1100
byte hashcash stamp would require nearly 4x the time necessary to generate
the same 25-bit collision on a 64 byte stamp. Putting keys in hashcash
headers benefits those with insecure keys.

That may be the case for Adam's present naive implementation, but for about the past week I've been hacking away at considerably more efficient versions - see the "performance improvements" thread for the gory details.


My present implementations have solving time independent of the stamp length. We're presently discussing the possibility of adding padding - yes, to a *longer* length - and optimising the minters for specific stamp lengths which we can save a little (10-15%) work on.

My latest benchmark-du-jour:

Rate Name (* machine default)

  1270323 ANSI Standard 1-pipe
    Solution:   0:040404:foo@xxxxxxxx:0123456789abcdef0000000000001HDvz
    Iterations: 21290621
    Time taken: 16.760

  2507729 PowerPC Altivec Standard 1x4-pipe
    Solution:   0:040404:foo@xxxxxxxx:0123456789abcdef0000000000001HDvz
    Iterations: 21290621
    Time taken: 8.490

  2507729 PowerPC Altivec Standard 2x4-pipe
    Solution:   0:040404:foo@xxxxxxxx:0123456789abcdef0000000000001HDvz
    Iterations: 21290621
    Time taken: 8.490

  2493046 PowerPC Altivec Compact 2x4-pipe *
    Solution:   0:040404:foo@xxxxxxxx:0123456789abcdef0000000000001HDvz
    Iterations: 21290621
    Time taken: 8.540

--- AMD64/x86 MMX Compact 1x2-pipe (Not available on this machine)
--- AMD64/x86 MMX Standard 1x2-pipe (Not available on this machine)


The above is for a pre-selected 24-bit stamp on a 667MHz TiBook. For comparison, hashcash-0.32 -s on the same machine:

speed: 599412 collision tests per second
time estimate: 26 seconds

--------------------------------------------------------------
from:     Jonathan "Chromatix" Morton
mail:     chromi@xxxxxxxxxxxxxxxxxxxxx
website:  http://www.chromatix.uklinux.net/
tagline:  The key to knowledge is not to rely on people to teach you it.


Other related posts: