Cracking ist die Tätigkeit, ein Computerprogramm zu analysieren (meist durch Disassemblieren), um den Kopierschutz zu entfernen. Ein Crack ist ursprünglich die Kopie eines Computerprogramms, bei der ein herstellerseitig angebrachter Kopierschutz entfernt wurde; heute ein Computerprogramm, das den Kopierschutz eines spezifischen anderen Computerprogramms entfernen kann. Cracking fand erstmals in den 1980er-Jahren mit der weiten Verbreitung von Kopierschutzmaßnahmen bei kommerziellen Computerspielen statt, findet sich jedoch auch bei jeder anderen Kategorie von Computerprogrammen.
Bereits Ende 1970er-, Anfang 1980er-Jahre finden sich erste Kopierschutzmechanismen bei kommerzieller Software, insbesondere Computerspielen. Seitdem dies der Fall war, gab es Personen, die versuchten, den Kopierschutz auszuhebeln, um die Software für befreundete Computerbenutzer kopieren zu können. Leute, die dies taten, nannte man seit Anfang der 1980er Jahre „Software-Cracker” oder kurz „Cracker“. Einzelne Cracker waren dabei so erfolgreich, dass sie das Cracken zu einer Art Passion machten, meistens unter Verwendung eines anonymisierenden Crackernamen (Nickname, auch Pseudo oder Handle genannt). In den frühen 1980er-Jahren entstanden hieraus Crackergruppen und schließlich die Warez-Szene.
Solche Crackergruppen gibt es bis heute. Beispiele sind CORE, Razor 1911, DEViANCE, Fairlight, TSRh, FFF und Eagle Soft Inc..
Früher wurden die gecrackten Versionen meist mit einem Vorspann, einem so genannten Intro bzw. Introductionscreen (Cracktro) einer Crackergruppe versehen. Diese benutzten teils virtuose grafische und akustische Effekte, die nicht selten die Effekte des geknackten (Spiel-)Programms deutlich übertrafen (u. a. zur Zeit des C-64), und verschafften sich so eine gewisse Berühmtheit (siehe auch Demoszene).
Neben dieser klassischen Bedeutung eines Cracks gibt es heute noch weitere Arten:
Darüber hinaus wurden viele Seriennummern nicht durch Reverse Engineering erlangt sondern durch Betrug am Softwarehersteller oder durch unerlaubte Weitergabe seitens eines lizenzierten Nutzers - diese erkennt man daran, dass statt Cracker-Pseudonymen als Lizenznehmer Realnamen oder Firmennamen enthalten sind. Solche Seriennummern werden nicht zu den Cracks gezählt, da bei deren Erlangung kein Reverse Engineering notwendig ist.
Cracks werden durch Cracking-Groups erstellt. Hierbei unterscheidet man zwischen 'Release' und 'Web' Groups. Releasegroups arbeiten eher im Verborgenen und nutzen FTP-Server zum Verteilen ihrer Releases. Ihnen geht es darum, die erste Group zu sein, die zu einem Programm einen Crack veröffentlicht. Hierfür wird ein ausgefeiltes Dupecheck-System verwendet, so dass Mitglieder der Groups jederzeit prüfen können, zu welchem Programm schon Cracks vorhanden sind.
Web-Groups veröffentlichen ihre Cracks auf normalen Webseiten und machen sie so einem breiten Publikum zugänglich.
Oft werden Cracks auch euphemistisch als Patch bezeichnet, was insofern zweideutig ist, da Patches eigentlich einen Fehler in der Software beheben und oft auch Hersteller Patches zu ihrer Software anbieten.
Um einen Crack herzustellen, verwenden Cracker vor allem Disassembler, Debugger und Hex-Editoren. Dabei wird nichts Neues programmiert, sondern nur nachvollzogen, wie der ursprüngliche Code funktioniert, um das Programm gezielt zu verändern. Fortgeschrittene Kenntnisse in der jeweiligen Assemblersprache sind dabei unumgänglich.
Die meisten kommerziellen Applikationen untersagen in ihren Lizenzbedingungen jegliche Modifikationen der Software oder sogar schon den Vorgang des Disassemblierens. In vielen Ländern existieren Gesetze, die definieren, inwieweit eine Modifikation eines Binärprogramms erlaubt ist. In Deutschland ist das Modifizieren eines Binärprogramms somit grundsätzlich erlaubt, solange die ursprüngliche Funktionalität des Programms nicht beeinträchtigt wird. Zusätzliche Funktionen dürfen dabei alleine zum Zwecke der Herstellung von Kompatibilität zu eigenen Programmen implementiert werden. Ein Patch darf dabei nur in Form eines Programms verbreitet werden, das die Originaldatei nach Vorgaben verändert, jedoch nicht in Form einer modifizierten Kopie der Originaldatei. Das Recht, ein Programm zum Zwecke der Herstellung von Kompatibilität verändern zu dürfen ist auf internationaler Ebene nicht selbstverständlich. Das Untersagen jeglicher Modifikationen in den Lizenzbedingungen hat jedoch in den seltensten Fällen rechtswirksame Konsequenzen, da dies u. a. auch den Vorgang des Entfernens eines Computervirus durch Antivirenprogramme in Frage stellt.
Da die rechtliche Lage häufig unklar ist, was das Entfernen von einem Kopierschutz betrifft, verwenden manche kommerzielle Applikationen einen verschlüsselten oder komprimierten Binärcode, wodurch die Daten gemäß Vorgaben in ausführbaren Maschinencode konvertiert werden müssen, bevor sie vom Computer interpretierbar sind. Da die Programme jedoch dem Rechner „verraten“ müssen, wie die integrierten Daten zu konvertieren sind, ist es auch für Cracker nachvollziehbar, wie sich der Code in einen interpretierbaren Zustand konvertieren lässt. Die Software-Industrie implementiert solche Verfahren, um es einerseits den Crackern zu erschweren, das Programm zu interpretieren. Jedoch auch, um die Möglichkeit zu unterbinden, ein Patch-Programm zur Modifikation des Original-Programms zu veröffentlichen, da es so nicht mehr möglich ist, das Programm durch das Verändern einzelner Bytes zu modifizieren und als einzige Möglichkeit die Verbreitung einer vollständigen modifizierten Originaldatei verbleibt. Dies ist urheberrechtlich meist eindeutig untersagt.
Dieser Artikel basiert auf dem Artikel Crack_(Software) aus der freien Enzyklopädie Wikipedia und ist unter der Lizenz Creative Commons Attribution/Share Alike verfügbar. Zusätzliche Bedingungen können anwendbar sein. In der Wikipedia ist eine Liste der Autoren verfügbar. |