src/org/kocakosm/pitaya/security/KDFs.java
public static KDF hkdf(Algorithm<MAC> mac, byte[] info, int dkLen)
	{
		return new HKDF(mac, info, dkLen);
	}
public static KDF hkdf(Algorithm<MAC> mac, byte[] info, int dkLen)
	{
		return new HKDF(mac, info, dkLen);
	}
public static KDF hkdf ( Algorithm < MAC > mac , byte [ ] info , int dkLen ) { return new HKDF ( mac , info , dkLen ) ; }
Creates and returns a new immutable {@code KDF} instance implementing
the HKDF algorithm (RFC 5869).

@param mac the MAC algorithm to use.
@param info optional context and application specific information,
may be {@code null} or empty.
@param dkLen the desired length for derived keys, in bytes.

@return the created {@code KDF} instance.

@throws NullPointerException if {@code mac} is {@code null}.
@throws IllegalArgumentException if {@code dkLen} is negative, or if
the MAC algorithm is unknown, or if {@code dkLen} is greater
than 255 * MAC algorithm's output length.
Creates and returns a new immutable { @code KDF } instance implementing the HKDF algorithm ( RFC 5869 ) .