Binaire blobs in Linux: wat ze zijn, risico's, beleid en alternatieven

Laatste update: 20/11/2025
Auteur: Isaac
  • Binaire blobs zijn propriëtaire onderdelen die in de kernel worden geladen. Ze vergemakkelijken de compatibiliteit, maar beperken de vrijheid en controlemogelijkheden.
  • Projecten en distributies zijn het daar niet mee eens: OpenBSD en Libreboot wijzen ze af, terwijl andere ze accepteren om complexe hardware te ondersteunen.
  • Gesloten firmware verhoogt het risico; Coreboot en Libreboot bieden meer open paden op compatibele apparaten.

Illustratie over binaire blobs in Linux

Als u GNU/Linux gebruikt of geïnteresseerd bent in vrije softwareVroeg of laat kom je de term binaire blob tegen, ook wel propriëtaire blob genoemd. We hebben het over stukjes software in binair formaat die in de kernel of de drivers ervan worden geladen zonder de broncode te verstrekken. Met andere woorden: verpakte functionaliteit die niet gedeeld kan worden. bestuderen of wijzigenToch zijn ze vaak onmisbaar om bepaalde hardware goed te laten functioneren.

De controverse woedt al langere tijd en raakt gevoelige kwesties: van gebruikersvrijheid tot systeembeveiliging. Er zijn gemeenschappen die hen als een kleiner kwaad tolereren en anderen die ze ronduit afwijzen. Om de verwarring nog groter te maken, in de wereld van databanken en opslagruimte In de cloud betekent BLOB iets heel anders: een groot binair object, de typische container voor video's, back-ups of afbeeldingen. In dit artikel verduidelijken we beide betekenissen en leggen we uit waarom binaire blobs in de cloud bestaan. Linuxwie ze bestuurt, welke risico's ze opleverenWelke alternatieven zijn er en hoe past dit alles binnen de vrije softwarecultuur?

Wat zijn binaire blobs in Linux en waarom verschijnen ze?

gepatenteerd blob-concept in Linux-systemen

Wanneer een fabrikant niet voldoende technische documentatie over zijn apparaat verstrekt, Kernelontwikkelaars kunnen geen volledig vrije driver schrijvenOm dit te omzeilen, levert de leverancier een vooraf gecompileerd bestand dat implementeert wat ontbreekt: de binaire blob. Dit gebeurt vrij vaak bij grafische kaarten, wifi-adapters, RAID-controllers en andere componenten die snel op de markt verschijnen.

In het ecosysteem van Unix-achtige besturingssystemen is de respons niet uniform. NetBSD, FreeBSD en DragonFly BSD hebben ondersteunde blobs Soms gebruikt als een snelle manier om functionaliteiten te verbergen. OpenBSD en LibertyBSD daarentegen zijn er trots op dat ze geen functionaliteiten binnen hun codeboom accepteren, met als doel oncontroleerbare risico's te minimaliseren en hun toewijding aan volledige transparantie te bevestigen.

Ook in de GNU/Linux-wereld is er diversiteit. Er zijn distributies die zich expliciet positioneren tegen blobs.Linux-distributies zoals gNewSense, Trisquel en Parabola zijn gelieerd aan de Free Software Foundation. Dit standpunt heeft geleid tot initiatieven zoals Linux-libre, een reeks patches die propriëtaire firmware en kernelcomponenten verwijderen. Op een meer praktisch niveau staan ​​sommige algemene distributies, met name nieuwere computers, closed-source drivers of propriëtaire firmware toe om compatibiliteitsredenen.

Wanneer blobs voor andere systemen worden geschreven, kiezen sommige projecten voor wrappers die Ze fungeren als een compatibiliteitslaagwaardoor een driver die ontworpen is voor systeem X, ook op systeem Y kan werken. In bepaalde omstandigheden is dit een handige truc, maar het kent dezelfde beperkingen: ondoorzichtigheid, afhankelijkheid van leveranciers en onderhoud buiten de controle van de community.

Risico's en nadelen van het vertrouwen op blobs

