Sicherheit: Glibc unterstützt nach 15 Jahren Zufallsfunktion aus OpenBSD

Die Arbeiten an neuen Funktionen für Zufallszahlen unter Linux dauern schon Jahre an. Nun kommt wieder eine Neuerung aus OpenBSD.

Artikel veröffentlicht am , /Ulrich Bantle/Linux Magazin
Die Glibc ist die Standard-C-Bibliothek des GNU-Projekts.
Die Glibc ist die Standard-C-Bibliothek des GNU-Projekts. (Bild: Pixabay)

Die Standard-C-Bibliothek des GNU-Projekts (Glibc) erhält Unterstützung für die Funktion Arc4random und davon abgeleitete Varianten. Bereits im Jahr 2007 gab es Bemühungen, die Sammlung rund um die Zufallszahlenfunktionen in die Glibc zu bekommen. Damals wurde dieses Ansinnen noch abgelehnt. Glibc sei keine Müllhalde für beliebigen Code, hieß es damals schroff.

Stellenmarkt
  1. Head (m/w/d) of Managed Service/on Premise Solutions Automotive
    operational services GmbH & Co. KG, verschiedene Standorte
  2. IT-Koordinatorin/IT-Koordina- tor
    Universitätsklinikum Frankfurt, Frankfurt am Main
Detailsuche

Die Funktionsfamilie stammt ursprünglich aus dem BSD-Umfeld und wird dort seit Jahrzehnten genutzt, anfangs für die mittlerweile als veraltet angesehene Stromverschlüsselung RC4, was auch den Namen der Funktion erklärt. Die Funktion kommt dank der Glibc-Umsetzung nun also auch unter Linux zum Zuge, zuvor war dies nur über die Libbsd möglich.

Der Umsetzung in die Glibc ist ein langer Prozess vorangegangen. Schließlich machte sich ein Red-Hat-Entwickler schon vor einigen Jahren an die Arbeit an Arc4random für Glibc. Dieser Arbeiten sind im Frühjahr dieses Jahres wieder aufgenommen worden. Ein erneuter Versuch führte mit der nun umgesetzten Aufnahme zum Erfolg. Im entsprechenden Commit heißt es: "Die Implementierung basiert auf skalarem Chacha20 mit Cache pro Thread. Sie verwendet getrandom() oder /dev/urandom als Fallback, um die anfängliche Entropie zu erhalten, und füllt den internen Zustand alle 16 MB des verbrauchten Puffers neu auf."

Bereits seit einigen Jahren können Entwickler über Glibc-Wrapper auf die zwei Linux-Systemaufrufe getrandom() und getentropy() zugreifen. Diese sind wegen Problemen entstanden, die die OpenBSD-Entwickler beim Erstellen ihres OpenSSL-Forks LibreSSL im Sommer 2014 entdeckt haben. Die Kernel-Community hat die Neuerung vergleichsweise schnell schon wenige Monate darauf in Linux eingepflegt. Der Wireguard-Entwickler Jason Donenfeld gibt zu bedenken, dass diese eigentlich ausreiche und Arc4random in Glibc deshalb nicht benötigt werde. Dennoch hat sich Donenfeld nun an der Entwicklung beteiligt und verbesserten Code als Patch bereitgestellt. Der soll in Glibc aufgenommen werden.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
Videostandards
Wie das Bild auf den Schirm kommt

Was ist der Unterschied zwischen Displayport und HDMI? In einer kleinen Geschichtsstunde erklären wir, wie Bilddaten zum Monitor kommen.
Von Johannes Hiltscher

Videostandards: Wie das Bild auf den Schirm kommt
Artikel
  1. Halbleiterfertigung: Hafniumdioxid ist mehr als ein guter Isolator
    Halbleiterfertigung
    Hafniumdioxid ist mehr als ein guter Isolator

    Speicher, konfigurierbare Transistoren und Energy Harvesting: Hafniumdioxid kann viel, Globalfoundries integriert es in die Serienfertigung.
    Ein Bericht von Johannes Hiltscher

  2. Data Mesh: Herr der Daten
    Data Mesh
    Herr der Daten

    Von Datensammelwut und Data Lake zu Pragmatismus und Data Mesh - ein Kulturwandel.
    Von Mario Meir-Huber

  3. iPhone-Bildschirm: iOS 16 mit abermals veränderter Akkuanzeige
    iPhone-Bildschirm
    iOS 16 mit abermals veränderter Akkuanzeige

    Apple hat teilweise auf die Kritik an der Akkuanzeige in iOS 16 reagiert. In der Beta 6 gibt es mehr Einstellmöglichkeiten im Energiesparmodus.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Günstig wie nie: Zotac RTX 3080 12GB 829€, Mac mini 16GB 1.047,26€. WD SSD 2TB (PS5) 199,99€ • MindStar (Sapphire RX 6900XT 939€, G.Skill DDR4-3200 32GB 98€) • PS5 bestellbar • Alternate (Apple iPad günstiger) • Games für PS5/PS4 bis 84% günstiger • Bester 2.000€-Gaming-PC[Werbung]
    •  /