c’t-KeyFinder liest Installationsschlüssel

Windows 10 und 11 verlangen während der Installation nach einem passenden Schlüssel, den sie anschließend tief im System verstecken. Ein c’t-Skript liest die Schlüssel aus all Ihren Installationen aus, sei es zwecks Neuinstallation, Backup, Inventur oder einfach nur, weil es Microsoft ärgert.

Von Axel Vahldiek

image

Damit Sie eine Software verwenden dürfen, muss Ihnen der Rechteinhaber ein Nutzungsrecht einräumen, also eine Lizenz. Er darf im Rahmen der Gesetze frei entscheiden, was Sie für die Lizenz zahlen sollen und was Sie mit der Software anfangen dürfen. Die Bandbreite reicht von Lizenzbestimmungen nach dem Motto „ihr braucht nichts zu zahlen, macht damit, was ihr wollt“ (Public Domain), über Open-Source und Freeware-Lizenzen (es gibt zwar Grenzen des Erlaubten, doch die Nutzung an sich kostet meist nichts) bis hin zu kommerziellen Lizenzen mit umfangreichem Kleingedruckten. Zu letzteren gehören die dauerhaft gültigen Windows-Lizenzen, die Microsoft nur dann herausrückt, wenn Sie zuvor möglichst üppig zu den Milliardengewinnen des Konzerns beigetragen haben. Und damit Sie sich an der Kasse nicht vorbeischummeln, steckt einiges in Windows, was Sie daran hindern soll.

Das bekannteste Instrument, mit dem Microsoft den nicht lizenzierten Einsatz von Windows verhindern will, ist die Aktivierung: Die Installation nimmt dabei Kontakt mit Microsofts Servern auf und erst, wenn die ihr Okay geben, schaltet Windows dauerhaft den vollständigen Funktionsumfang frei. Mitunter verlangt Windows eine erneute Aktivierung, etwa nach dem Tausch des Mainboards. Manchmal will Windows sogar ohne erkennbaren Anlass erneut aktiviert werden.

Noch wichtiger aber ist der Installationsschlüssel, denn ohne diesen lässt sich Windows gar nicht erst installieren, geschweige denn aktivieren. In jeder Windows-Installation steckt ein Schlüssel, und zwar auch dann, wenn Sie nichts davon wissen und selbst nie einen eingegeben haben. Solche Schlüssel bestehen aus Zeichenfolgen, die aus fünf durch Bindestriche getrennten Blöcken zu je fünf Zeichen bestehen. Enthalten sind scheinbar willkürlich gewählte Ziffern und Buchstaben, aber keine Sonderzeichen, was ungefähr so aussieht: 1ABCD-E2FGH-IJ3KL-MNO4P-QRST5.

Kein Einwegmaterial

Microsoft wäre es am liebsten, wenn Sie für jede erneute Installation und Aktivierung eine neue Lizenz erwerben. Doch das müssen Sie nicht, denn Installationsschlüssel sind kein Einwegmaterial. Sie können und dürfen sie wiederverwenden. Bei den erwähnten Nachfragen nach Hardwaretausch oder aus heiterem Himmel fordert Windows Sie sogar selbst dazu auf.

Es gibt dabei zwar Grenzen dessen, was Sie mit einem Schlüssel anfangen dürfen. So ist es nicht erlaubt, mehrere Windows-Installationen mit demselben Schlüssel zur gleichen Zeit zu betreiben. Doch es spricht nichts dagegen, den Schlüssel für eine Neuinstallation zu verwenden, die als Ersatz für die alte dient. Also beispielsweise, wenn Sie Ihre Windows-Lizenz künftig auf einem anderen/neuen Computer nutzen wollen oder weil die alte Installation so kaputtgespielt ist, dass ein Neuanfang fällig ist.

Für den Neustart benötigen Sie lediglich den alten Schlüssel. Genauer: Sie brauchen einen zur Edition (Home, Pro …) passenden Schlüssel aus irgendeiner nicht mehr genutzten Windows-Installation. Sowohl Windows 10 als auch Windows 11 akzeptieren Schlüssel von Windows 10 und 11. Sie können für die Windows-Installation auf dem nagelneuen Selbstbau-PC also durchaus jene Lizenz verwenden, die bislang auf einem nun in der Ecke verstaubenden Windows-Notebook ihren Dienst tat. Ältere Schlüssel, also solche für Windows 7, 8 und 8.1 funktionieren seit dem abrupten Ende des Gratis-Upgrades im Oktober 2023 aber leider nicht mehr (siehe Artikel „Aus für das Gratisupgrade“).

