#1 28. Februar 2009 Code schützen (.jar) Hi! ich hab in Java eine Art Client geschrieben. Im SourceCode taucht auch ein Account auf mit dem sich das Programm mit einem FTP Server verbindet. Der Account steht im Quellcode "natürlich" als reiner Text ....also keine verschlüsselung o.ä. Problem ist nur dass man in Java keine *.exe sonder *.jar aus seinem Programm erstellt und bei na *.jar hat man die möglichkeit diese zu entpacken. Habe die jar mal testweise entpackt und alle meine Klassen die ich geschrieben habe tauchen wieder auf....schlimmer noch....man kann den account ganz einfach per Texteditor auslesen. Also man kann zwar nicht den ganzen SourceCode lesen, 90% wurde von wirrwarr Sonderzeichen usw ersetzt, aber den Account kann man wie gesagt ganz klar in den Dateien nachlesen. :angry: Wie kann ich sowas verhindern ? bzw. kann man auch *.exe Dateien "decompilieren" ? Werden Accounts normalerweise nicht einfach so in den SourceCode geschrieben ? Brauche dringend Rat... + Multi-Zitat Zitieren
#2 1. März 2009 AW: Code schützen Hi, ich weiss nicht wie oder ob man das verändern kann,aber... was macht denn das Programm? Verbindet es sich mit dem FTP server um nach Updates zu suchen ? Ich meine Notfalls kannst du das doch dann auch über HTTP machen , dann brauchste keine FTP daten anzugeben. + Multi-Zitat Zitieren
#3 1. März 2009 AW: Code schützen Kann also leider nicht auf nen HTTP wechseln...ist ne zu lange geschichte Aber das muss doch irgendwie machbar sein....dass man nen quelltext einfach so einsehen kann kann doch nicht normal sein Cracken von games usw wäre dann ja ein kinderspiel + Multi-Zitat Zitieren
#4 1. März 2009 AW: Code schützen Edit: Ups sry, da hab ich was verwechselt xD Hab mich wohl vom Namen irre leiten lassen und dann gleich den nächsten Download-Link genommen. Was ich meinte war natürlich die Anwendung von CodeObfuskation, wie es Timer beschrieben hat. Dafür gibt es sogar einige Programme wie http://www.zelix.com/klassmaster/ oder natürlich der Windows Script Encoder War schon spät und ich hab's total verplant ^^ sry Danke für den Hinweis, Timer ~~ + Multi-Zitat Zitieren
#5 1. März 2009 AW: Code schützen Ich glaub nicht, dass es viel nützt, wenn du die Daten verschlüsselst, da man die auch sniffen kann. Um das zu verhindern solltest du auch eine verschlüsselte Verbindung wählen (TLS/SSL). greez + Multi-Zitat Zitieren
#6 1. März 2009 AW: Code schützen Naja es nützt schon viel lol, ansonsten könntest du nahezu alle Klassen ohne Debugger einfach mal so im Klartext auslesen..... Aber natürlich solltest eine verschlüsselte Verbindung wählen, das hatte ich eigentl. als gegeben angenommen. ^^ Also entweder SFTP oder FTP über SSL. + Multi-Zitat Zitieren
#7 1. März 2009 AW: Code schützen hast du überhaupt nur die leiseste ahnung was code-coverage ist? @te ungetestet: folgendes könntest du versuchen: speichere die ascii-werte bzw. unicode deiner zugangsdaten in nem int-array setze dann die zugangsdaten zusammen indem du die einzelnen ascii werte nach char castest und zusammenfügst. das alles hat aber keinen sinn, wenn du keine verbindung über ftp mit ssl herstellst... + Multi-Zitat Zitieren
#8 1. März 2009 AW: Code schützen Sowas wie mit dem Array hatte ich mir auch schon gedacht....also die Zugangsdaten im Code "verstecken". Es gibt ja auch tools die aus meiner *.jar eine *.exe erstellen. Würde das was bringen ? Oder kann man in na *.exe auch den Code "einsehen" ? + Multi-Zitat Zitieren
#9 1. März 2009 AW: Code schützen Du kannst in einer Exe zumindest Strings finden. + Multi-Zitat Zitieren
#10 1. März 2009 AW: Code schützen Naja ... all in all ist es also am sichersten auf Http umzusteigen. Aber auf irgendwelche Server zugreifen tun doch sau viele Tools...auch auf FTP Server denk ich mal (wegen Updates z.b.)... irgendne kluge Lösung muss es geben + Multi-Zitat Zitieren
#11 1. März 2009 AW: Code schützen Ich bein kein Java programmer aber ~99% updaten über http (am besten mit nem Php script zum überprüfen der Version). Der rest hat auf seinem FTP server nen extra account nur um daten runterzuladen aber sonst ohne Rechte. + Multi-Zitat Zitieren
#12 12. April 2012 AW: Code schützen (.jar) Ich möchte diesen Beitrag nochmal aufgreifen, weil ich eben via Google darauf gestoßen bin. Ich habe das ganze nun wie folgt gelöst: si.setUser(new String(new char[]{'G','E','H','E','I','M','0','1'})); si.setPassword(new String(new char[]{'P','A','S','S','W','O','R','T'})); in der Class-Datei sehe ich nun die Wörter nicht mehr im Klartext... Keine Ahnung ob man sie mit irgendwelchen Decompilern wieder herstellen kann... + Multi-Zitat Zitieren
#13 12. April 2012 AW: Code schützen (.jar) probier es aus? http://java.decompiler.free.fr/?q=jdgui Java ist eine open-source Programmiersprache für open-source Projekte. Unternehmen die kommerzielle Java Apps anbieten haben da auch kaum eine Chance die Software zu schützen. Lass noch sowas drüber laufen: yGuard - Java Bytecode Obfuskator und Shrinker aber der Schutz ist trotzdem Minimal. + Multi-Zitat Zitieren