[Linux/UNIX] /dev/random mit eigenen Daten speisen

#2809861
Lesenswert?

Hallo miteinander,

ich habe einen Zufallsgenerator, dessen Ausgangswerte ich gerne dem 
systemweiten Zufallspool /dev/random beifügen möchte. Bin in 
Systemprogrammierung völlig unbewandert, auch meine Suche bei Google hat 
bis jetzt nichts verwertbares ergeben.

Kennt sich jemand damit zufällig aus und hat einen Tip?
Gast #2810092
Lesenswert?

T. M. schrieb:
> Hallo miteinander,
>
> ich habe einen Zufallsgenerator, dessen Ausgangswerte ich gerne dem
> systemweiten Zufallspool /dev/random beifügen möchte. Bin in
> Systemprogrammierung völlig unbewandert, auch meine Suche bei Google hat
> bis jetzt nichts verwertbares ergeben.
>
> Kennt sich jemand damit zufällig aus und hat einen Tip?

Der Linux-Kernel hat schon etliche Treiber für HW-RNGs, siehe deren 
Sourcen.

Die allgemeine Doku ist in den Kernel-Sourcen unter 
.../Documentation/hw_random.txt, da kannst Du lesen dass Du die 
rng-tools brauchst und evtl. anpassen oder basierend darauf etwas 
basteln musst.
Gast #2810897
Lesenswert?

T. M. schrieb:
> Hallo miteinander,
>
> ich habe einen Zufallsgenerator, dessen Ausgangswerte ich gerne dem
> systemweiten Zufallspool /dev/random beifügen möchte. Bin in
> Systemprogrammierung völlig unbewandert, auch meine Suche bei Google hat
> bis jetzt nichts verwertbares ergeben.
>
> Kennt sich jemand damit zufällig aus und hat einen Tip?

Das sollte man allerdings nur dann machen, wenn sichergestellt ist das 
der Zufallsgenerator in einer Qualität liefert die kryptografischen 
Anforderungen genügt.

Ansonsten besser nichts mit dem Rechner machen was Verschlüsselung 
nutzt.
#2810928
Lesenswert?

Norbert schrieb:
> Das sollte man allerdings nur dann machen, wenn sichergestellt ist das
> der Zufallsgenerator in einer Qualität liefert die kryptografischen
> Anforderungen genügt.

Das habe ich schon mit der NIST RNG-Testsuite 
(http://csrc.nist.gov/groups/ST/toolkit/rng/documentation_software.html) 
verifiziert, mein Generator besteht alle diese Tests :)
Gast #2810979
Lesenswert?

Wenn es nur um ein einzelnes Programm geht, könntest du die 
open()-Funktion überladen, z.B. indem du bei einem dynamisch gelinkten 
Programm deine Funktion über eine Bibliothek mit der Umgebungsvariable 
LD_PRELOAD einbindest. Die elegante aber wahrscheinlich auch langsame 
Variante wäre, das Programm mit ptrace zu überwachen und den Syscall für 
open zu überwachen.

http://stackoverflow.com/questions/69859/how-could-i-intercept-linux-sys-calls
Ptrace: http://www.linuxjournal.com/article/6100

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren