2010-06-23 14 views
5

Ich weiß, dass .NET-Anwendungen schwer zu schützen sind. Ich benutze RedGate Reflector und weiß, dass man im Allgemeinen Quellcode von vielen .NET-DLLs bekommen kann.Ist es möglich, die gesamte .NET-Anwendung zu dekompilieren?

aber meine Frage ist - ist es tatsächlich möglich, die gesamte Anwendung zu dekompilieren?

Ich meine - erstellen Sie eine praktikable VS-Lösung so kann der Pirat einfach F5 drücken und erhalten genau das gleiche Ergebnis als ob der Autor auf seiner Maschine?

Antwort

1

Für eine kleine Anwendung ist es sowohl möglich als auch machbar. Sie müssen die Klassen einzeln dekompilieren und den Code in Visual Studio kopieren/einfügen.

Für eine große Anwendung, während es möglich ist, ist es nicht wirklich machbar, da der Kopier-/Pastenprozess extrem mühsam wird.

1

Es hängt wirklich davon ab, welche Art von Code Sie schreiben. Wenn Sie viele der neuen Features in C# 3 und höher wie Lambda-Ausdrücke, automatische Eigenschaften und Yield verwenden, ist der dekompilierte Quellcode nicht lauffähig und erfordert einiges an Arbeit, um ihn kompilieren zu lassen.

Auch ohne diese Funktionen, habe ich in der Regel mindestens einige Probleme beim Kompilieren der dekompilierten Quellcode einer vollständigen winforms-Anwendung.

1

Ich glaube nicht, dass es irgendetwas gibt, das dies für eine App, die aus mehreren Baugruppen besteht, vollständig automatisiert, aber ich kann sagen, dass es wirklich nicht so schwer ist, die Teile selbst zu einer Lösung zusammenzufügen. Vielleicht ein bisschen langweilig für eine große App, aber wenn Sie wirklich wollen, ist es sicherlich machbar.

Zum Glück habe ich don'tworryabout itthatmuch.

1

Es gibt heutzutage viele Obfuscatoren, die Ihre .NET-Anwendungen vor Dekompilierung schützen. Ein solcher Obfuscator ist . Sie versuchen, Ihren gut strukturierten .NET-IL-Code in Spegatti-Code zu überführen (was immer noch funktioniert), dass Decompiler keinen Originalcode erzeugen können. Es ist nicht wie 100% sicher, dass die Piraten den neu kompilierbaren Code nicht bekommen können, aber es wird nicht leicht für sie sein, wenn sie mit dem Obfuscator dekompilieren.

1

Ja, Sie exportieren einfach von Reflector und erhalten ein komplettes ausführbares Projekt für Ihre Baugruppe. Ich habe es ein paar Mal gemacht. Normalerweise muss ich das Projekt auf meine Version von VS migrieren und manchmal erfordert es einige kleinere Korrekturen, aber im Allgemeinen funktioniert es.

Verwandte Themen