public class EntropyMixer extends Binder
When a Linux system starts up, the entropy pool associated with
/dev/random
may be in a fairly predictable state. Applications which
depend strongly on randomness may find /dev/random
or
/dev/urandom
returning predictable data. In order to counteract
this effect, it's helpful to carry the entropy pool information across
shutdowns and startups.
On systems with Hardware RNG (/dev/hw_random), a block of output from HW RNG is mixed into the Linux RNG on EntropyMixer's startup and whenever EntropyMixer periodically runs to save a block of output from Linux RNG on disk. This mixing is done in a way that does not increase the Linux RNG's entropy estimate is not increased. This is to avoid having to trust/verify the quality and authenticity of the "randomness" of the HW RNG.
This class was modeled after the script in man 4 random.
IBinder.DeathRecipient
LOG_RUNTIME_EXCEPTION
DUMP_TRANSACTION, FIRST_CALL_TRANSACTION, FLAG_ONEWAY, INTERFACE_TRANSACTION, LAST_CALL_TRANSACTION, LIKE_TRANSACTION, MAX_IPC_SIZE, PING_TRANSACTION, SHELL_COMMAND_TRANSACTION, SYSPROPS_TRANSACTION, TWEET_TRANSACTION
Constructor and Description |
---|
EntropyMixer(Context context) |
EntropyMixer(Context context,
String entropyFile,
String randomDevice,
String hwRandomDevice)
Test only interface, not for public use
|
attachInterface, blockUntilThreadAvailable, clearCallingIdentity, disableTracing, dump, dump, dumpAsync, enableTracing, finalize, flushPendingCommands, getCallingPid, getCallingUid, getCallingUserHandle, getInterfaceDescriptor, getThreadStrictModePolicy, getTransactionTracker, isBinderAlive, isProxy, isTracingEnabled, joinThreadPool, linkToDeath, onShellCommand, onTransact, pingBinder, queryLocalInterface, restoreCallingIdentity, setDumpDisabled, setThreadStrictModePolicy, shellCommand, transact, unlinkToDeath