Noch mal deutlich: Sofern die Edition passt, taugt jeder Schlüssel von Windows 10 und Windows 11 zur Neuinstallation von Windows 10 oder 11. Er darf nur nicht auf unerlaubte Weise verwendet werden, also beispielsweise nicht zum Betrieb von mehr als einer Installation zur gleichen Zeit.

Der Haken steckt woanders: Das Auslesen des Schlüssels aus einer alten Installation ist nicht trivial. Das geht schon damit los, dass in jeder Windows-Installation stets mehrere Schlüssel stecken. Selbst eine zweistellige Anzahl ist keine Seltenheit – doch welcher ist der richtige? Knifflig ist auch das Klären der Frage, zu welcher Version und Edition der ausgelesene Schlüssel gehört. Und das Wichtigste: Wird mit ihm das Aktivieren klappen?

image

Bevor Sie alle Komfortfunktionen von Windows benutzen können, will Microsoft mittels Aktivierung davon überzeugt werden, dass Sie eine gültige Lizenz besitzen.

Vorstellung: c’t-KeyFinder

Auftritt c’t-KeyFinder: Unser neues Skript liest die Windows-Schlüssel aus Ihren Installationen aus, und zwar alle. Zudem versucht es einzuordnen, welcher Schlüssel zu welcher Version, Edition und Lizenz gehört. Und es wagt eine Prognose bezüglich der Aktivierung. Unser Skript vermag zwar nicht vorherzusagen, ob das Aktivieren tatsächlich klappen wird. Denn das entscheiden allein die Aktivierungsserver, und auf die hat niemand außer Microsoft Einfluss. Was unser Skript aber kann: Es erkennt, ob jegliche Aktivierungsversuche mit einem bestimmten Schlüssel sicher scheitern werden – so ersparen Sie sich zumindest zeitraubende Versuche mit aussichtslosen Kandidaten. Wählen Sie dann einen der anderen.

Auch für Admins ist das Auslesen nützlich: Sie können sich so einen Überblick verschaffen, welche Installation in ihrem Zuständigkeitsbereich mit welchem Schlüssel betrieben wird. Und zwar auch dann, wenn der Vorgänger das nicht dokumentiert hat.

Einsatz!

Es ist ganz einfach, unser Skript zu verwenden: Laden Sie via ct.de/keyfinder das ZIP-Archiv „ctKeyFinder.zip“ herunter und entpacken Sie es in einen beliebigen Ordner. Anschließend finden Sie darin eine Datei namens ctKeyFinder.bat sowie einen Unterordner, dessen Inhalt Sie ignorieren können. Doppelklicken Sie einfach die ctKeyFinder.bat, dann läuft das Skript durch, ohne dass Sie irgendwas machen müssen.

Ist es fertig, erscheint eine Textdatei namens ctkey.txt. Oben stehen der „Gerätename“ der Windows-Installation sowie das Datum und die Uhrzeit, zu der das Skript lief. Darunter listet das Skript alle gefunden Schlüssel inklusive Zusatzinfos auf: Wo wurde er gefunden, zu welcher Version und zu welcher Edition gehörter, ist er aktivierbar? Sofern Zweifel daran bestehen, dass alle Aktivierungsversuche scheitern werden, steht dabei „######### Schluessel ist eventuell aktivierbar. AUSPROBIEREN! ########“. Um es noch mal deutlich zu sagen: Das ist keine Garantie, dass das Aktivieren mit diesem Schlüssel tatsächlich klappt.

image

Windows speichert Installationsschlüssel in der Registry in Binärwerten, die der c’t-KeyFinder umrechnet.

image

Diese Installation wurde ursprünglich als Windows 8.1 installiert und dann nach und nach auf Windows 11 aktualisiert.

Weitere Installationen durchsuchen

Enthalten die Laufwerke des PCs weitere Windows-Installationen, durchsucht das Skript auch diese. Es ist dabei egal, ob sie auf internen oder externen Datenträgern liegen. Eine Parallelinstallation auf einem internen Datenträger durchsucht der Key-Finder genauso wie einen per USB angeschlossenen Datenträger, der aus einem anderen PC ausgebaut wurde und noch eine Installation enthält. Sie erkennen dann an der Ausgabe in der Textdatei, auf welchem Laufwerk ein Schlüssel gefunden wurde: Im Pfad hinter „Fundort“ steht unter anderem _LAUFWERK_X_, wobei X für den Buchstaben steht, den das laufende System für diesen Datenträger im Explorer anzeigt.

