[hashcash] Re: example v1 stamp

  • From: Kyle Hasselbacher <kyle@xxxxxxxxxxx>
  • To: hashcash@xxxxxxxxxxxxx
  • Date: Wed, 28 Apr 2004 22:44:29 -0500

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Wed, Apr 28, 2004 at 06:46:09PM -0400, Adam Back wrote:
>On Wed, Apr 28, 2004 at 04:06:36PM -0500, Kyle Hasselbacher wrote:

>Note when I get done you'll also have to deal with multi-line tokens;
>I can't gaurantee that with people's extension fields it won't grow to
>over 80 or whatever chars.

Sounds painful, but hopefully these extensions won't push that limit much.
I can deal with multiline tokens pretty easily.

>With v0 implementation there is a fixed sized collision string (96
>bits); as the size of the stamp grows the probability of an accidental
>collision also grows.  (Actually earlier versions had fixed 64 bits,
>but that was a bit small to be safe against collisions with larger
>stamps).  But you're right this is an implementation issue, not a
>reason to change the format.
>
>I think reason to have a delimiter between the two halves is so that
>the recipient can tell where one ends and the other begins.  People
>may have different sizes of random field, depending on their
>application.  (Ie depending on how many messages they expect in the
>time period so if that is an exceptionally high number they might
>choose a larger randomness field.)  It's also kind of nice, though I
>don't see an immediate use to be able to see the counter separately.

I think I have two definitions of "collision" in my head.

1. The bit collision of the stamp.  We generate a collision of X many bits,
and that's the value of it.  When I make a stamp, I'm aiming to produce
anything that has a certain size collision.

2. A collision with another generated stamp.  That is, two stamps,
generated independently, that are identical strings.

The stamp has information in it that specifies only the recipient.  That's
fine, but it means that two senders could potentially generate the same
stamps for that recipient.  The senders don't talk to each other, so they
just have to hope they're unique.  If two senders DO produce the same
stamp, one doesn't go through because we reject double spending.

I can easily keep from generating stamps identical to ones I generated
previously.  It's harder to keep from colliding with someone else.

So, we want to have large random fields so that senders have more space to
roam around in to avoid hitting each other.  Is that what's going on?
- -- 
Kyle Hasselbacher              An atheist is a man with
kyle@xxxxxxxxxxx             no invisible means of support.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFAkHod10sofiqUxIQRAgo6AJ4/IRtzFcN7qxDrJLqUEBmBUpXRkACgread
F82pQox7K5VDAIPAXQJ7Tvg=
=y12P
-----END PGP SIGNATURE-----

Other related posts: