Re: hash recursion shortcut impossible?
- From: Bernhard Kuemel <bernhard@xxxxxxxx>
- Date: Sat, 06 Jun 2009 11:03:51 +0200
David Eather wrote:
Kristian Gjøsteen wrote:
Bernhard Kuemel <bernhard@xxxxxxxx> wrote:
rh(random number) is supposed to be data that is determined now, but
only known in the near future. It must not be known too early.
I've seen a paper on something similar, I seem to recall that David
Wagner
was one of the authors, but I don't remember the title or anything else.
Their construction was to compute x^y mod n, where n was an RSA modulus
and y was a laughably large number. The point is that whoever knows
the factors of the modulus can compute x^y much much faster than someone
who only knows the modulus and x.
http://www.eecs.berkeley.edu/~daw/papers/timelock.ps
Interesting. In my case the secret mustn't be known to the parties
involved, though. But thinking about this method I got an idea which
solves my problem without having to waste CPU cycles:
Everyone picks a big secret random number and publishes it's hash. This
determines the result. Then everyone publishes the numbers. The result
is the hash of the numbers concatenated. This is also much quicker than
wasting CPU cycles, which is preferable.
This approach is, however, vulnerable to hash collisions. One might find
two (or more) numbers yielding the same hash, publish the hash and later
may choose to publish any one number and thus influence the result after
it supposedly is already determined.
I'm afraid using encryption instead of hashes will suffer the same problem:
Everyone picks a big random number and a random key and publishes
encrypt(number,key). Then everyone publishes the number and the key. The
result is again the hash of the numbers concatenated.
Again someone might find several number/key pairs yielding the same
ciphertext. OTOH it should be much harder if the length of the number
increases, right?
So how about this:
Everyone picks a secret (but nevertheless symmetric) key and publishes
encrypt(plaintext,key), where plaintext is publicly known, e.g. 1000
binary zeros. Then everyone publishes their key and the result is the
hash of the keys concatenated.
Hmm, still open to a known plaintext attack. A party might find the keys
of the already published ciphertexts and so know the result before
publishing his ciphertext. Better keep the plaintext random and secret, too.
Thanks.
.
- Follow-Ups:
- Re: hash recursion shortcut impossible?
- From: Kristian Gjøsteen
- Re: hash recursion shortcut impossible?
- References:
- hash recursion shortcut impossible?
- From: Bernhard Kuemel
- Re: hash recursion shortcut impossible?
- From: Kristian Gjøsteen
- Re: hash recursion shortcut impossible?
- From: Bernhard Kuemel
- Re: hash recursion shortcut impossible?
- From: Kristian Gjøsteen
- Re: hash recursion shortcut impossible?
- From: David Eather
- hash recursion shortcut impossible?
- Prev by Date: Re: Why is sci.crypt suddenly covered in spam?
- Next by Date: Re: hash recursion shortcut impossible?
- Previous by thread: Re: hash recursion shortcut impossible?
- Next by thread: Re: hash recursion shortcut impossible?
- Index(es):
Relevant Pages
|