<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://demowiki.knowlus.com/index.php?action=history&amp;feed=atom&amp;title=Reverse_Engineering</id>
	<title>Reverse Engineering - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://demowiki.knowlus.com/index.php?action=history&amp;feed=atom&amp;title=Reverse_Engineering"/>
	<link rel="alternate" type="text/html" href="https://demowiki.knowlus.com/index.php?title=Reverse_Engineering&amp;action=history"/>
	<updated>2026-05-15T01:16:30Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Demo Wiki</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://demowiki.knowlus.com/index.php?title=Reverse_Engineering&amp;diff=12798&amp;oldid=prev</id>
		<title>imported&gt;Herzmut: /* Software */ Erklärung</title>
		<link rel="alternate" type="text/html" href="https://demowiki.knowlus.com/index.php?title=Reverse_Engineering&amp;diff=12798&amp;oldid=prev"/>
		<updated>2025-07-05T07:01:53Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Software: &lt;/span&gt; Erklärung&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Mehrere Bilder&lt;br /&gt;
| align       = right&lt;br /&gt;
| Richtung    = vertical&lt;br /&gt;
| Breite      = 200&lt;br /&gt;
| center      = 0&lt;br /&gt;
| Bild1       = Tupolev Tu-4 (9576250407).jpg&lt;br /&gt;
| Untertitel1 = Die [[Tupolew Tu-4|Tu-4]] entstand aus einem Reverse Engineering der …&lt;br /&gt;
| Bild2       = Bockscar and a nuclear weapon painted to resemble the Fat Man bomb.jpg&lt;br /&gt;
| Untertitel2 = … [[Boeing B-29|B-29]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Reverse Engineering&amp;#039;&amp;#039;&amp;#039; (aus {{enS|reverse engineering}}; für &amp;#039;&amp;#039;umgekehrt entwickeln&amp;#039;&amp;#039;, &amp;#039;&amp;#039;[[Rekonstruktion|rekonstruieren]]&amp;#039;&amp;#039;; Kürzel: &amp;#039;&amp;#039;RE&amp;#039;&amp;#039;; auch &amp;#039;&amp;#039;&amp;#039;Nachkonstruktion&amp;#039;&amp;#039;&amp;#039;) bezeichnet den Vorgang, aus einem bestehenden fertigen [[System]] oder einem meistens [[Industrie|industriell]] gefertigten [[Produkt (Wirtschaft)|Produkt]] durch [[Analyse|Untersuchung]] der Strukturen, Zustände und Verhaltensweisen die [[Konstruktionsprozess|Konstruktionselemente]] zu extrahieren. Aus dem fertigen [[Gegenstand|Objekt]] wird somit wieder ein Plan erstellt.&lt;br /&gt;
&lt;br /&gt;
Im Gegensatz zu einer funktionellen Nachempfindung, die ebenso auf [[Analyse]]n nach dem [[Black Box (Systemtheorie)|Black-Box]]-Prinzip aufbauen kann, wird durch Reverse Engineering angestrebt, das vorliegende Objekt weitgehend exakt abzubilden.&lt;br /&gt;
&lt;br /&gt;
Oft wird versucht, zur [[Verifikation]] der gewonnenen Einsichten eine 1:1-Kopie des Objekts anzufertigen, auf deren Basis es grundsätzlich möglich ist, Weiterentwicklung zu betreiben.&lt;br /&gt;
&lt;br /&gt;
== Einsatzbereiche ==&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
Um [[Hardware]] zwecks Nachbau zu untersuchen, wurden z.&amp;amp;nbsp;B. in der [[Deutsche Demokratische Republik|DDR]] Methoden entwickelt, bei denen ein [[Die (Halbleitertechnik)|Chip-Die]] lagenweise abgetragen wurde (durch Schleifen oder selektives Ätzen) und dann die Ebenen per Mikroskop untersucht wurden, um die Funktionalität und ihre Hardwarebasis herauszufinden. Auf diese Weise entstand ein [[Zilog Z80|Z80]]-Nachbau als [[KME U880|U880]]. Diese Berichte sind glaubhaft, da einige Firmen noch heute solche Dienste anbieten und erfolgreich erbringen.&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
Speziell bezogen auf [[Software]] wird darunter meistens einer der folgenden Vorgänge verstanden:&lt;br /&gt;
&lt;br /&gt;
* Die Rückgewinnung des [[Quellcode]]s oder einer vergleichbaren Beschreibung aus [[Maschinensprache|Maschinencode]], z.&amp;amp;nbsp;B. von einem ausführbaren [[Computerprogramm|Programm]] oder einer [[Programmbibliothek]], etwa mit einem [[Disassembler]] (kann Teil eines [[Debugger]]s sein) oder einem [[Decompiler]].&lt;br /&gt;
* Die Untersuchung des Programmablaufs und seiner Kommunikation mit der Systemumgebung in einem Debugger.&lt;br /&gt;
* Die Erschließung der Regeln eines [[Netzwerkprotokoll|Kommunikationsprotokolls]] aus der Beobachtung der Kommunikation, z.&amp;amp;nbsp;B. mit einem [[Sniffer]].&lt;br /&gt;
* Die nachträgliche Erstellung eines Modells, ausgehend von bereits vorliegendem Quellcode, in der [[Objektorientierte Programmierung|objektorientierten Programmierung]].&lt;br /&gt;
&lt;br /&gt;
Im ersten Fall werden oft Decompiler eingesetzt, die den Quellcode eines Programms weitestgehend automatisch aus seinem Binärcode zurückgewinnen. Ist dieses nicht durchgehend möglich, so kann der aus dem Binärcode des Programms direkt mit einem [[Disassembler]] ermittelbare [[Maschinensprache|Maschinencode]] auch manuell analysiert werden, was allerdings eine merkliche Erschwernis bedeutet. Es kann i.&amp;amp;nbsp;d.&amp;amp;nbsp;R. nicht der gesamte Programmquellcode ermittelt werden, da z.&amp;amp;nbsp;B. [[Kommentar (Programmierung)|Kommentare]] niemals und lokale Objektnamen nur selten im verfügbaren [[Binärcode]] enthalten sind. Gelegentlich finden Rückentwickler aber auch die dafür erforderlichen [[Debugsymbol|Debug-Symbole]] im fertigen Produkt wieder, so zum Beispiel im Spiel [[Super Mario 64]]. Oft ist das Ergebnis trotz allem für den jeweiligen Zweck ausreichend, z.&amp;amp;nbsp;B. zur Verhaltensanalyse eines Softwaresystems oder als Hilfe beim Beheben eines Fehlers. Manche Debugger erlauben die Vergabe eigener Namen für Symbole und Objekte, wobei dies nur dem Benutzerkomfort dient und keinen Einfluss auf das Programm hat.&lt;br /&gt;
&lt;br /&gt;
Reverse Engineering ist oft auch notwendig, wenn etwa die Entwickler eines [[Betriebssystem]]s, welches [[freie Software]] ist, für ein bestimmtes [[Peripheriegerät|Gerät]] einen [[Gerätetreiber]] schreiben wollen. Die Konstruktion des Gerätes ist ein Herstellergeheimnis. Zu den gängigen Herangehensweisen gehören die Öffnung und Untersuchung des Gerätes und das Abhören seiner Kommunikation bei seiner Bedienung. Das Internet bietet außerdem Quellen und Plattform für den Austausch mit anderen Entwicklern oder für die Suche nach technischen Informationen, etwa weil sie von Fachhändlern veröffentlicht worden sind oder weil beteiligte Unternehmen diese Informationen wissentlich oder unwissentlich im Internet veröffentlicht haben. Disassemblieren oder Dekompilieren eines vorhandenen Gerätetreibers, etwa von einem nicht-freien Betriebssystem, ist in der Regel nicht notwendig.&lt;br /&gt;
&lt;br /&gt;
Ein weiteres Anwendungsfeld sind Quelltext-Rekonstruktionen von [[Abandonware]] gewordenen [[Computerspiel]]klassiker, wie z.&amp;amp;nbsp;B. [[Another World (Computerspiel)|Another World]],&amp;lt;ref&amp;gt;{{Internetquelle |autor=Blake Patterson |url=https://toucharcade.com/2011/12/26/a-fascinating-look-under-the-hood-of-another-world/ |titel=A Fascinating Look Under the Hood of „Another World“ |hrsg=toucharcade.com |datum=2011-12-26 |abruf=2013-10-14}}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{Internetquelle |autor=Fabien Sanglard |url=https://fabiensanglard.net/anotherWorld_code_review/index.php |titel=„Another World“ Code Review |hrsg=fabiensanglard.net |datum=2011-12-23 |sprache=en |abruf=2013-01-14 |zitat=&amp;#039;&amp;#039;I spent two weeks reading and reverse engineering further the source code of Another World („Out Of This World“ in North America). I based my work on Gregory Montoir’s „binary to C++“ initial reverse engineering from the DOS executable. I was amazed to discover an elegant system based on a virtual machine interpreting bytecode in realtime and generating fullscreen vectorial cinematic in order to produce one of the best game of all time.&amp;#039;&amp;#039;}}&amp;lt;/ref&amp;gt; um u.&amp;amp;nbsp;a. Portierungen auf aktuelle Plattformen vornehmen zu können.&lt;br /&gt;
&lt;br /&gt;
Inzwischen sind auch Hersteller auf das Reverse Engineering ihrer eigenen Produkte angewiesen, wenn zum Beispiel ein Produkt so lange am Markt ist, dass Originale nicht mehr erhalten sind, aber Gewährleistungsansprüche erfüllt werden müssen. So hat der Softwarehersteller [[Microsoft]] eine Sicherheitslücke in dem zu [[Microsoft Office|Office]] gehörenden Formeleditor entfernt, indem die binäre Programmdatei [[Patch (Software)|gepatcht]] wurde.&amp;lt;ref&amp;gt;{{Internetquelle |autor=Mitja Kolsek |url=https://blog.0patch.com/2017/11/did-microsoft-just-manually-patch-their.html |titel=Did Microsoft Just Manually Patch Their Equation Editor Executable? Why Yes, Yes They Did. (CVE-2017-11882) |sprache=en |abruf=2025-07-04}}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{FNZ|Anm.|Das normale Verfahren wäre, das Programm aus bearbeitetem Quellcode noch einmal zu erstellen. Ein Patch der binären Programmdatei wird nur vorgenommen, wenn der Quellcode nicht zur Verfügung steht. Der Reverse Engineer hatte hierbei zu beachten, dass wegen der digitalen Signatur die Größe des Programms nicht geändert werden durfte. Um die Integrität der Datei nicht zu stören, musste er außerdem die Adressen der Funktionen beibehalten. Trotz der neu hinzugefügten Sicherheitsfunktionen war das Programm nach dem Patch jedoch 14 Bytes zu kurz, sodass der Reverse Engineer den Leerraum mit neutralen Bytes auffüllen musste.}}&amp;lt;/ref&amp;gt; Die übliche Vorgehensweise für Patches ist dagegen, eine neue Ausgabe des Programms aus vorhandenem Quellcode zu generieren.&lt;br /&gt;
&lt;br /&gt;
Im Fall des Modellbaus nach der Entwicklung spricht man jedoch in Abgrenzung zum Reverse Engineering insbesondere während des Softwareentwicklungsprozesses von &amp;#039;&amp;#039;Code-Rückführung&amp;#039;&amp;#039;, wenn aus einer Entwurfsspezifikation gewonnener Quellcode manuell modifiziert und der modifizierte Quellcode wieder in das Modell der Entwurfsspezifikation übernommen wird, um dort weiterverarbeitet werden zu können (vor allem bei Single Source [[Computer-aided software engineering|CASE]]-Werkzeugen).&lt;br /&gt;
Dies ist auch möglich, wenn bei bereits fortgeschrittenen und umfangreichen Software-Projekten gar keine Entwurfsspezifikation beispielsweise in [[Unified Modeling Language|UML]] existiert und nachträglich erzeugt werden soll.&amp;lt;ref&amp;gt;P. Lempp, R. J. Torick: &amp;#039;&amp;#039;Software Reverse Engineering: An Approach to Recapturing Reliable Software. 4th Annual Joint Conference On Software Quality and Productivity, Crystal City, VA; 1.–3. März 1988.&amp;#039;&amp;#039;&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Maschinenbau ===&lt;br /&gt;
Im Maschinenbau wird das Reverse-Engineering für verschiedene Aufgaben eingesetzt. Das ist eine direkte Folge der Verfügbarkeit von preisgünstigen 3D-Scannern mit hoher Auflösung – gepaart mit Software, die das Reverse Engineering immer enger mit den CAD-Systemen verzahnt. Gleichzeitig sind heute Computer-Systeme verfügbar, die über ausreichend Rechenleistung und Speicher verfügen, um die bei der Digitalisierung anfallenden Datenmengen zu verarbeiten.&lt;br /&gt;
&lt;br /&gt;
==== Prozesse des Reverse-Engineering – Zielfindung ====&lt;br /&gt;
Beim Reverse-Engineering kann man verschiedene Prozesse unterscheiden.&lt;br /&gt;
&lt;br /&gt;
Allen gemeinsam ist, dass das Ziel den Weg bestimmt und in technische und fertigungstechnische Ziele unterteilt wird.&lt;br /&gt;
&lt;br /&gt;
===== Technische Anforderungen =====&lt;br /&gt;
Das Bauteil oder die Baugruppe steht dem Prozess in der Regel als physikalisches Objekt zur Verfügung. Bei historischen Systemen nutzt man alte Skizzen und Fotos. Wichtig ist zu verstehen, wie das Bauteil funktioniert und welche technischen Anforderungen gestellt werden. Zu den technischen Anforderungen gehören, welche Kräfte über das [[Bauteil (Technik)|Bauteil]] übertragen werden, unter welchen Temperaturen das Bauteil eingesetzt wird, welchem [[Abrieb]] es unterliegt etc. Die Summe dieser Anforderungen ergibt das Ziel, an dem sich das Ergebnis des Reverse-Engineerings messen muss.&lt;br /&gt;
&lt;br /&gt;
===== Fertigungstechnische Anforderungen =====&lt;br /&gt;
Den zweiten Aspekt stellen die fertigungstechnischen Anforderungen dar. Es ist nicht immer wirtschaftlich, das neue Bauteil mit demselben Fertigungsprozess herzustellen wie das Original. Häufig lohnt es sich nicht, bei geringen Stückzahlen, eine [[Gussform]] zu erstellen, wenn die technischen Anforderungen es erlauben dieses Bauteil als Fräsbauteil zu fertigen.&lt;br /&gt;
&lt;br /&gt;
Alle weiteren Prozesse folgen diesem ersten Prozess der technischen und fertigungstechnischen Zieldefinition.&lt;br /&gt;
&lt;br /&gt;
==== Scan to Print ====&lt;br /&gt;
[[Datei:Kunststoff-Stopfen.jpg|mini|Einfacher Stopfen für ein Profil]]&lt;br /&gt;
Nach der Zieldefinition, die bestimmt, mit welchem Material das Bauteil gedruckt wird, muss das Bauteil mit einem 3D-Scanner oder einem [[Industrielle Computertomographie|industriellen Computer-Tomographen]] (iCT) vollständig erfasst werden. Nacharbeit am so erstellten 3D-Modell ist in der Regel notwendig, bevor es gedruckt werden kann. Nicht gescannte Bereiche, wie beispielsweise die aufliegende Seite eines Modells oder andere nicht einsehbare Details, müssen gegebenenfalls ergänzt werden. Auch muss Sorge dafür getragen werden, dass das Flächenmodell „wasserdicht“ ist, dass also alle Kanten verknüpft sind, alle Flächenorientierungen homogenisiert sind und sich keine Löcher in der Oberfläche befinden. Abschließend sind noch druckprozessspezifische Anpassungen wie Stützstrukturen zu ergänzen. Ist diese Aufarbeitung abgeschlossen kann das Modell auf einem geeigneten 3D-Drucker reproduziert werden.&lt;br /&gt;
&lt;br /&gt;
Mit diesem Verfahren lassen sich nur einfache Bauteile mit geringen Anforderungen herstellen. Das Verändern der Daten, die man aus dem 3D-Scan erhält, ist sehr zeit- und arbeitsintensiv. Damit ist dieses Verfahren nicht für alle Bauteile ökonomisch. Es bietet sich beispielsweise zur Herstellung nicht mehr verfügbarer Ersatzteile an.&lt;br /&gt;
&lt;br /&gt;
==== Reverse-Engineering für die Reparatur ====&lt;br /&gt;
Bei diesem Prozess geht es darum ein Bauteil mit komplexen technischen Anforderungen herzustellen. Bei Investitionsgütern, wie einem [[Kraftwerk]], einem [[Walzwerk]] oder einem Verdichter, findet man noch heute Systeme im Einsatz, die 30 Jahre und älter sind. Zudem nehmen die Hersteller dieser Sondermaschinen teilweise nicht mehr am Markt teil.&lt;br /&gt;
&lt;br /&gt;
In diesem Fall werden die Bauteile vermessen und oft mit einem 3D-Scanner erfasst. Diese Daten werden dann in einer geeigneten Software in ein parametrisches CAD-Model umgewandelt. Durch die Abnutzung des Bauteils wie Verschleiß und Verzunderung, ist es eine kleine Kunst zu erkennen, wie die Abmaße am Originalteil gewesen sind. Im Speziellen bei den Profilen von [[Turbinenschaufel]]n und den Kanälen von Pumpen und Turbinen findet dieses Verfahren häufig Anwendung, da diese Profile über mehrere Spline-Querschnitte definiert sind.&lt;br /&gt;
&lt;br /&gt;
Mit diesem Prozess lassen sich beliebig komplexe Systeme herstellen, die durch den Einsatz von modernen Materialien, Beschichtungen und Bearbeitungsverfahren besser als das Original sein können.&lt;br /&gt;
&lt;br /&gt;
Dieser Prozess ist perfekt für die Reparatur von teuren Maschinen geeignet, bei denen die Ersatzteile nur wenige Male benötigt werden.&lt;br /&gt;
&lt;br /&gt;
Wenn man diesen Prozess in einem regulierten Bereich wie der Luftfahrt-, der Pharma- oder der Lebensmittel-Industrie einsetzt, müssen die Produkte nach dem Reverse-Engineering von der zuständigen Behörde zugelassen werden.&lt;br /&gt;
&lt;br /&gt;
==== Reverse-Engineering für eine Serienproduktion ====&lt;br /&gt;
[[Datei:Formeinsatz Reverse-Engineering.jpg|mini|RE Serienproduktion]]&lt;br /&gt;
Dieser Prozess durchläuft die Schritte des Reverse-Engineerings für die Reparatur. Nachdem das [[CAD]]-Model mit der spezialisierten Software erstellt wurde, wird dieses als natives Teil in das CAD-System des Herstellers übertragen. Damit wird gewährleistet, dass die Bauteile ohne besondere Kenntnisse in einer spezialisierten Software von einem Konstrukteur weiterentwickelt werden können.&lt;br /&gt;
&lt;br /&gt;
==== Reverse-Forward Engineering ====&lt;br /&gt;
[[Datei:Ventil mit Nocke.jpg|mini|Reverse-Forward Engineering]]&lt;br /&gt;
Diesen Fall findet man immer dann, wenn zwei Bauteile mit hoher Präzision passen müssen. Dabei entsteht das erste Bauteil in einem Prozess wie Gießen oder Schmieden, bei dem man auf die Toleranzen nur einen geringen Einfluss hat. Das zweite Bauteil wird in der Regel auf einer [[CNC-Maschine]] hergestellt und muss dabei die Toleranzen des ersten Bauteils kompensieren. Abgebildet ist ein Schieber-Ventil, bei dem das Gehäuse gegossen wurde und der Schieber wird nun so produziert, dass die Nocken an dem Gussgehäuse den Schieber an die [[Dichtmaterial|Dichtung]] drücken.&lt;br /&gt;
&lt;br /&gt;
==== Reverse-Engineering eines Lehm-Models ====&lt;br /&gt;
Auch heute noch werden Modelle mit schönen Oberflächen von Designern mit einem Lehmmodel erstellt. Diese Modelle werden dann mit einem 3D-Scanner erfasst und in einer geeigneten Software mit C2 Flächen nachmodelliert. Noch heute werden Autokarosserien als Lehmmodel erstellt.&lt;br /&gt;
&lt;br /&gt;
==== Reverse-Engineering für die Systemintegration ====&lt;br /&gt;
Dieser Fall stellt eine Ausnahme zu der anfänglich erwähnten Regel zur Ziele-Definition dar. Die 3D-Daten werden benötigt, um ein neues System in ein bestehendes System zu integrieren. Dabei werden die Daten aus dem 3D-Scan genutzt, um den ist Zustand zu dokumentieren. Mit diesen Daten wird dann ein neues System eingepasst. In der [[Luftfahrt]]-Industrie wird häufig die Kabine mit einem 3D-Scanner erfasst, um eine neue Ausstattungsvariante zu planen.&lt;br /&gt;
&lt;br /&gt;
==== Reverse-Engineering zur Einführung modellbasierter Entwicklung ====&lt;br /&gt;
Reverse-Engineering kann zum Wechsel von dokumentenbasierter [[Produktentwicklungsprozess|Produktentwicklung]] zur Einführung von [[Systems Engineering|Model-based Systems Engineering]] (MBSE) beitragen, indem aus dem Produkt und der herkömmlichen [[Dokumentation]] ein Systemmodell abstrahiert und zusammengeführt wird. Damit wird aus dem bestehenden Wissensstand ein Modell erzeugt, dass für Weiterentwicklungen und Nachfolger des Produktes zur Verfügung steht.&amp;lt;ref&amp;gt;{{Literatur |Titel=Application of MBSE to reverse-engineer OPS-SAT and improve OPS-SAT2. Executive Summary Report |TitelErg=MBSE-OPSSAT-OHB-ESR |Datum=2022-02-04 |Online=https://nebula.esa.int/sites/default/files/neb_study/2599/C4000134685ExS.pdf |Format=PDF}}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{Internetquelle |autor=Michael Jastram |url=https://www.se-trends.de/ops-sat-reverse-engineering-mit-mbse/ |titel=OPS-SAT: Reverse Engineering mit MBSE bei ESA |werk=Systems Engineering Trends |datum=2023-06-29 |sprache=de-DE |abruf=2023-06-29}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Weitere Anwendungen ====&lt;br /&gt;
Es gibt noch eine Reihe von weiteren Anwendungen, bei denen das Reverse-Engineering zum Einsatz kommt oder kommen kann:&lt;br /&gt;
&lt;br /&gt;
* Offline-Programmierung von Roboterbahnen für das Beschichten&lt;br /&gt;
* Erstellen von Wachskernen für den Gussprozess in der Schmuckindustrie&lt;br /&gt;
* Skalieren von Kunst Plastiken, die mittels Sand-Kern gedruckter Form gegossen werden sollen&lt;br /&gt;
* Anpassung von [[Orthese]]n und Prothesen&lt;br /&gt;
* Anpassung von [[Implantat]]en, die mittels [[Tomografie|Tomographie]] und 3D-Druck erstellt wurden&lt;br /&gt;
&lt;br /&gt;
Diese Liste kann beliebig fortgeführt werden. Dabei orientieren sich die Prozesse im Kern an den oben beschriebenen Prozessen.&lt;br /&gt;
&lt;br /&gt;
==== Qualitätssicherung des Reverse-Engineerings Prozess ====&lt;br /&gt;
Für ein hochwertiges Reverse-Engineering ist eine Qualitätssicherung sinnvoll. Diese sollte zu drei Zeitpunkten im Prozess erfolgen.&lt;br /&gt;
&lt;br /&gt;
# Sind wie bei [[Turbinenschaufel]]n eine Vielzahl von vermeintlich identischen Objekten vorhanden, werden mehrere Schaufeln mit dem Scanner erfasst. Diese Scans werden untereinander verglichen, um festzustellen, ob wirklich alle Objekte identisch sind. Ist das der Fall, werden die Scans vermittelt und dieser vermittelte Scan wird für das weiter Reverse-Engineering genutzt.&lt;br /&gt;
# Nach dem Reverse-Engineering wird das neue CAD-Model mit den Scandaten verglichen und es wird ein Bericht erstellt, aus dem zu ersehen ist, wo das CAD-Model von den 3D-Scan Daten abweicht.&lt;br /&gt;
# Nach der Fertigung wird das neue physische Model mit dem Scanner erfasst und mit dem CAD-Model verglichen, das im Reverse-Engineering angefertigt wurde.&lt;br /&gt;
&lt;br /&gt;
=== Pharmazie, Biotechnologie und Systembiologie ===&lt;br /&gt;
In der [[Chemieingenieurwesen|Chemietechnik]] und der [[Arzneimittelforschung]] wird seit geraumer Zeit Reverse Engineering für die [[Generikum|Generikaentwicklung]] oder andere Formen des [[Wissenstransfer]]s praktiziert, was beispielsweise der [[Pharmazie]]branche [[Indien]]s zum Aufstieg verhalf.&amp;lt;ref&amp;gt;{{Literatur |Autor=Dinar Kale, Steve Little |Titel=From Imitation to Innovation: The Evolution of R&amp;amp;D Capabilities and Learning Processes in the Indian Pharmaceutical Industry |Sammelwerk=Technology Analysis &amp;amp; Strategic Management |Band=19 |Nummer=5 |Datum=2007-09 |ISSN=0953-7325 |Seiten=589–609 |Online=https://www.tandfonline.com/doi/abs/10.1080/09537320701521317 |Abruf=2021-03-30 |DOI=10.1080/09537320701521317}}&amp;lt;/ref&amp;gt; Im März 2021 rekonstruierten Forschende der [[Stanford-Universität]] die Sequenzen der [[MRNA-Impfstoff|mRNA-Impfstoffe]] [[BNT162b2|BNT-162b2]] von [[Biontech|BioNTech]]/[[Pfizer]] und [[MRNA-1273]] von [[Moderna]] per Reverse Engineering und veröffentlichten sie anschließend auf [[GitHub]].&amp;lt;ref&amp;gt;{{Internetquelle |autor=Matthew Gault |url=https://www.vice.com/en/article/7k9gya/stanford-scientists-reverse-engineer-moderna-vaccine-post-code-on-github |titel=Stanford Scientists Reverse Engineer Moderna Vaccine, Post Code on Github |werk=Vice |datum=2021-03-29 |sprache=en-US |abruf=2021-03-30}}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{Internetquelle |autor=NAalytics |url=https://github.com/NAalytics/Assemblies-of-putative-SARS-CoV2-spike-encoding-mRNA-sequences-for-vaccines-BNT-162b2-and-mRNA-1273 |titel=NAalytics/Assemblies-of-putative-SARS-CoV2-spike-encoding-mRNA-sequences-for-vaccines-BNT-162b2-and-mRNA-1273 |werk=GitHub |datum=2021-03-23 |sprache=en |abruf=2021-03-30}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In der [[Systembiologie]] bezeichnet &amp;#039;&amp;#039;Reverse Engineering&amp;#039;&amp;#039;, hier auch [[Netzwerkinferenz (Systembiologie)|Netzwerkinferenz]] genannt, die Identifikation von biologischen Netzwerken, insbesondere [[Genregulationsnetzwerk]]en, unter Verwendung sowohl von gemessenen biomedizinischen oder/und [[Molekularbiologie|molekularbiologischen]] Daten, insbesondere Daten aus der [[Genexpressionsanalyse]], als auch von molekularbiologischem Vorwissen.&lt;br /&gt;
&lt;br /&gt;
== Rechtliche Aspekte ==&lt;br /&gt;
Die Erlangung eines [[Geschäftsgeheimnis]]ses durch Untersuchen, Rückbauen oder Testen eines Produkts oder Gegenstands ist seit April 2019 gem. {{§|3|geschgehg|juris}} Abs. 1 Nr. 2 des [[Gesetz zum Schutz von Geschäftsgeheimnissen|Gesetzes zum Schutz von Geschäftsgeheimnissen]] (GeschGehG) grundsätzlich zulässig.&amp;lt;ref&amp;gt;[https://www.ihk.de/karlsruhe/fachthemen/recht/wettbewerbsrecht/schutz-von-geschaeftsgeheimnissen-4546932 &amp;#039;&amp;#039;Schutz von Geschäftsgeheimnissen.&amp;#039;&amp;#039;] IHK Karlsruhe, Stand: Juli 2021.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
Viele Firmen versuchen, das Reverse Engineering ihrer Produkte durch entsprechende [[Lizenz]]bedingungen zu untersagen. In Deutschland sind diese Bedingungen allerdings ungültig. Nach {{§|69d|UrhG|dejure|text=§ 69d Abs. 3 UrhG}} und {{§|69a|UrhG|dejure|text=§ 69a Abs. 2 UrhG}} sind die vom Reverse Engineering berührten Rechtsgüter, anders als bei [[Plagiat|Nachbau]] oder [[Raubkopie|Raubkopien]], nicht vom Urheberrecht geschützt. Zur Überprüfung der Anwendungssicherheit und zur Fehlerbehebung sind Analysen und sogar Eingriffe in Software gesetzlich legal. Rechtlich einwandfrei sind außerdem alle Handlungen der Untersuchung an einem Werk, die dem Erkenntnisgewinn dienen. Wer Software ausführt, ohne dem Lizenzvertrag zugestimmt zu haben, ist von einem vertraglichen Verbot des Reverse Engineerings ohnehin nicht betroffen.&lt;br /&gt;
&lt;br /&gt;
Die [[Analyse]] von [[Netzwerkprotokoll|Protokollen]] ist davon rechtlich nicht betroffen, weil dabei die Software selbst gar nicht Gegenstand der Untersuchung ist. &lt;br /&gt;
&lt;br /&gt;
Oftmals dienen solche [[Klausel (Recht)|Lizenzklauseln]] eher dem Zweck der Abschreckung und sind somit als einseitige Willensäußerung oder je nach Form als einseitig vorgetragene Rechtsauffassung zu verstehen, die bei unabhängiger rechtlicher Prüfung möglicherweise keine Bestätigung finden und somit keinen weiteren Bestand haben wird. Im Softwarebereich spricht man von der sogenannten „[[Shrink Wrap License]]“-Vereinbarung, bei der von einem Vertragsabschluss ausgegangen wird, weil das Programm ausgeführt wird. In Deutschland ist jeder Vertrag anfechtbar, dessen Konditionen einer Vertragspartei erst nach „Abschluss“ eröffnet werden.&lt;br /&gt;
&lt;br /&gt;
Allerdings kann man sich ggf. per [[Vertragsstrafe]] zu Zahlungen im Fall der entdeckten Zuwiderhandlung verpflichtet haben. Dieser Form der individuellen Vertragsbindung kann man sich unter Umständen sehr wohl vollkommen legal unterworfen haben, wobei es hier meistens um [[Prototyp (Technik)|Prototypen]] oder Kleinserien geht, die noch erhebliche Mengen an [[Geschäftsgeheimnis]]sen enthalten. Oftmals werden aus diesem Grund [[Rabatt]]e zugunsten des Käufers eingeräumt (im Gegenzug zur verminderten Nutzungsmöglichkeit), oder es wird versucht, durch die oben angeführte Vertragsstrafe echte Risiken des Verkäufers (z.&amp;amp;nbsp;B. durch Geheimnisverrat) zumindest in gewissem Umfang abzudecken. Weiterhin findet bei sensiblen Objekten auch die Methode der zeitlich begrenzten [[Leihen|leihweisen]] Überlassung statt.&lt;br /&gt;
&lt;br /&gt;
Schon lange wird auch [[Verschlüsselung]] und [[Obfuskation (Hardware)|Verschleierung]] in der Computertechnik eingesetzt, wobei hiermit natürlich primär das Reverse Engineering erschwert werden soll, aber zunehmend auch, weil dadurch die novellierten Gesetze zum [[Urheberrecht]] in Bezug auf [[Kopierschutz]] und den daran geknüpften Strafandrohungen zum Tragen kommen könnten. Beispielhaft sei hier die Anklage des Russen [[Dmitry Sklyarov]] in den USA nach dem [[DMCA]] wegen Dekodierung von geschützten Textdokumenten im Jahr 2001 angeführt. Im Oktober 2003 ließ der US-Kongress jedoch vier Zusätze zu dem DMCA passieren, welche u.&amp;amp;nbsp;a. den Zweck der [[Archivierung]] von digitalen Werken als zeitlich begrenzte Ausnahme definierten und dafür notwendige Techniken wie das Reverse Engineering wieder erlauben.&lt;br /&gt;
&lt;br /&gt;
{{Zitat&lt;br /&gt;
 |Text=3. Computer programs and video games distributed in formats that have become obsolete and which require the original media or hardware as a condition of access. …The register has concluded that to the extent that libraries and archives wish to make preservation copies of published software and videogames that were distributed in formats that are (either because the physical medium on which they were distributed is no longer in use or because the use of an obsolete operating system is required), such activity is a noninfringing use covered by section 108(c) of the Copyright Act.&lt;br /&gt;
 |Sprache=en&lt;br /&gt;
 |ref=&amp;lt;ref&amp;gt;[https://www.copyright.gov/1201/docs/fedreg-notice-final.pdf Exemption to Prohibition on Circumvention of Copyright Protection Systems for Access Control Technologies] (PDF; 165&amp;amp;nbsp;kB)&amp;lt;/ref&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
Im November 2006 hat die [[Library of Congress]] der [[USA]] einer dauerhaften Ausnahme bezüglich des [[Digital Millennium Copyright Act|DMCA]] zugestimmt, welche das Umgehen eines [[Kopierschutz]]es von Software erlaubt, welche nicht länger vom Urheberrechtsinhaber verkauft oder unterstützt wird ([[Abandonware]]), sodass also eine Archivierung und digitale Erhaltung ohne Angst vor Rechtsverfolgung möglich ist.&amp;lt;ref&amp;gt;{{Internetquelle |autor=Emma Boyes |url=https://www.gamespot.com/articles/abandonware-now-legal/1100-6162308/ |titel=Abandonware now legal |hrsg=gamespot.com |datum=2006-11-27 |sprache=en |abruf=2013-01-11}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Benutzt man das Ergebnis des Reverse Engineerings zum gewerblichen Nachbau, so wird man sich mit der großen Menge der [[Gewerbliches Schutzrecht|gewerblichen Schutzrechte]] (z.&amp;amp;nbsp;B. [[Plagiat]]) in ähnlicher Weise konfrontiert sehen, so wie es auch bei Ergebnissen der ganz normalen eigenständigen Forschung und Entwicklung der Fall sein kann (z.&amp;amp;nbsp;B. durch [[Patent]]e).&lt;br /&gt;
&lt;br /&gt;
=== Technik und Elektronik ===&lt;br /&gt;
Das Reverse Engineering zum Zweck des Nachbaus von technischen Objekten hat oft das Ziel, Entwicklungskosten und -risiken zu verringern sowie fehlendes eigenes Know-how zu kompensieren. Die zusätzliche Konkurrenz wird deshalb vom Originalhersteller oft nicht hingenommen und rechtlich bekämpft. Außerdem schützen sich Originalhersteller vor Nachahmung durch Verschleierung oder sichern ihre Originalität durch verdeckte Produktkennzeichnung (Tags) ab. Der Nachbau ist mindestens immer dann illegal, wenn fremde Patente verletzt werden oder wenn das Produkt als Originalteil gekennzeichnet ist. Aber auch, wenn ungeschütztes Gedankengut anderer benutzt wird, kann eine Urheberrechtsverletzung vorliegen.&amp;lt;ref name=&amp;quot;re_re_diff&amp;quot; /&amp;gt; [[VLSI|Hochintegrierte Schaltkreise]] erschweren das &amp;#039;&amp;#039;reverse engineering&amp;#039;&amp;#039; durch ihre Strukturgrößen im Nanometerbereich. Auf Leiterplatten werden oft Bezeichnungen der verbauten [[Integrierter Schaltkreis|integrierten Schaltkreise]] entfernt.&lt;br /&gt;
&lt;br /&gt;
Das Reverse Engineering unterscheidet sich vom technischen [[Re-Engineering]] dadurch, dass bei letzterem die [[technische Dokumentation]], beispielsweise durch [[Open-Source-Hardware]], vorliegt und die Funktionalität mit neueren Mitteln nachgebildet oder erweitert werden soll.&amp;lt;ref name=&amp;quot;re_re_diff&amp;quot;&amp;gt;https://sciencing.com/what-is-the-difference-between-reverse-engineering-and-re-engineering-12749441.html &amp;#039;&amp;#039;What Is the Difference Between Reverse Engineering and Re-Engineering?&amp;#039;&amp;#039; auf [[Sciencing]], abgerufen am 4. Nov. 2019.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Crack (Software)]]&lt;br /&gt;
* [[CrackMe]]&lt;br /&gt;
* [[Inoffizieller Patch]]&lt;br /&gt;
* [[Netzwerkinferenz (Systembiologie)]]&lt;br /&gt;
* [[Reinraum-Implementierung]]&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* Dennis Yurichev: &amp;#039;&amp;#039;Reverse Engineering for Beginners.&amp;#039;&amp;#039; Online book: https://beginners.re/ German version: https://beginners.re/RE4B-DE.pdf&lt;br /&gt;
* Pamela Samuelson, Suzanne Scotchmer: &amp;#039;&amp;#039;The Law and Economics of Reverse Engineering.&amp;#039;&amp;#039; In: &amp;#039;&amp;#039;Yale Law Journal.&amp;#039;&amp;#039; Vol 111, No. 7, Mai 2002, S. 1575–1664. {{Webarchiv |url=http://www.yalelawjournal.org/pdf/111-7/SamuelsonFINAL.pdf |text=(PDF) |wayback=20120215001752}}&lt;br /&gt;
* E. Eilam: &amp;#039;&amp;#039;Reversing: Secrets of Reverse Engineering.&amp;#039;&amp;#039; John Wiley &amp;amp; Sons, 2005, ISBN 0-7645-7481-7.&lt;br /&gt;
* H. J. van Zuylen: &amp;#039;&amp;#039;The REDO Compendium. Reverse Engineering for Software Maintenance.&amp;#039;&amp;#039; John Wiley &amp;amp; Sons, Chichester u. a. 1993, ISBN 0-471-93607-3.&lt;br /&gt;
* Matthias Pierson, Thomas Ahrens, Karsten Fischer: &amp;#039;&amp;#039;Recht des geistigen Eigentums&amp;#039;&amp;#039;. Verlag Vahlen, 2007, ISBN 978-3-8006-3428-6.&lt;br /&gt;
* Marcus von Welser, Alexander González: &amp;#039;&amp;#039;Marken- und Produktpiraterie, Strategien und Lösungsansätze zu ihrer Bekämpfung.&amp;#039;&amp;#039; Wiley-VCH, 2007, ISBN 978-3-527-50239-4.&lt;br /&gt;
* Vinesh Raja, Kiran J. Fernandes: &amp;#039;&amp;#039;Reverse Engineering-An Industrial Perspective.&amp;#039;&amp;#039; Springer, 2008, ISBN 978-1-84628-855-5.&lt;br /&gt;
* Christine Schöne: &amp;#039;&amp;#039;Reverse Engineering für Freiformflächen in Prozessketten der Produktionstechnik.&amp;#039;&amp;#039; Dr Hut, 2009, ISBN 978-3-86853-103-9.&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Konstruktionslehre]]&lt;br /&gt;
[[Kategorie:Softwaretechnik]]&lt;br /&gt;
[[Kategorie:Urheberrecht]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Herzmut</name></author>
	</entry>
</feed>