Das Entropieproblem in virtualisierten Linux-Systemen scheint ein häufiges Problem zu sein (z. B. /dev/random Extremely Slow?, Getting linux to buffer /dev/random). Trotz der Verwendung eines Hardware-Zufallszahlengenerators (HRNG) wird oft die Verwendung eines Entropieerfassungsdämons wie HAVEGED vorgeschlagen. Ein Entropy Rally Daemon (EGD) kann jedoch nicht innerhalb eines Docker-Containers ausgeführt werden, sondern muss vom Host bereitgestellt werden.Nicht genug Entropie, um/dev/random in Docker-Containern zu unterstützen, die in boot2docker laufen
Die Verwendung eines EGD funktioniert gut für Docker-Hosts auf Basis von Linux-Distributionen wie Ubuntu, RHEL usw. Einen solchen Daemon in boots2docker zu verwenden, der auf Tiny Core Linux (TCL) basiert, scheint eine andere Geschichte zu sein. Obwohl TCL über einen Erweiterungsmechanismus verfügt, handelt es sich um eine Erweiterung für einen Entropy Rally Daemon doesn't seem to be available.
So ein EGD scheint eine richtige Lösung für den Betrieb Docker Container in einer (Produktion) Hosting-Umgebung, aber wie es für die Entwicklung/Tests in boot2docker zu lösen?
Da das Starten eines EGD in boot2docker zu schwierig schien, dachte ich daran, einfach/dev/urandom anstelle von/dev/random zu verwenden. Die Verwendung von/dev/urandom ist ein wenig weniger sicher, aber immer noch gut für die meisten Anwendungen, die keine langfristigen kryptografischen Schlüssel generieren. Zumindest sollte es für die Entwicklung/Tests innerhalb von boot2docker in Ordnung sein.
openssl Benutzer 'urandom'. Was machst du, das erfordert mehr? – akostadinov
Einige Java-Kryptografie-Provider übertragen auf/dev/random (z. B. zur sicheren Zufallszahlengenerierung). – mbonato
Ich stimme zu, dass Sie das nicht immer kontrollieren können. In jedem Fall, hier haben Sie einige zusätzliche Informationen über Java 'SecureRandom' vs.'/dev/[u] random' - https://bugs.openjdk.java.net/browse/JDK-4705093 – akostadinov