java.lang.Object
org.bouncycastle.jcajce.provider.drbg.DRBG

public class DRBG extends Object
DRBG Configuration

org.bouncycastle.drbg.gather_pause_secs - is to stop the entropy collection thread from grabbing all available entropy on the system. The original motivation for the hybrid infrastructure was virtual machines sometimes produce very few bits of entropy a second, the original approach (which "worked" at least for BC) was to just read on the second thread and allow things to progress around it, but it did tend to hog the system if other processes were using /dev/random. By default the thread will pause for 5 seconds between 64 bit reads, increasing this time will reduce the demands on the system entropy pool. Ideally the pause will be set to large enough to allow everyone to work together, but small enough to ensure the provider's DRBG is being regularly reseeded.

org.bouncycastle.drbg.entropysource - is the class name for an implementation of EntropySourceProvider. For example, one could be provided which just reads directly from /dev/random and the extra infrastructure used here could be avoided.

org.bouncycastle.drbg.entropy_thread - if true the provider will start a single daemon thread for handling entropy requests, rather than starting a thread periodically when samples are required.

  • Constructor Details

    • DRBG

      public DRBG()