[curves] Generating nonces for Schnorr signatures

Mike Hamburg mike at shiftleft.org
Wed Jun 25 21:33:33 PDT 2014


On 6/25/2014 5:56 PM, Samuel Neves wrote:
> On 26-06-2014 00:37, Trevor Perrin wrote:
>>   * Goldilocks uses envelope-MAC for the nonce, Ed25519 doesn't care
>> about length extension.  I can't think of a reason length extension
>> matters?
>>
>>   * Seems like it would be more traditional for nonce derivation to pad
>> the secret key out to a full SHA512 block (128 bytes), HMAC-style.
> I was under the impression that envelope-MAC, by definition, required at least the prefix to be block-sized [1]. But the
> message should also be padded to block-size, to avoid some largely impractical attacks that result from the suffix key
> possibly overlapping into 2 separate blocks. [2, Section 6] has a good overview on the history and padding issues of
> envelope-MAC.
Yeah, you're right.  Goldilocks' not-quite-envelope-MAC is basically a 
placeholder for "some hash-based PRF", and is sloppily done.  I think 
it's on the TODO list, but if not, it should be.

>
> I don't think any of this has much relevance to the nonce generation setting. Neither does length extension: if we are
> able to mount a length-extension attack, we must already have some way to recover the nonce (that is, the SHA-512
> state), a far more devastating attack.
Not in practice, but I'd like to use a PRF because that's Obviously The 
Right Thing.  For key generation and obliterating bad state, a 
fixed-length PRF is good enough, though maybe using the same PRF for 
both things (with a suitable diversifier) would be a good idea before 
flipping the switch from experimental to stable.

Is there a standard way to use SHA3 as a keyed hash?  Is it sufficient 
just to prefix the message with the key?  I'm not tied to SHA2, I just 
had an implementation lying around so it was easy.
> [1] G. Tsudik. "Message Authentication with One-Way Hash Functions", 1992, https://www.ics.uci.edu/~gts/pubs.html
> [2] N. Koblitz and A. Menezes, " Another Look at Security Theorems for 1-Key Nested MACs", 2013,
> http://eprint.iacr.org/2013/248
Thanks for the refs,
-- Mike



More information about the Curves mailing list