Wikipedia · einfach zusammengefasst · Stand
Lizenzschlüssel
Die ersten drei Zeichen dürfen keine der folgenden Gruppen sein: 333, 444, 555, 666, 777, 888 oder 999. · Die nächsten sieben Zeichen müssen Zahlen von 0-8 sein.
Inhalt6 Abschnitte
Grundidee und Nutzung
Ein Lizenzschlüssel, auch Schlüsselcode, Produktschlüssel, CD-Key oder Produkt-Key, ist ein Buchstaben- oder Zahlencode. Er wird bei der Installation oder beim ersten Start proprietärer Software eingegeben, um den gesamten oder einen Teil des Funktionsumfangs freizuschalten; oft ist eine spätere Eingabe möglich.
Mit dem Schlüssel erteilt der Hersteller eine Nutzungslizenz. Er legt damit fest, wann, wie und in welchem Umfang die Software genutzt werden darf. Der Schlüssel soll besonders die Installation oder Nutzung auf mehreren Geräten durch verschiedene Benutzer einschränken. Käufer erwerben dadurch kein Eigentum an der Software.
Meist besteht ein Schlüssel aus Buchstaben und Zahlen in mehreren Blöcken. Programmdateien lassen sich zwar leicht kopieren, ohne passenden Schlüssel ist die Software aber nicht oder nur eingeschränkt nutzbar. Früher lag der CD-Key einem Datenträger wie CD-ROM oder DVD-ROM bei. Auch Shareware und vorinstallierte Betriebssysteme verwenden teils Schlüssel. Die manuelle Eingabe wurde zunehmend durch Online-Produktaktivierung ersetzt.
Der Hersteller kennt das Verfahren zur Erzeugung gültiger Schlüssel, kann sehr viele Schlüssel ausstellen und ausgegebene Schlüssel verwalten. So können Softwarekopien autorisiert und zugleich legale Sicherheitskopien ermöglicht werden, deren Nutzung weiterhin den Schlüssel voraussetzt.
Seriennummern und Prüfung
Seriennummer und Lizenzschlüssel werden oft gleichgesetzt. Technisch kann ein Lizenzschlüssel einer Softwarekopie wie eine Seriennummer zugeordnet sein. Es gibt jedoch Lizenzen, bei denen derselbe Schlüssel mehrere Installationen erlaubt. Manche Hersteller verwenden außerdem Seriennummern verbauter Hardware.
Eine tatsächliche Software-Seriennummer wird häufig erst bei der Installation erzeugt und kann offen angezeigt werden. Der Lizenzschlüssel wird dagegen meist geheim gehalten und nur etwa auf Verpackung, Beilage oder in einer Bestätigungs-E-Mail geliefert. Aus einer Seriennummer kann der Lizenzschlüssel nicht abgeleitet werden.
Erzeugung und Gültigkeitsprüfung beruhen auf einem geheim gehaltenen Algorithmus des Herstellers, der im Programmcode enthalten ist. Derselbe Algorithmus dient dem Erzeugen und Prüfen. Zwar ist das Extrahieren aus dem Programmcode aufwändig, doch die notwendige Prüfsoftware ist ein Angriffspunkt. Weil es wesentlich weniger gültige als theoretisch durch Permutation mögliche Schlüssel gibt, ist das zufällige Finden eines gültigen Schlüssels deutlich unwahrscheinlicher.
Sicherheit und Lizenzverwaltung
Damit keine unbefugten gültigen Schlüssel erzeugt oder gefunden werden, müssen der Algorithmus oder zumindest Teile davon geheim bleiben, etwa ein kryptografischer Schlüssel. Gleichzeitig muss die ausgelieferte Software Schlüssel automatisch prüfen können.
Verwendet werden unter anderem asymmetrische Verschlüsselungsverfahren: Der private Schlüssel ist dann nicht Teil der Software, während der Algorithmus ohne diesen Schlüssel offengelegt werden kann. Weitere Verfahren beruhen auf Primzahlen und Prüfziffern, symmetrischen Verfahren wie parallelem Hashing, diskreter Mathematik auf Zufallswerte oder Kombinationen daraus. Die kryptografischen Verfahren wurden zunehmend verstärkt.
Ohne zusätzliche Herstellerprüfung können auch formal gültige Schlüssel leicht angegriffen werden. Diese Prüfung erfolgt heute meist online; bei der Einführung der Produktaktivierung war auch eine Telefon-Hotline möglich. Da die Software die Prüfung ermöglichen muss, können Cracker den Erzeugungsalgorithmus untersuchen und Key-Generatoren (Keygen) erstellen. Solche Schlüssel sind nicht autorisiert; Keygens bilden meist einen geheim gehaltenen, urheberrechtlich geschützten Algorithmus nach und sind deshalb illegal.
Übliche Schutzverfahren sind die internetgestützte Ausstellung und Prüfung von Schlüsseln, Netzwerk-Lizenzverwaltung und Hardware-Dongles. Windows kann einen Schlüssel an Hardwaremerkmale binden; bei UEFI-PCs kann ein vorinstallierter Schlüssel wie ein Software-Dongle wirken. Andere Hersteller verknüpfen Schlüssel mit Kundenkonten. Für hochwertige Pakete können Lizenzserver oder Hardware-Dongles die Nutzung in geschlossenen Unternehmensnetzen verwalten; solche Lösungen werden oder wurden von Autodesk, Microsoft, SAP und Adobe angeboten.
Arten von Lizenzschlüsseln
Hardwaregebundene Schlüssel enthalten oft die Seriennummer mitgelieferter Hardware. Die Software schaltet Funktionen nur frei, wenn diese Nummer zur Hardware passt. Dies wird besonders bei Appliance-Lösungen eingesetzt; Cisco nennt einen solchen Schlüssel Product Authorization Key.
Funktionsgebundene Schlüssel schalten bei derselben Software unterschiedliche Funktionen frei. Damit können verschiedene Preisstufen mit derselben Programmkopie verkauft werden. Bei Shareware oder Windows ist die Software ohne Schlüssel oft nur mit geringerem Funktionsumfang oder zeitlich befristet nutzbar. Shareware kann dadurch vor dem Kauf getestet werden; Splash Screens, Countdowns oder Hinweise beim Aufruf von Vollversionsfunktionen werben für die Vollversion.
Zeitgebundene Schlüssel werden nach einer bestimmten Zeit ungültig und müssen ersetzt werden, wofür erneut eine Gebühr anfallen kann. Permanente Schlüssel bleiben dagegen gültig.
Beispiele: Windows 95 und Windows XP
Windows-95-Schlüssel für Endverbraucher hatten die Form NNN-NNNNNNN und bestanden nur aus Zahlen. Die ersten drei Zeichen durften nicht 333, 444, 555, 666, 777, 888 oder 999 sein. Die nächsten sieben Zeichen mussten Ziffern von 0 bis 8 sein; ihre Quersumme musste ohne Rest durch 7 teilbar sein. Das vierte Zeichen wurde nicht geprüft. Nur wenn alle vier Prüfungen bestanden waren, war der Schlüssel gültig.
Vorinstallierte OEM-Versionen von Windows 95 verwendeten NNNNN-OEM-NNNNNNN-NNNNN. Die ersten drei Zeichen lagen zwischen 0 und 366 und wurden nötigenfalls mit 0 aufgefüllt, die nächsten zwei zwischen 04 und 93; danach folgte OEM. Die Quersumme der nächsten sieben Zeichen musste durch 7 teilbar sein, die übrigen Zeichen wurden nicht geprüft.
Windows XP verwendet für die Aktivierung Installations-ID, Produkt-ID und Produktschlüssel. Die 50 Ziffern lange Installations-ID hat fünf Gruppen von je sechs Ziffern mit zwei Ziffern am Ende und die Form XXXXXP-XXXXXP-XXXXXP-XXXXXP-XXXXXP-XXXXXP-XXXXXP-XP. Sie wird bei der Microsoft Out Of Box Experience neu erzeugt. Jede Gruppe enthält eine Prüfziffer: Sie ergibt sich aus der Summe der anderen fünf Ziffern, zu der Ziffern an geraden Positionen addiert werden; das Ergebnis wird durch 7 dividiert und der Rest verwendet.
Ohne Prüfziffern ist die Installations-ID eine 41 Ziffern lange, dezimal codierte, 136 Bit lange multipräzise Ganzzahl im Little-Endian-Byte-Array. Die unteren 16 Byte sind verschlüsselt, das höchste Byte bleibt im Klartext. Verwendet wird ein proprietäres Vier-Runden-Feistelchiffre mit SHA-1 als Rundungsfunktion. Die ID verschlüsselt Hardwareinformationen und die aus dem Produktschlüssel erzeugte Produkt-ID, sodass der Hersteller eine Nutzung auf einem anderen System erkennen kann.
Die Produkt-ID hat das Format AAAAA-BBB-CCCCCCC-DDEEE. In Windows XP RC1 ist AAAAA immer 55034. BBB enthält die höchsten drei Ziffern des Roh-Produktschlüssels, CCCCCCC die niedrigsten sechs Ziffern und eine Prüfziffer. DD ist der Index des öffentlichen Schlüssels zur Verifizierung, EEE eine Zufallszahl. Der Produktschlüssel hat seit Windows 98 die Form XXXXX-XXXXX-XXXXX-XXXXX-XXXXX und nutzt 24 Zeichen: B C D F G H J K M P Q R T V W X Y 2 3 4 6 7 8 9. Seine 25 Zeichen sind Base-24-Encodierung einer etwa 115 Bit großen Ganzzahl. Von 15 Bytes enthalten vier den Rohschlüssel, elf eine digitale Signatur. Für CCCCCCC muss die Summe aller Ziffern einschließlich Prüfziffer durch 7 teilbar sein. Installationen ohne gültigen Produktschlüssel erhalten keine Produkt-ID.
Entwicklung der Aktivierung
Seit dem Markt kommerziell vermarkteter Software in den 1980er Jahren bestand das Problem unkontrolliert verbreiteter Kopien. Anfang der 1990er Jahre ermöglichten höhere Rechenleistung und ausreichender Speicherplatz Schutzfunktionen gegen solche Kopien. Microsoft schützte Windows 95 erstmals mit Lizenzschlüsseln, nachdem Windows 3.1 noch unzureichend geschützt gewesen war. Weitere Hersteller folgten; Microsoft nutzte Schlüssel später auch für Microsoft Office, Microsoft Visual Studio und Spiele wie Age of Empires.
Mit Windows XP führte Microsoft erstmals Produktaktivierung ein, bei der der Schlüssel beim Hersteller autorisiert werden musste. Für Unternehmensverteilungen gab es jedoch Corporate License Keys, die die Aktivierung umgingen. Ein inzwischen ungültiger, mit FCKGW beginnender Schlüssel wurde 2001, 35 Tage vor dem offiziellen Release, zusammen mit der finalen Windows-XP-Version in einem Warez-Forum verbreitet. Die einmalige Aktivierung wurde durch Windows Genuine Advantage ergänzt, das bei Updates regelmäßig erneut prüfte; dieser Schlüssel wurde 2004 zurückgezogen.
Produktaktivierung und cloudbasierte, teils abonnementbasierte Lizenzierung drängten Lizenzschlüssel später in den Hintergrund. Windows-Installationen besitzen weiterhin einen Schlüssel, eine manuelle Eingabe ist jedoch meist nicht mehr nötig. Auch andere Hersteller gingen zu cloudbasierter Lizenzierung über.