03. April 2019
Kitharas langer Marathonlauf zur Treibersignierung
In der exklusiven Welt der Informatik, wo all die Reichen und Schönen zu Hause sind, ist grundsätzlich immer alles Gold was glänzt. Aber hin und wieder geraten die Dinge auch durcheinander, und dann wird es für alle Beteiligten schwer, den Reichtum an Bits und Bytes so richtig zu genießen.
Wenn der geschmeidige Datenfluss gestört wird, leiden Kunden ebenso wie unsere Softwareentwickler. Letztere haben es ohnehin nicht leicht, denn der Job eines Informatikers, der im gesamten Universum, und unbestätigten Berichten zufolge auch in den meisten anderen Universen, als einer der beliebtesten und begehrtesten Berufe gilt, wird umso kniffliger, je mehr es zu tun gibt.
In unserem Fall sorgt die Mischung aus hervorragender Auftragslage bei gleichzeitigem Fachkräftemangel für schweißgebadete Computertastaturen. Es gibt richtig viel zu tun! Außerdem sind aufgrund der Komplexität der Arbeitsbereiche, in denen Kithara tätig ist, nur wenige Bewerber geeignet, so dass wir inzwischen naive und unerfahrene Jugendliche direkt vor den Schulen rekrutieren, um sie mit Geduld, Liebe, viel Engagement und stark zuckerhaltigen Getränken für verbesserte Gehirnfunktionen zu respektablen Programmierern heranzuzüchten.
Leider reicht das bei weitem nicht aus, denn diese wenigen hochspezialisierten Mitarbeiter müssen sich, statt ihren transzendentalen Geist für kreativen Quellcode opfern zu können, mit schnöden Alltagsproblemen herumärgern, die von renitenten Dienstleistern, oft aber auch von anderen, weniger transzendental veranlagten Informatikerkollegen verursacht werden.
Eines der aktuell drängendsten Probleme war die Signierung unserer Treiber. Genauer gesagt, nicht die Signierung schlechthin – dies tun wir bereits seit vielen Jahren – sondern die seit einiger Zeit geforderte EV-Signierung mit erweitertem Zertifikat. Die Vorgehensweise erinnert stark an Mike Krügers Partyhit: „Sie müssen erst den Nippel durch die Lasche ziehen …“ Was normalerweise nur mittels einfachem Knopfdruck erledigt sein sollte, wurde für Kithara zum Marathonlauf. Allerdings nicht einfach geradeaus, auf glänzender, sanft rückfedernder, angenehm klimatisierter Laufbahn, sondern als Hürdenlauf über eine Stolperstrecke mit garstigen Baustellen, löchrigem Asphalt, nicht ausgeschilderten Umleitungen und steinewerfenden Passanten.
Zum Signieren unserer Softwareprodukte benötigen wir zunächst einmal einen Dongle. Das ist so ein ulkiges Teil aus Plastik und Metall, welches an den USB-Anschluss eines handelsüblichen Computers angestöpselt wird. Und auf dieses Teil wird von einem amerikanischen Dienstleister das digitale Zertifikat installiert, das uns als seriösen Softwarehersteller ausweist. Da Materieübertragung, unter Star-Trek-Fans auch bekannt als „Beamen“, noch immer nicht zuverlässig funktioniert, gelangt dieser USB-Stick momentan noch auf orthodoxem Wege zu uns nach Berlin, nämlich per Post. Dabei muss er unter anderem auch die bürokratischen Schranken von Grenzorganen und Zollbeamten überwinden.
Und genau dort ging der Spaß schon los! Denn der Stick landete irgendwo in einem verstaubten Regal, ganz hinten, ganz unten, in einem finsteren, weit abgelegenen Kellerverlies, ohne auch nur einen Pieps von sich zu geben. Nach mehreren Wochen fragten wir beim amerikanischen Dienstleister nach, und die fanden heraus – das verantwortliche Logistikunternehmen hatte das Ding beim Zoll hinterlegt und wartete auf eine Nummer. Man hätte ja mal auf die Idee kommen können, entweder Absender oder Empfänger über diesen Umstand zu informieren. Doch das Logistikunternehmen ging da offenbar gänzlich andere Wege. Hätten wir nicht endlich mal nachgefragt, würden vermutlich Archäologen in einigen tausend Jahren bei Ausgrabungen im Raum Köln über ein merkwürdiges Plastik-Metall-Verbundobjekt stolpern, auf das sie sich keinen Reim machen können.
Irgendwann hielten wir das Ding dann aber freudestrahlend in den Händen, stöpselten es an unseren Build-Server an und … starrten ratlos auf die rot blinkenden Bildschirme! Das Signieren der Custom-Driver funktionierte nicht. Es gab allerdings auch keine Fehlermeldung, aus der man sinnvolle Rückschlüsse hätte ziehen können. Mangels hilfreicher Informationen seitens des amerikanischen Dienstleisters verging noch einige Zeit, bis wir endlich herausfanden, dass das Signieren aus Sicherheitsgründen nicht über Remote-Desktop-Verbindungen möglich ist. Der Stick steckt nämlich an einem Server, unsere Entwickler sitzen jedoch an ihren jeweiligen Arbeitsrechnern. Auf so was muss man auch erst mal kommen! Vielleicht wäre es ja sinnvoll, die Anleitung würde auf diesen Umstand hinweisen, anstatt vom Nutzer zu erwarten, dass der sich diese epochal wichtige Erkenntnis mittels Trial-and-Error-Methode mühsam selbst zusammenexperimentiert.
Doch wer glaubt, der Marathon endete bereits an dieser Stelle, irrt gewaltig! Vor das spannende Finale hatte die Sicherheitsarchitektur des Betriebssystems nämlich noch die Signierung der Treiber gesetzt. Eben jenen Vorgang, der wie oben beschrieben, mittels weniger einfacher Mausklicks erledigt sein sollte.
Zum Signieren muss man eine Webseite im Internet aufsuchen. Nun wird, freilich erst nach umfangreicher Anmeldung, die Treiberdatei hochgeladen. Und anschließend folgt das große Stühlerücken durch die sieben Monsterbürokratie-Abteilungen eines Bürokratiemonsters, welche durch kleine, miteinander verbundene Kreise dargestellt sind. Diese Abteilungen heißen Package Acceptance, Preparation, Scanning, Validation, Catalog creation, Sign und Finalize. In welcher Abteilung sich der Signierungsstatus gerade befindet, wird durch ein weißes Häkchen auf grünem Grund dargestellt. Dazwischen gibt es nichts. Keinen Fortschrittsbalken, keine Stoppuhr, keinen Countdown … nichts, was dem Entwickler in irgendeiner Form anzeigt, wie lange der Vorgang noch dauert. Meist war die Signierung nach etwa 15 Minuten erledigt. Es gab jedoch auch Tage, da war der Vorgang selbst nach drei bis vier Stunden noch nicht abgeschlossen!
Wenn wir Pech hatten, endete dieser stundenlange Marathon im Nirwana, mit Absturz der Webseite, der Fehlermeldung „Page not found“ und der Anzeige wirrer Satzfragmente.
Doch oft hatten wir auch Glück und sahen am Ende das Häkchen im letzten Kreis, allerdings ohne Hinweis, wie es weitergeht. Man muss nämlich erst auf den kleinen, unscheinbaren Link namens „More“ klicken, dann wird endlich ein verdeckter Teil der Webseite aufgeklappt, hinter dem sich der ersehnte Download-Button versteckt.
Man fragt sich unwillkürlich, ob die Entwickler der Website diesen Prozess selbst schon einmal durchlebt haben.
Auf die Quartalslieferung, bei der über 100 neue Treiber signiert werden müssen, freuen wir uns jetzt schon!