De lijst met problemen is bekend bij beheerders en ontwikkelaars. De code niet kunnen lezen of aanraken Het houdt in dat je het opgeven van correcties, verbeteringen en onafhankelijke auditsVanaf dat moment ontvouwen zich een aantal niet zo triviale gevolgen.

  • Onvermogen om te wijzigen en opnieuw te distribueren versies die zijn afgestemd op uw behoeften, wat de samenwerking en collectieve verbetering belemmert.
  • Beperkte draagbaarheidZe worden doorgaans alleen voor een paar architecturen gecompileerd en kunnen niet eenvoudig naar andere omgevingen worden geporteerd.
  • Onbereikbare kwaliteitHet is niet mogelijk om te controleren of de controller doet wat hij zegt of dat er subtiele fouten in zitten.
  • Geen beveiligingsauditDerden kunnen de code niet controleren op kwetsbaarheden of achterdeurtjes.
  • Blind vertrouwen in de leverancier, met de gegronde angst voor spyware of opzettelijke of onbedoelde achterdeurtjes.
  • Onmogelijkheid tot reparatie snel fouten of incompatibiliteiten identificeren vanuit de systeemcommunity.
  • Einde van willekeurige steunDe fabrikant kan het product op elk gewenst moment in de steek laten, waardoor de toekomstige compatibiliteit wordt verstoord.
  • Herverdelingsbeperkingen In sommige gevallen. Klassiek voorbeeld: bepaalde iSight-camera's op de iMac 5,2, waarvan het gepatenteerde stuurprogramma niet kon worden herdistribueerd; de gebruiker moest het zelf uit het originele systeem van de fabrikant halen.
  De stille bedreiging: Lucid, het phishingplatform dat mobiele telefoons in gevaar brengt

Hoewel er doorgaans een onderscheid wordt gemaakt tussen firmware en blobs, is de praktische grens vaag. De initialisatiefirmware Het is de eerste software die start wanneer u de computer aanzet, apparaten initialiseert en vervolgens het besturingssysteem in gebruik neemt. Als het propriëtair is, erft het bijna alle genoemde problemen, met als extra complicatie de enorme controle over het platform.

Firmware, BIOS, microcode en het mijnenveld van vertrouwen

De Free Software Foundation voert al jaren campagnes om firmware, BIOS en platforms van Boot open en controleerbaar zijn. De realiteit is echter weerbarstig: de meeste apparaten op de markt bevatten gesloten firmware vol blobs, met ondersteuning die vaak voortijdig eindigt en patches die nooit of te laat verschijnen. De kosten van reverse engineering om deze componenten te ontcijferen en te vervangen zijn extreem hoog en gelden bijna altijd voor zeer specifieke hardwaregevallen.

Moderne boot-systemen maken gebruik van SPI-flashchips waarin de volledige platform-ROM is opgeslagen. Voor het manipuleren van deze firmware zijn hulpmiddelen en kennis nodig Ongebruikelijke functies zijn onder meer het aanpassen van de grootte, het bijvullen, externe flashing en zelfs de theoretische mogelijkheid om een ​​basisbesturingssysteem in dat geheugen op te nemen. Voor gemiddelde gebruikers is dit onpraktisch, vandaar het belang van communityprojecten die het proces vereenvoudigen.

Na de initiële lancering is het debat over microcode en subsystemen voor beheer op afstand in sommige architecturen gegroeid. De ondoorzichtigheid van technologieën zoals Intel Beheer Engine en de mogelijkheden op afstand van het vPro-ecosysteem. Omdat ze op een zeer laag niveau zijn ingebed, baart hun bereik zorgen bij degenen die prioriteit geven aan privacy, controle en verifieerbare beveiliging.

Ondertussen wijzen sommigen erop dat apparaten met energiezuinige ARM-processors Ze bieden verschillende scenario's: een goede batterijduur, lagere koelvereisten en, in bepaalde modellen, meer open hulpcomponenten, zoals embedded controllers voor toetsenborden en sensoren. Het landschap is hoe dan ook breed en heterogeen: het is het beste om elk geval afzonderlijk te beoordelen.

