Proggraming a VPN, Authontication stage - RFC not clear enough
- by John
I have a custom build of a unix OS.
My task: Adding an IPSec to the OS.
I am working on Phase I, done sending the first 2 packets.
what I am trying to do now is making the Identefication Payload.
I've been reading RFC 2409 (Apendix B) which discuss the keying materials (SKEYID, SKEYID_d, SKEYID_a, SKEYID_e and the IV making).
Now, I use SHA1 for authontication and thus I use HMAC-SHA1 & my encryption algorithem is AES 256bit.
The real problem is that the RFC is not clear enough of what should I do regarding the PRF.
It says:
"Use of negotiated PRFs may require the
PRF output to be expanded due to
the PRF feedback mechanism employed by
this document."
I use SHA1, does it mean I do not negotiate a PRF?
In my opinion, AES is the only algorithm that needs expention (a fixed length of 256bit), so, do i need to expand only the SKEYID_e?
If you happen to know a clearer, though relible, source then the RFC please post a link.
Thanks in advance!