Module Name:    src
Committed By:   drochner
Date:           Fri Feb 25 20:13:10 UTC 2011

Modified Files:
        src/share/man/man4: crypto.4
        src/sys/netipsec: xform.h xform_esp.c
        src/sys/opencrypto: cryptodev.h cryptosoft.c xform.c xform.h

Log Message:
make the use of SHA2-HMAC by FAST_IPSEC compliant to current standards:
-RFC2104 says that the block size of the hash algorithm must be used
 for key/ipad/opad calculations. While formerly all ciphers used a block
 length of 64, SHA384 and SHA512 use 128 bytes. So we can't use the
 HMAC_BLOCK_LEN constant anymore. Add a new field to "struct auth_hash"
 for the per-cipher blocksize.
-Due to this, there can't be a single "CRYPTO_SHA2_HMAC" external name
 anymore. Replace this by 3 for the 3 different keysizes.
 This was done by Open/FreeBSD before.
-Also fix the number of authenticator bits used tor ESP and AH to
 conform to RFC4868, and remove uses of AH_HMAC_HASHLEN which did
 assume a fixed authenticator size of 12 bytes.

FAST_IPSEC will not interoperate with KAME IPSEC anymore if sha2 is used,
because the latter doesn't implement these standards. It should
interoperate with at least modern Free/OpenBSD now.
(I've only tested with NetBSD-current/FAST_IPSEC on both ends.)


To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 src/share/man/man4/crypto.4
cvs rdiff -u -r1.6 -r1.7 src/sys/netipsec/xform.h
cvs rdiff -u -r1.29 -r1.30 src/sys/netipsec/xform_esp.c
cvs rdiff -u -r1.18 -r1.19 src/sys/opencrypto/cryptodev.h
cvs rdiff -u -r1.28 -r1.29 src/sys/opencrypto/cryptosoft.c
cvs rdiff -u -r1.19 -r1.20 src/sys/opencrypto/xform.c
cvs rdiff -u -r1.11 -r1.12 src/sys/opencrypto/xform.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Reply via email to