Coreboot, Libreboot en de zaak van Chromebooks

Google heeft Coreboot in veel gevallen ondersteund Chromebookdie, op papier, brengt deze teams dichter bij een transparantere start-upToch voldoen ze meestal niet aan de RYF-certificering van de FSF, omdat ze nog steeds blobs in verschillende lagen bevatten: van de firmware zelf tot de kernel, inclusief randapparatuur die gepatenteerde microcode vereist, zoals sommige Wi-Fi-kaarten.

  Hoe u multi-factorauthenticatie (MFA) in Microsoft 365 inschakelt: een complete handleiding

Draadloze connectiviteit is het grootste probleem. Klassieke Atheros-chipsets draaien doorgaans op gratis software. zonder de noodzaak van blobs, maar de andere families, vooral de zeer moderne of die op het bord gesoldeerd zijn, maken vervanging ingewikkeld. In portable Dankzij de miniPCIe-sleuf is het vervangen van de kaart eenvoudig, maar het openen van nieuwe apparatuur kan gevolgen hebben voor de garantie.

Het grafische gedeelte is ook behoorlijk indrukwekkend. met chauffeurs gratis zoals Nouveau voor NVIDIAKepler GPU's presteren uitstekend als ze handmatig worden overgeklokt naar de fabrieksfrequenties; in Maxwell GPU's van de tweede generatie en later wordt het echter ingewikkelder en blijven ze in ruststand met beperkt vermogen. Op AMD/ATI worden de grafische kaarten vrijwel onbruikbaar zonder het laden van de propriëtaire firmware, ondanks de aanzienlijke verbetering van de open-source drivers. Op Intel waren pre-Skylake-chips het meest gebruiksvriendelijke voorbeeld voor 3D zonder extra propriëtaire firmware.

Daarom is het op systemen met beperkte gratis grafische ondersteuning niet mogelijk om: Lichte desktopomgevingen zoals LXDE of Xfce worden aanbevolen.die niet afhankelijk zijn van 3D-versnelling. Het resultaat zal qua effecten niet spectaculair zijn, maar het zal stabiel en perfect bruikbaar zijn voor dagelijks gebruik.

Libreboot, een compromisloze weddenschap

Libreboot is ontstaan ​​als een strikte distributie van Coreboot, met één duidelijke regel: Het integreren van gepatenteerde blobs is niet toegestaan.Het doel is tweeledig: de gebruikersvrijheid maximaliseren en een installatie- en updateproces faciliteren dat iedereen kan voltooien door gedetailleerde documentatie te volgen. Het werd gepresenteerd als de stabiele versie, meer gericht op de eindgebruiker, met geautomatiseerde tools en workflows.

Het eerste vlaggenschipplatform was de ThinkPad X60, en met de tijd Het project heeft voorbereide ROM-images gepubliceerd voor verschillende SPI-chipgroottes, hulpprogramma's zoals flashrom en een GRUB-payload die klaar zijn om GNU/Linux-systemen op te starten met geavanceerde opties, zoals het verifiëren van handtekeningen met GPG of het laden van kernels die op de SPI zelf worden gehost.

  • Alleen gratis softwareGeen propriëtaire CPU-microcode, geen gesloten videoblobs en geen gesloten initialisatie. Als iets niet kan zonder propriëtaire software, wordt het simpelweg niet ondersteund.
  • Bewust bereikHet ondersteunt minder hardware dan Coreboot, maar wat het wel ondersteunt, doet het zonder dat dit ten koste gaat van de vrijheid van de gebruiker.
  • Gebruiksgemak: geautomatiseerde compilatie en installatie, documentatie gericht op niet-experts en actieve helpkanalen (mailinglijsten en IRC).
  • Alles geïntegreerd: GRUB-payload, flashrom en meegeleverde hulpprogramma's om delicate stappen voor de eindgebruiker te vermijden.
  • Vooraf gecompileerde ROM's: downloads Klaar om te flashen zonder compileren, met varianten voor chips met een niet-standaardformaat indien van toepassing.
  • Veiligheid en snelheid: kortere opstarttijden, de mogelijkheid tot beveiligde opstart en vrije keuze van versies, zonder sloten of fabrikant-DRM.
  • Hackbaar en aanpasbaarAchtergronden, lettertypen, payloads en opties kunnen worden gewijzigd naar wens van de teameigenaar.
  • Naar believen bij te werkenHet upgraden of downgraden gebeurt naar eigen inzicht van de gebruiker. Als de schrijfbeveiliging van de chip is geactiveerd, is voor latere updates een externe programmeur nodig.
  • Snelle reactie op storingenAls er een probleem is, reageert de community snel. Dit in tegenstelling tot propriëtaire leveranciers die pas laat, zelden en alleen op bepaalde versies van één systeem patches uitbrengen.
  Hoe ouderen te beschermen tegen de risico's van internet

