Ist es möglich den SourceCode von einem Mikrocontroller einer Waschmaschine auszulesen?

2 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Den Quellcode kann man prinzipiell nicht auslesen, weil der im Controller nicht gespeichert ist.

Man könnte theoretisch den Maschinencode auslesen und sich mit einem Disassembler darüber hermachen, um so etwas ähnliches wie Quellcode daraus zu erzeugen.

Aber die Mikrocontroller, die ich kenne, haben Mechanismen, die selbst das verhindern können. Da hat man dann überhaupt keine Chance.

Es ist theoretisch möglich, den Sourcecode (Quellcode) eines Mikrocontrollers in einer Waschmaschine auszulesen, wenn man Zugang zu dem betreffenden Mikrocontroller hat. Wenn der Mikrocontroller zum Beispiel über eine Debug-Schnittstelle wie JTAG (Joint Test Action Group) verfügt, könnte man einen Debugger an die entsprechenden Pins anschließen und damit den Inhalt des Speichers und des Programmcodes des Mikrocontrollers auslesen.

Allerdings wäre das in der Praxis in den meisten Fällen illegal, da es gegen das Urheberrecht und möglicherweise auch gegen den Schutz geistigen Eigentums verstoßen würde. Es gibt auch legitime Gründe, warum der Zugriff auf den Quellcode verweigert wird, wie zum Beispiel Schutz vor Diebstahl oder Missbrauch.


easylife2  16.02.2023, 19:20
Es ist theoretisch möglich, den Sourcecode (Quellcode) eines Mikrocontrollers in einer Waschmaschine auszulesen, wenn man Zugang zu dem betreffenden Mikrocontroller hat.

Der Sourcecode (üblicherweise in einer höheren Programmiersprache geschrieben und mit zum Verständnis notwendigen Variablennamen und Kommentaren versehen) ist nicht im Mikrocontroller gespeichert! Er wird vor der Programmierung in relativ unlesbaren Maschinencode übersetzt. Nur dieser kann u.U. über das Programmierinterface oder aus einem externen Flash-Speicher ausgelesen werden.

0
ProjectEuphoria  16.02.2023, 19:23
@easylife2

Es ist normalerweise nicht möglich, den Original-Sourcecode aus dem Mikrocontroller auszulesen, da der Maschinencode, der in den Mikrocontroller geladen wird, viel kompakter und schwieriger zu interpretieren ist als der Original-Sourcecode. Wenn der Original-Sourcecode benötigt wird, muss er von der Person, die ihn geschrieben hat, oder von jemand anderem, der Zugriff auf den Sourcecode hat, erneut geschrieben werden.

Es gibt jedoch Möglichkeiten, den Maschinencode aus dem Mikrocontroller auszulesen, wenn er nicht durch Sicherheitsfunktionen geschützt ist. Dies kann zum Beispiel durch den Anschluss eines Debuggers oder durch das Auslesen des Speichers über eine spezielle Schnittstelle erreicht werden. Allerdings ist es in den meisten Fällen nicht legal oder ethisch korrekt, den Maschinencode aus einem Mikrocontroller ohne Zustimmung des Eigentümers oder des Urhebers des Codes auszulesen.

0
easylife2  16.02.2023, 19:37
@ProjectEuphoria

Ja, das sagte ich ja.

Der Sourcecode ist nicht im Mikrocontroller gespeichert. Das ist in deiner ursprünglichen Antwort etwas anders dargestellt ("Es ist theoretisch möglich").

Darauf wollte ich hinweisen.

1