On 01/03/2015 7:45 pm, "Ben Laurie" <[email protected]> wrote:
>
> On 1 March 2015 at 07:24, Michael Hamburg <[email protected]> wrote:
> > Perhaps you should use oblivious function evaluation with a
user-specific
> > secret at the server.  So for example, server has a per-user secret key
e,
> > and user has a (salted, scrypted) password p.  Let h = hash(p) on some
> > curve.
> >
> > client chooses a uniformly random scalar r.
> > client -> server: Q = h^r
> > server -> client: P = Q^e = h^er
> > client computers P^1/r = h^e, and uses the hash of that point as part
of the
> > secret key derivation.
>
> I feel sure I'm missing something, but doesn't the server also need h^e?

The server receives Q from the client and multiplies the point Q by e. The
client then removes the random blanking factor r to get h^e. The server
doesn't know r so it can't remove the blanking.

I thought there was an attack on this discussed on this list though?
_______________________________________________
Messaging mailing list
[email protected]
https://moderncrypto.org/mailman/listinfo/messaging

Reply via email to