Damit Sie über mehrere Installationen hinweg auf demselben PC suchen können, muss das Skript mit Administratorrechten laufen (sonst erscheint ein entsprechender Hinweis). Das Skript so zu starten ist einfach: Rechtsklick auf die ctKeyFinder.bat, dann „Als Administrator ausführen“ auswählen.

Um den KeyFinder auf weiteren PCs laufen zu lassen, kopieren Sie einfach alle dazugehörigen Dateien auf einen USB-Stick. Die Ergebnisse der Suchläufe landen untereinander in immer derselben Textdatei ctkey.txt, unterscheiden können Sie sie anhand der jeweils vermerkten Gerätenamen. Was auch geht: Sie können die Datei ctkey.txt beliebig umbenennen, etwa um sie einer bestimmten Installation leichter zuordnen zu können. Das Skript erstellt dann beim nächsten Lauf automatisch eine neue ctkey.txt.

Für knifflige Fälle

Wenn ein System nicht mal mehr bootet, können Sie die Schlüssel womöglich trotzdem noch auslesen. Lediglich die Registry-Hive-Dateien SYSTEM und SOFTWARE müssen dafür noch intakt sein, sie liegen im Windows-Ordner unter System32\Config [2]. Das Auslesen erledigen Sie dann beispielsweise mit unserem c’t-Notfall-Windows. Besitzen Sie bereits einen Stick mit unserem Notfallsystem, kopieren Sie den KeyFinder einfach zusätzlich darauf. Nach dem Booten vom Stick starten Sie den KeyFinder aus dem Explorer.

Sie haben kein Notfall-Windows zur Hand? Es tut auch jeder beliebige Windows-Setup-Stick, wie Sie ihn beispielsweise mit Microsofts kostenlosem Media Creation Tool (MCT, siehe ct.de/w88r) selbst erstellen können. Kopieren Sie den KeyFinder auf den Stick. Nach dem Booten warten Sie, bis der Dialog mit der Sprachauswahl erscheint. Drücken Sie Umschalt+F10, worauf sich eine Eingabeaufforderung öffnet. Tippen Sie notepad darin ein und drücken Sie Enter. Es öffnet sich der Windows-eigene Texteditor. Nun rufen Sie per Strg+O den Öffnen-Dialog auf und stellen unten das Pulldown-Menü neben „Dateityp“ um auf „Alle Dateien“. Klicken Sie links auf „Dieser PC“ und hangeln Sie sich anschließend zum Speicherort des KeyFinders durch. Wichtig: Die Batch-Datei nicht doppelklicken! Klicken Sie stattdessen mit der rechten Maustaste auf „ctKeyFinder.bat“ und wählen Sie „Als Administrator ausführen“. Das Skript läuft durch, die Text-Datei mit den gefundenen Schlüsseln landet im selben Ordner.

Der Rechner verweigert das Booten per USB? Eine beliebige Windows-Setup-DVD tut es auch, selbst steinalte Windows-7-32-Bit-DVDs. Das Skript kopieren Sie auf einen zusätzlich anzustöpselnden USB-Stick, der Aufruf funktioniert wie im vorigen Absatz beschrieben.

Auch das noch: Office-Schlüssel

Eigentlich haben wir den c’t-KeyFinder bloß zum Auslesen von Windows-Installationsschlüsseln entwickelt. Bei unseren zahlreichen Tests stellte sich aber schnell heraus, dass er zusätzlich auch die Installationsschlüssel alter Microsoft-Office-Versionen findet.

Wenn Sie eine auch nur halbwegs aktuelle Office-Version verwenden, haben Sie von den gefundenen Schlüsseln leider nichts. Neuere Office-Versionen benötigen entweder überhaupt keinen Lizenzschlüssel oder speichern ihn nicht in der Registry. Die Aktivierung erfolgt über Ihr Microsoft-Konto. Der KeyFinder kann daher nur Schlüssel alter Versionen finden. Welche genau das sind, steht im Idealfall direkt dabei (Beispiel: „Microsoft Office Professional Edition 2003“). Oder Sie erkennen es an der internen Versionsnummer im Schlüsselpfad des „Fundorts“: „Office\11.0“ steht für Office 2003, „Office\12.0“ für Office 2007. Die Versionsnummern 14, 15, und 16 gehören zu Office 2010, 2013 und 2016. Spätere Office-Versionen haben die 16 behalten. Nutzen können Sie gefundene Schlüssel ausschließlich, um die zugehörige Oldie-Version erneut zu installieren. Für neuere Versionen taugen die Schlüssel nicht – anders als bei Windows gibt es für Office (ohne 365er-Abo) kein Gratis-Upgrade.

