| Modifier and Type | Field and Description |
|---|---|
| private EntropySource | |
| private Mac | |
| private byte[] | |
| private long | |
| private int | |
| private byte[] | |
| private static final int | |
| private static final long |
| Access | Constructor and Description |
|---|---|
| public | HMacSP800DRBG(Mac
Hash MAC to base the DRBG on. hMac, int security strength required (in bits) securityStrength, EntropySource source of entropy to use for seeding/reseeding. entropySource, byte[] personalization string to distinguish this DRBG (may be null). personalizationString, byte[] nonce to further distinguish this DRBG (may be null). nonce)Construct a SP800-90A Hash DRBG. |
| Modifier and Type | Method and Description |
|---|---|
| public int | Returns: number of bits generated, -1 if a reseed required.output array for generated bits. output, byte[] additional input to be added to the DRBG in this step. additionalInput, boolean true if a reseed should be forced, false otherwise. predictionResistant)Implements org. |
| public int | Returns: the number of bits produced on each round of the DRBG.Implements org. |
| private byte[] | |
| private void | |
| private void | |
| public void | reseed(byte[]
additional input to be added to the DRBG in this step. additionalInput)Implements org. |
| _entropySource | back to summary |
|---|---|
| private EntropySource _entropySource | |
| _hMac | back to summary |
|---|---|
| private Mac _hMac | |
| _K | back to summary |
|---|---|
| private byte[] _K | |
| _reseedCounter | back to summary |
|---|---|
| private long _reseedCounter | |
| _securityStrength | back to summary |
|---|---|
| private int _securityStrength | |
| _V | back to summary |
|---|---|
| private byte[] _V | |
| MAX_BITS_REQUEST | back to summary |
|---|---|
| private static final int MAX_BITS_REQUEST | |
| RESEED_MAX | back to summary |
|---|---|
| private static final long RESEED_MAX | |
| HMacSP800DRBG | back to summary |
|---|---|
| public HMacSP800DRBG(Mac hMac, int securityStrength, EntropySource entropySource, byte[] personalizationString, byte[] nonce) Construct a SP800-90A Hash DRBG. Minimum entropy requirement is the security strength requested.
| |
| generate | back to summary |
|---|---|
| public int generate(byte[] output, byte[] additionalInput, boolean predictionResistant) Implements org. Populate a passed in array with random data.
| |
| getBlockSize | back to summary |
|---|---|
| public int getBlockSize() Implements org. Return the block size (in bits) of the DRBG.
| |
| getEntropy | back to summary |
|---|---|
| private byte[] getEntropy() | |
| hmac_DRBG_Update | back to summary |
|---|---|
| private void hmac_DRBG_Update(byte[] seedMaterial) | |
| hmac_DRBG_Update_Func | back to summary |
|---|---|
| private void hmac_DRBG_Update_Func(byte[] seedMaterial, byte vValue) | |
| reseed | back to summary |
|---|---|
| public void reseed(byte[] additionalInput) Implements org. Reseed the DRBG.
| |