Wie kann ich in FreeBSD einen externen Hardware-RNG verwenden?

Wie kann ich in FreeBSD einen externen Hardware-RNG verwenden?

Ich möchte einen externen Hardware-RNG verwenden, der Entropie über einen Netzwerk-Socket liefert. FreeBSD unterstützt keine externen RNG/Entropiequellen im Kernel, aber im Benutzerbereich. Ok, das ist in Ordnung, wenn ich meine eigene Anwendung erstelle, um die externe Entropiequelle zu nutzen – aber wie kann ich es so implementieren, dass vorhandene Anwendungen, die es verwenden, /dev/randomauch meine zusätzliche Entropiequelle nutzen? Meines Wissens lautet die Antwort, dass Sie das nicht können – aber ich würde mich freuen, wenn ich mich irre.

Antwort1

Wenn Sie einen Blick auf dieImplementierung von /dev/random in 11.0Sie werden feststellen, dass mit der Unterstützung der neuen Zufallsalgorithmen (Fortuna hat Yarrow ersetzt) ​​auch die Möglichkeit besteht, die Entropie mit einem Schreibaufruf an zu füttern /dev/random.

Die 10.x-Versionen unterstützen diesen Schreibaufruf nicht. Die Manpagezuvor für 10.3 gesagtdass Schreibvorgänge stillschweigend ignoriert werden undin der Manpage 11.0diese Passage wurde entfernt. Leider fehlt dort die Erklärung, dass eine Entropiezufuhr durch Schreiben auf das Gerät möglich ist.

Meiner Meinung nach sollten Sie in den Mailinglisten nachfragen, da dies für Sie ein ernstes sicherheitsrelevantes Thema zu sein scheint und ich gerade einige Informationen gefunden habe, die möglicherweise nicht ausreichen, um hinsichtlich dieser neuen Funktionalität und aller möglicherweise vorhandenen Fallstricke absolut sicher zu sein.

verwandte Informationen