Frage

Ich habe geschrieben (die meisten) eine Anwendung in Flex und bin ich besorgt über den Schutz der Quellcode.Feuerte ich eine demo Swf decompiler Trillix und öffnete die swf-Datei, die installiert wurde, auf meinem Programm-Dateien-Verzeichnis.Ich sah, dass alle actionscript-Pakete, die ich schrieb, waren es.Ich bin nicht allzu besorgt mit die Pakete, obwohl es eine beträchtliche Menge an code, denn es scheint immer noch ziemlich unbrauchbar, ohne die mxml-Dateien.Ich denke, Sie werden in actionscript, oder wenigstens hoffe ich das.Allerdings würde ich gerne noch erkunden Verschleierung.

Hat jemand schon Erfahrung mit Flash / Actionscript 3 / Flex obfuscators?Können Sie empfehlen eine gute Produkt?

War es hilfreich?

Lösung

Hier ist, was ich tun würde.

  • Kompilieren Sie Ihre Anwendung, um eine SWF-Datei.Dann verschlüsseln Sie die SWF-Datei mit AES.

  • Machen Sie eine "wrapper" - Anwendung, lädt die verschlüsselten SWF in ein ByteArray mit URLLoader

  • Verwenden Sie die as3crypto Bibliothek entschlüsseln Sie die swf-Datei zur Laufzeit.

  • Einmal entschlüsselt, verwenden Loader.loadBytes laden Sie die entschlüsselte swf in wrapper-Anwendung.

Dies macht es viel schwieriger zu erhalten Ihre code.Nicht unmöglich, aber schwieriger.

Für AIR-Anwendungen, die Sie könnten, lassen Sie die SWF-verschlüsselt, wenn die Bereitstellung der Anwendung für den Endbenutzer.Dann können Sie eine Registrierung Schlüssel enthält den Schlüssel zur Entschlüsselung der SWF-Datei.

Auch, hier ist ein link zu einem AS3-obfuscator.Ich bin nicht sicher, wie gut es funktioniert, obwohl.http://www.ambiera.com/irrfuscator/index.html

Andere Tipps

Das vorgeschlagene Verfahren durch maclema nicht wirklich zu stoppen jeden Angreifer von der Einholung der Quelle - die "wrapper-Anwendung" werden müssen unverschlüsselt, so der Angreifer in der Lage sein zu finden heraus, dass die Verwendung von AES (oder einem anderen Verfahren), und er erhält einen Schlüssel für die Entschlüsselung in einer ähnlichen Art und Weise (weil es Bedürfnisse zu werden in Klartext irgendwo).Einmal hat er diese, wird er in der Lage sein zu entschlüsseln, die die SWF-Datei ganz einfach.

Die einzige zuverlässige Lösung (na,) ist eine Art der obfuscator - wir verwenden Amayeta die Werke für die Flex-die neueste version - bitte sehen Sie http://www.amayeta.com/software/swfencrypt/ .

Nun, meiner Meinung nach, die einfachste und sicherste Lösung ist eine Mischung aus maclema und Borek Antwort:

Verschleierung von code kann eine große headach, wenn Sie nicht nehmen es mit in die Prozess von Anfang an und wenn Ihr aplplication ist ziemlich groß:es ist wahrscheinlich, dass Verschleierung Ihren Antrag stellen beschädigt, wenn Sie verwendet remote-Pakete (und nicht erklären, dass diese zu den obfuscator), wenn Sie zu viele typenlose Variablen in Objekte oder dynamische Klassen ....

Also:wenn Sie maclema Lösung für Ihren großen Einsatz und Nutzung der Verschleierung auf Ihrem wrapper (das ist eine kleine app wahrscheinlich sehr leicht zu verdunkeln) Sie sind code für die sicherste und hasle geringsten.Nur ein sehr wütender Pirat würde sich die Zeit nehmen, zum reverse Engineering der Verschleierung zu entschlüsseln Sie das Paket ....Nun, wenn jemand will, dass Sie Ihren Anwendungscode, soo schlecht ist es entweder CIA Verwandte oder du bist schon sehr Reich (oder beide)

ich danke Ihnen allen für Ihre Antworten

Ich habe vor kurzem veröffentlicht ein iOS-und Android-Spiel mit Flash.Ich sah rund um das internet für ein gutes kostenloses Programm, um die Quelle zu schützen-code in meine SWF-und konnte nichts finden, also schrieb ich ein.Es ist noch in Entwicklung und es ist "Benutzung auf eigene Gefahr", aber es funktionierte für mich.

Es ist veröffentlicht auf github.Check it out und lassen Sie mich wissen, was Sie denken.

https://github.com/Teesquared/flasturbate

Ich habe eine windows-Binärdatei, aber ich empfehle Ihnen, Folgen Sie den Anweisungen, um es selbst bauen, wenn Sie wollen, es zu probieren.

Diese obfuscator läuft direkt auf die SWF-Datei.Es derzeit nur benennt Symbole, aber es ist auf einem Rahmen, die könnte Unterstützung die änderung von Bytecode in die Zukunft.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top