org.bouncycastle.crypto.generators

Class BaseKDFBytesGenerator

Implemented Interfaces:
DerivationFunction
Known Direct Subclasses:
KDF1BytesGenerator, KDF2BytesGenerator

public class BaseKDFBytesGenerator
extends java.lang.Object
implements DerivationFunction

Basic KDF generator for derived keys and ivs as defined by IEEE P1363a/ISO 18033
This implementation is based on ISO 18033/P1363a.

Constructor Summary

BaseKDFBytesGenerator(int counterStart, Digest digest)
Construct a KDF Parameters generator.

Method Summary

int
generateBytes(byte[] out, int outOff, int len)
fill len bytes of the output buffer with bytes generated from the derivation function.
Digest
getDigest()
return the underlying digest.
void
init(DerivationParameters param)

Constructor Details

BaseKDFBytesGenerator

protected BaseKDFBytesGenerator(int counterStart,
                                Digest digest)
Construct a KDF Parameters generator.

Parameters:
counterStart - value of counter.
digest - the digest to be used as the source of derived keys.

Method Details

generateBytes

public int generateBytes(byte[] out,
                         int outOff,
                         int len)
            throws DataLengthException,
                   IllegalArgumentException
fill len bytes of the output buffer with bytes generated from the derivation function.
Specified by:
generateBytes in interface DerivationFunction
Throws:
DataLengthException - if the out buffer is too small.

getDigest

public Digest getDigest()
return the underlying digest.
Specified by:
getDigest in interface DerivationFunction

init

public void init(DerivationParameters param)
Specified by:
init in interface DerivationFunction