Subject: [tcpm] PRFs

From: Eric Rescorla <[email-masked]>
Date: Tue, 18 Nov 2008 14:06:08 -0600

We had a little discussion on the list about PRFs earlier, and when
I talked to Joe I said I would generate some text. Here it is:

   Given a TSAD key, the TCP socket pair, and the connection ISNs, the 
   connection key used in the MAC algorithm is computed using a 
   pseudorandom function (PRF), which is assumed to be able to
   produce an arbitrary number of random bits. The directional
   connection keys are computed as:

   Conn_Key = PRF(Key, connblock)

   Where enough bytes are generated to match the required key
   length for the algorithm.

We also discussed PRF definitions. As I mentioned, while many
MACs can double as PRFs, there's no easy transformation from
a MAC to a PRF. Luckly, I think it's clear we can rip off
PRFs from some existing registry, e.g., the IPsec registry defined in
RFC 4306 (http://www.iana.org/assignments/ikev2-parameters), which
has all the PRFs we would most likely want, including those which
rely on functions which roughly match the likely MAC transforms.

The high level question seems to me that we need to decide 
whether to tie PRFs to MACs, with the natural approach to
use the corresponding PRF (e.g., you use HMAC-SHA-256 with
PRF_HMAC_SHA2_256) or to allow mix-and-match. We can discuss
the pluses and minuses of these options (which seem kind of
obvious) at the meeting.

-Ekr

_______________________________________________
tcpm mailing list
[email-masked]
https://www.ietf.org/mailman/listinfo/tcpm