Deze aanpak laat uiteraard de zeer populaire moderne platformen buiten beschouwing. Maar vermijd geplande veroudering afgeleid van grillige ondersteuningscycli en zorgt ervoor dat veteranenuitrusting bruikbaar en veilig blijft met een gratis en gedocumenteerde laars.

Wat is een BLOB in databases en object storage?

In de ICT-wereld staat BLOB voor Binary Large Object. Dit zijn grote datasets die in binair formaat zijn opgeslagen.Dit zijn meestal multimediabestanden, schijfkopieën of back-ups die zich in databases of object storage bevinden. In tegenstelling tot de kernel-eigen blob zijn dit geen drivers of firmware, maar informatiecontainers.

Puur tekstbestanden worden soms behandeld als CLOB's (Character Large Objects). Het verschil is dat CLOB als tekst wordt behandeld. En niet als binair bestand, wat handig is voor bepaalde engines en bewerkingen. In de praktijk bestaan ​​beide concepten naast elkaar in databases en cloudplatforms.

  • Multimedia-inhoud publicerenAfbeeldingen, video en audio die aan websites worden aangeboden, apps en diensten van streaming.
  • Datameren en analyses: datalakes voor big data, training van machine learning-modellen en business intelligence.
  • Gearchiveerd logs: bewaren van applicatie- en beveiligingsrecords voor diagnostiek, auditing en naleving.
  • Document beheer: PDF's, scans en grootschalige bedrijfsgeschiedenissen.
  • Statische accommodatie: HTML, CSS, JavaScript en afbeeldingen rechtstreeks vanuit object storage serveren.
  • Softwaredistributie: pakketten, updates en installatieprogramma's met hoge beschikbaarheid.
  • GezondheidsgegevensMedische beelden, anamneses en genomica met veiligheids- en regelgevingsgaranties.
  • Wetenschappelijk onderzoek: datasets van experimenten, simulaties en sensornetwerken voor analyse en samenwerking.

Om verwarring te voorkomen, wordt Binary BLOB soms ook wel Basic Large Object genoemd. Het essentiële punt is dat we het hebben over datacontainersgeen ondoorzichtige stukjes die in de kern van het systeem zijn ingebed. Het zijn werelden die met elkaar verbonden zijn door het binaire formaat, maar met totaal verschillende implicaties en risico's.

De discussie over binaire blobs in Linux gaat niet alleen over hardware die wel of niet werkt: Het gaat om vertrouwen, controle en duurzaamheid op de lange termijnEr zijn gebieden waar compromissen onvermijdelijk zijn, en andere waar het kiezen voor open-source alternatieven zoals Linux Libre, Coreboot of Libreboot meer dan de moeite waard is. Iedereen die de risico's en alternatieven kent, kan zelf beslissen hoeveel controle hij of zij over zijn of haar eigen systeem wil opgeven, en onder welke voorwaarden.

Hoe u strings kunt gebruiken om verborgen tekst in binaire bestanden te extraheren
Gerelateerd artikel:
Hoe je strings gebruikt om verborgen tekst in binaire bestanden te extraheren