wie sicher ist der Quellcode in einem apk? bzw wie schützt man ihn?

JanHH

Top Contributor
Hallo,

wie sicher ist der kostbare selbstgeschriebene Quellcode in einem apk-File? Wird der automatisch obfuskiert oder sonstwie geschützt oder kann sich da jeder simpel aus dem apk-File meinen Quellcode wiederherstellen?

An sich müsste es da doch beste Schutzmechanismen, weil eine Menge kommerzielle Apps angeboten werden, und deren Entwickler haben sicher kein Interesse daran, ihren Quellcode indirekt preiszugeben..

Danke.
 

Tobse

Top Contributor
Zum einen: Die Frage "Wie sicher ist X?" kann man nicht beantworten. Man kann fragen "Wie sicher ist X gegen die Bedrohung Y?"

Wir haben das Thema "Sicherheit von kompiliertem Java-Code" hier im Forum regelmäßig und es ist immer lebhaft umstritten, wie sicher der Quellcode genau ist. Auch Obfuscation (z.B. ProGuard) wird als wenig bis sehr wirksam eingeschätzt, je nachdem, wen man fragt. Es kommt auch sehr darauf an, wie fähig und hartnäckig der Angreifer ist (siehe Bedrohung Y).
Fakt und Konsensus ist aber: Der Quellcode kann gelesen werden und es wäre eine Todsünde, Geheime Informationen dort abzulegen (z.B. Zugangsdaten oder Kryptographische Schlüssel).

Siehe dazu:
http://www.java-forum.org/thema/quellcode-absichern.86501/
http://www.java-forum.org/thema/java-jar-sicher.80769/

... siehe Forum suche
 

JanHH

Top Contributor
also ist apk da auch nicht anders als die anderen Paket-Formate (jar, war etc.)? Ich hätte gedacht dass google das besonders absichert weil da ja nun sehr stark kommerzielle Anbieter von Apps involviert sind.
 

Tobse

Top Contributor
APKs sind höchstens ähnlich wie JARs. Aber das ändert am Prinzip nichts: Das Gerät, welches deine Software ausführt, muss ja wissen, was es zu tun hat (wäre ja ziemlich sinnlos sonst, oder? :D). Wenn also jedes beliebige Android-Smartphone an die Anweisungen (= den compilierten Code) kommt, dann auch jeder Angreifer. Und wer den compilierten Code hat, kann alles damit anstellen, wonach ihr/ihm der Sinn steht. Je nach dem, wie schwer der Code obfuskiert ist braucht es mehr Wissen und Geschick beim Angreifer, aber es ist definitiv möglich.
 

JanHH

Top Contributor
ja, das ist mir schon klar, aber das sind ja eher abstrakte Aspekte. Die konkrete Frage war ja eher ob es von Seiten googles aus, als Gestalter des Android-Systems, da irgendwelche besonderen Vorkehrungen gibt, da die vielen kommerziellen App-Anbieter da ja sicherlich wenig Interesse an der freien Verfügbarkeit ihres Quellcodes haben. Aber ist dann ja anscheinend, ausser den bekannten Maßnahmen wie obfuscation, nicht der Fall.
 

Tobse

Top Contributor
Wirklich extra Vorkehrungen gibts nicht, nein. Der Bytecode wird vor dem Packen in ein Android-Spezifisches Format umgewandelt; dabei findet eine Art Obfuscation statt, daber das ist nicht darauf ausgelegt den Code zu schützen sondern um die Ausführung auf Android zu erleichtern. Zusätzlich empfiehlt Google in der Dokumentation zu Android die Verwendung von ProGuard. Von mehr weiss ich nicht.
 

JanHH

Top Contributor
und die software intern möglichst schlecht designen und völlig konfus gestalten damit keiner durchblickt und falls doch, sich mit grausen abwendet ;-).

Danke.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Noahscript Android APK Dekompilieren (Quellcode) Android & Cross-Platform Mobile Apps 1
O Android Anfänger: Quellcode nicht gefunden Android & Cross-Platform Mobile Apps 3
M Android Quellcode einer Website Android & Cross-Platform Mobile Apps 7
M Umlaute im Quellcode einer Website richtig darstellen Android & Cross-Platform Mobile Apps 4
M Quellcode einer Website auslesen Android & Cross-Platform Mobile Apps 5
G Android C++ Quellcode für Android Geräte compilieren Android & Cross-Platform Mobile Apps 2
I Android WebKit: Seite auslesen (Nur Quellcode) Android & Cross-Platform Mobile Apps 12
N EE Quellcode zu ME Android & Cross-Platform Mobile Apps 3
AllBlack Auf der Suche nach einem App-Entwickler Android & Cross-Platform Mobile Apps 1
I Android Auf ImageView aus einem anderen Thread zugreifen liefert Fehlermeldung (App stürzt ab) Android & Cross-Platform Mobile Apps 5
ruutaiokwu Android In einem Android-“Spinner”-Element GLEICHZEITIG Bild (links) UND Text (rechts) anzeigen Android & Cross-Platform Mobile Apps 0
ruutaiokwu Wie fügt man bei Android Studio .jar-Libraries zu einem Android-Java-Projekt hinzu? Android & Cross-Platform Mobile Apps 33
L Eingaben in der MainActivity einem Service übergeben Android & Cross-Platform Mobile Apps 0
M mehrere URLs in einem AsyncTask abarbeiten Android & Cross-Platform Mobile Apps 2
M Android App → Problem mit dem Speichern von einem Bitmap–Objekt. Android & Cross-Platform Mobile Apps 1
Alex/89 ImageView mit einem Bild von der SD Karte füllen Android & Cross-Platform Mobile Apps 5
G GPS in einem Service abfragen Android & Cross-Platform Mobile Apps 2
B Android In einem View der ersten Activity zweite anzeigen Android & Cross-Platform Mobile Apps 2
A Android Von einem Thread auf anderen zugreifen Android & Cross-Platform Mobile Apps 3
W Android Bestimmen von welchem Typ die Objekte in einem ArrayAdapter sind Android & Cross-Platform Mobile Apps 3
X Android Befehle an einem PC-Programm schicken Android & Cross-Platform Mobile Apps 4
N Textview macht immer nach einem Beistrich einen Abstand Android & Cross-Platform Mobile Apps 6
S Android binäre Daten zwischen Android und einem Java-Server Android & Cross-Platform Mobile Apps 5
B Programm aus einem Buch funzt nicht! Android & Cross-Platform Mobile Apps 16
B Zeilen zählen in einem Textfile Android & Cross-Platform Mobile Apps 1
G Schriftgröße in einem TextField ändern Android & Cross-Platform Mobile Apps 2
A Problem beim Subtrahieren eines Double von einem Double Android & Cross-Platform Mobile Apps 5
U ein texteingabefeld auf einem Canvas . Android & Cross-Platform Mobile Apps 2
M Java Midlet -> in einem ChoiceGroup ein TextField zur Wah Android & Cross-Platform Mobile Apps 2
G Java Programme auf einem PDA Android & Cross-Platform Mobile Apps 1

Ähnliche Java Themen

Neue Themen


Oben