Sowohl OpenSSL als auch LibreSSL lösen dieses Problem auf sehr ähnliche Weise, indem sie in irgendwelche letztlich doch deterministischen Vorgänge, z.B. Systemzeit zum Start oder die PID verwenden, wenn keine echte Zufallsquelle erreicht werden kann.
Das Problem ist, dass das Anwenderprogramm davon nichts merkt. Ändern kann man es auch nicht, weil das OpenSSL-API nicht vorsieht, in diesem Fall mit Fehler abzubrechen und LibreSSL ja ein Drop-In-Ersatz sein will.
Ich hoffe hier spricht nicht das Feierabendbier aber wie OpenSSL und LibreSSL damit umgeben ist völlig verschieden, deshalb gibts gerade diese Diskussionen. OpenSSL bastelt weiter daran seine Entropie/Zufall für jedes OS selbst zu ermitteln und Bugs im OS als Workaround zu behandeln. LibreSSL lagert das aus. Wenn überhaupt ist das Teil der Portabilitätsabstraktion. Faktisch ist das klüger weil der Code damit überschaubar bleibt und die Betriebssyteme mal die Möglichkeit bekommen ihre aufgeschobenen Hausaufgaben zu erledigen. Natürlich ist das Schwachsinn seinen Zufall selbst zu generieren für jede Bibliothek selbst, statt den Fehler an Wurzel zu lösen.
Sowohl OpenSSL als auch LibreSSL lösen dieses Problem auf sehr ähnliche Weise, indem sie in irgendwelche letztlich doch deterministischen Vorgänge, z.B. Systemzeit zum Start oder die PID verwenden, wenn keine echte Zufallsquelle erreicht werden kann.
Das Problem ist, dass das Anwenderprogramm davon nichts merkt. Ändern kann man es auch nicht, weil das OpenSSL-API nicht vorsieht, in diesem Fall mit Fehler abzubrechen und LibreSSL ja ein Drop-In-Ersatz sein will.
Ich hoffe hier spricht nicht das Feierabendbier aber wie OpenSSL und LibreSSL damit umgeben ist völlig verschieden, deshalb gibts gerade diese Diskussionen.
OpenSSL bastelt weiter daran seine Entropie/Zufall für jedes OS selbst zu ermitteln und Bugs im OS als Workaround zu behandeln. LibreSSL lagert das aus. Wenn überhaupt ist das Teil der Portabilitätsabstraktion. Faktisch ist das klüger weil der Code damit überschaubar bleibt und die Betriebssyteme mal die Möglichkeit bekommen ihre aufgeschobenen Hausaufgaben zu erledigen. Natürlich ist das Schwachsinn seinen Zufall selbst zu generieren für jede Bibliothek selbst, statt den Fehler an Wurzel zu lösen.
Falsch. Schau dir den Fallbackcode an, den LibreSSL verwendet, wenn es keine Entropiequelle findet.