Tobias Brunner
a6c328a6e9
Use real ID payload to build HASH_I|R for Main Mode authentication.
...
This is required for clients like the iPhone which set the protocol
and/or port fields of the ID payload.
2012-03-20 17:31:21 +01:00
Martin Willi
aaa8f88906
Fix support for plain RSA authentication in IKEv1, both as initiator and responder
2012-03-20 17:31:13 +01:00
Clavister OpenSource
a846be3116
keymat: derive_ike_keys updated with XAUTH RSA:s
2012-03-20 17:31:11 +01:00
Tobias Brunner
4ace4daf0c
Added a function to keymat_v1 to create the hasher earlier than during key derivation.
...
The negotiated hasher is also used to generate NAT-D payloads.
2012-03-20 17:31:10 +01:00
Tobias Brunner
9eefb5f9b4
Use quiet generator when creating IKEv1 message hashes.
...
This avoids cluttering the log with duplicate log messages when
generating and especially confusing log messages when parsing
authenticated messages.
2012-03-20 17:31:09 +01:00
Tobias Brunner
983e852af8
Handle INFORMATIONAL_V1 messages when no keys have been derived yet.
...
This allows to gracefully process the INFORMATIONAL_V1 message rules which
require the payloads to be encrypted and thus the exchange to be
authenticated with a HASH payload. If such an exchange is now initiated
before the ISAKMP_SA is established, the message is simply sent unencrypted
and without HASH payload.
2012-03-20 17:31:08 +01:00
Martin Willi
abf9784786
Pass concrete auth_method to key derivation, as we have that as a responder
2012-03-20 17:30:53 +01:00
Martin Willi
a7910b1c6e
Derive IKEv1 CHILD_SA keymat twice, once for each IPsec SA
2012-03-20 17:30:50 +01:00
Martin Willi
85f5c478bf
Fix seed construction for IKEv1 key derivation
2012-03-20 17:30:50 +01:00
Tobias Brunner
cd200cb821
Authenticate and verify Phase 2 IKEv1 messages with appropriate hashes.
2012-03-20 17:30:50 +01:00
Martin Willi
ff2a2ad33a
Implemented IKEv1 keymat CHILD_SA key derivation function
2012-03-20 17:30:48 +01:00
Martin Willi
4eee34ac49
Added keymat_v1_t.get_hash() to calculate authentication hashes
2012-03-20 17:30:46 +01:00
Tobias Brunner
b6f0029497
Added IV generation to keymat_v1_t.
2012-03-20 17:30:46 +01:00
Tobias Brunner
aadb9e8355
Added a simple AEAD wrapper for IKEv1 encryption/decryption.
2012-03-20 17:30:46 +01:00
Tobias Brunner
b05d91edd7
Added IKEv1 key derivation with support for AUTH_CLASS_PSK.
2012-03-20 17:30:45 +01:00
Tobias Brunner
a0563846b0
Moved version specific keymat functions to specific interfaces.
2012-03-20 17:30:45 +01:00
Tobias Brunner
0fc9acdd23
Added stub for IKEv1 keymat_t implementation.
2012-03-20 17:30:42 +01:00