*.jar Datei vor dem Entpacken beschützen

comiplo

Mitglied
Hallo,

ich weiß nicht genau, ob dieses unterforum hier passt ...
Falls nicht bitte verschieben ...

Mein Problem ist, wenn ich eine ausführbare *.jar Datei habe, könnte sich ein "Hacker" oder andere doch mit WinRAR an der *.class Datei zu schaffen machen, und das ganze Programm auseinander nehmen. *.jar ist ja etwas ähnliches wie *.zip. Bei dem ZIP-Format gibt es die Möglichkeit, es so einzustellen, dass sich die *.zip nur entpacken lässt, wenn man ein Passwort eingibt. Gibt es eine ähnliche Möglichkeit auch bei *.jar?

MfG,
comiplo
 
Wäre es nicht etwas doof wenn man ein JAR-PW beim Starten der App eingeben müsste? Vor allem stell dir mal deine App besteht aus 5 JARs und alle wären gesperrt. Am Besten mit 5 Passwörtern 😉

Ich denke wenn man sein Programm aus Bytecode-Ebene schützen will ist Java die falsche Sprache (bzw alle Bytecode-Sprachen). Du kannst Code-Obfuscation betreiben aber auch das ist nur eine Erschwärung kein Schutz.

Was man noch machen kann: USB Dongle z.B. von Aladdin (HASP) Software Copy Protection and Copy Protection Software
 
Logischerweise wäre das natürlich blöd, denn wenn der Nutzer, das PW auch eingeben muss, wenn er die Anwendung startet, stellt das ganze keinen Schutz mehr dar ...

Code Obfuscation ist natürlich auch blöd, wenn ein Tester einen Bug entdeckt hat ... Ansonsten aber wohl das einzige was ich machen kann ...

Gibt es eine Möglichkeit, dass man das PW nur eingeben muss, wenn man das ganze entpacken will?
 
Code Obfuscation ist natürlich auch blöd, wenn ein Tester einen Bug entdeckt hat ... Ansonsten aber wohl das einzige was ich machen kann ...
Du obfuskierst (ähm ;-) ) ja nicht den Code in deinem Workspace sondern denjenigen, der dann kompiliert wird. Also du hast weiterhin den Code so, wie er sein soll. Folglich hat das mit dem Testen nix zu tun (außer, der Obfuscator macht Mist) 🙂

Gibt es eine Möglichkeit, dass man das PW nur eingeben muss, wenn man das ganze entpacken will?
Nö ;-)
 
Gibt es eine Möglichkeit, dass man das PW nur eingeben muss, wenn man das ganze entpacken will?
Du versuchst gerade einen Einkaufsladen zu erschaffen, wo die ehrlichen Kunden jederzeit rein- und rauskönnen, aber die Ladendiebe gleichzeitig vor verschlossenen Türen stehen. So was geht nicht mit Zips, weil schon die JVM nichts anderes macht, als bei jedem Start die JAR-Datei zu öffnen, zu entpacken, den Bytecode zu lesen und das Programm auszuführen. Sogar eine EXE kann man dekompilieren und/oder manipulieren, wenn man genug Zeit, Können und Ehrgeiz hat.

Wenn Du deinen Quelltext schützen willst, dann ist der Java-Bytecode keine gute Wahl. Der beste Schutz hier ist immer noch das Urheberrecht. Aus diesem Grund ist es auch oft sinnvoll, den Quelltext unter einer Open Source Lizenz zu veröffentlichen, weil dann der original Quelltext zu sehen ist und das Klauen leichter zu bemerken ist. Eine Alternative dazu ist eine serverbasierte Software (SaaS, Software-as-a-Service), wo nur das Interface/Frontend beim Anwender läuft, aber der Kern des Programms auf einem Server. Wenn der Server gut genug abgesichert ist, kommt niemand an das Hauptprogramm ran.

Wenn es Dir nur um den Schutz vor böswilligen Manipulationen geht, dazu gibt es diverse Checksummen, wie MD5 oder SHA. Mit externen Werkzeugen und den Prüfsummen auf deiner Webseite kann jeder Anwender seine Kopie deiner Anwendung überprüfen, ob diese original oder manipuliert ist.

Slawa
 

Neue Themen


Zurück
Oben