(swi)

Bei ganz antiken Kisten können Sie das Skript sogar – kein Witz – per Diskette zufüttern. Da das Skript jedoch zur Laufzeit in dem Verzeichnis, in dem es liegt, temporäre Dateien in einer Größe erzeugt, die das Platzangebot einer Diskette sprengen können, müssen Sie es vor dem Start auf die Festplatte/ SSD kopieren. Die eigentliche Herausforderung dürfte hier aber zugegebenermaßen nicht im Einsatz per Diskette bestehen, sondern vorher überhaupt erst mal einen PC zu finden, an dem sich die Diskette mit unserem Skript füllen lässt. Wobei: Ein USB-Diskettenlaufwerk ist immer noch billiger als eine Windows-Lizenz.

Es ist übrigens egal, ob Sie den KeyFinder unter 32- oder 64-Bit-Windows laufen lassen, er funktioniert unter beiden. Falls Sie vom Notfall- oder Setup-Stick booten, spielt die Architektur ebenfalls keine Rolle. Der KeyFinder liest auch dann die Schlüssel aus einem 64-Bit-Windows, wenn er unter einem 32-Bit-PE gestartet wurde (umgekehrt ebenso). Den gefundenen Schlüsseln sieht man die Bittigkeit nicht an, Sie können mit ein und demselben Key also auch die jeweils andere Architektur der entsprechenden Windows-Edition aktivieren.

Da sind sie

Ist der KeyFinder durchgelaufen, sehen Sie in der ctkey.txt alle Schlüssel, die er finden konnte. Zusätzlich nennt er den Fundort (im BIOS oder in der Windows-Registry) sowie meist weitere Informationen, etwa über die Version und die Edition, zu der ein Schlüssel gehört. Schließlich liefert das Skript Einschätzungen, ob Aktivierungsversuche lohnen.

Sie wüssten gern mehr über all die Informationen, die der c’t-KeyFinder ausgibt? Im Beitrag „Die Ausgabe des c’t-KeyFinder“ finden Sie die Details dazu. Den Abschluss bildet eine umfangreiche FAQ.

Sämtliche Infos, die der KeyFinder ausgibt, stammen übrigens aus Windows selbst. Und zwar nicht aus irgendwelchen Installationen aus dem c’t-Labor. Sondern aus denen (und nur aus denen), die auf jenem PC bereits vorhanden sind, auf dem der KeyFinder gerade läuft. Von Haus aus weiß er also genau nichts über Versionen, Editionen und Aktivierbarkeiten, und er kennt keinen einzigen Schlüssel. Selbst die Einschätzung über die Aktivierbarkeit leitet er aus zur Laufzeit ausgelesenen Infos ab; wie er das macht, erläutern der Beitrag „Die Ausgabe des c’t-KeyFinder“.

Der KeyFinder agiert letztlich also gemäß dem Motto „Wissen heißt wissen, wo es geschrieben steht“. Wobei es hier zugegebenermaßen um Wissen geht, das sich unter normalen Umständen niemand aneignen müsste. Sie benötigen es nur, weil Microsoft seine Probleme mit dem nicht lizenzierten Einsatz von Windows auf denkbar kundenunfreundliche Art löst – nämlich indem es sie einfach auf Sie abwälzt. Unser c’t-KeyFinder bewahrt Sie zumindest vor den gröbsten Nervereien, die Microsoft hier mit seiner Lizenz- und Aktivierungspolitik verursacht. (axv) image

Literatur

[1] Axel Vahldiek, Lizenz zum Testen, Windows 10 zum Ausprobieren, c’t 3/2021, S. 146

[2] Hajo Schulz, Axel Vahldiek, FAQ: Die Windows-Registry, c’t 4/2017, S. 150, auch kostenlos online lesbar unter ct.de/-3609077

MCT

ct.de/w88r

c’t-KeyFinder

ct.de/keyfinder