org.bouncycastle.crypto.engines
Class EthereumIESEngine.HandshakeKDFFunction
java.lang.Object
|
+--org.bouncycastle.crypto.engines.EthereumIESEngine.HandshakeKDFFunction
- All Implemented Interfaces:
- DerivationFunction, DigestDerivationFunction
- Enclosing class:
- EthereumIESEngine
- public static class EthereumIESEngine.HandshakeKDFFunction
- extends java.lang.Object
- implements DigestDerivationFunction
Basic KDF generator for derived keys and ivs as defined by IEEE P1363a/ISO 18033
This implementation is based on ISO 18033/P1363a.
This class has been adapted from the BaseKDFBytesGenerator implementation of Bouncy Castle. Only one
change is present specifically for Ethereum.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
EthereumIESEngine.HandshakeKDFFunction
public EthereumIESEngine.HandshakeKDFFunction(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.
init
public void init(DerivationParameters param)
- Specified by:
init
in interface DerivationFunction
getDigest
public Digest getDigest()
- return the underlying digest.
- Specified by:
getDigest
in interface DigestDerivationFunction
generateBytes
public int generateBytes(byte[] out,
int outOff,
int len)
throws DataLengthException,
java.lang.IllegalArgumentException
- fill len bytes of the output buffer with bytes generated from the derivation function.
- Specified by:
generateBytes
in interface DerivationFunction
- Throws:
java.lang.IllegalArgumentException
- if the size of the request will cause an overflow.DataLengthException
- if the out buffer is too small.