Tut proguard Arbeit zu verschleiern statische string-Konstanten?
Wird proguard Arbeit zu verschleiern statische string-Konstanten?
Hier ist Probe einfache Zeichenkette ausblenden mit
Ich denke, oben im Kommentar gepostet werden sollte, da eine Antwort, denn es ist zu helfen.
Proguard nicht verschleiern statische Zeichenketten geben Sie den link-Beschreibung hier
build.gradle
- Datei: gist.github.com/shomeser/68f4fe360be0edac95e4Ich denke, oben im Kommentar gepostet werden sollte, da eine Antwort, denn es ist zu helfen.
Proguard nicht verschleiern statische Zeichenketten geben Sie den link-Beschreibung hier
InformationsquelleAutor Code Droid | 2012-04-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
ProGuard nicht verschleiern string-Konstanten, wie erwähnt, in seiner FAQ. Seine neueren spezialisiert closed-source-Geschwister für Android, DexGuard, bietet zusätzliche Anwendungs-Schutz-Techniken, wie string-Verschlüsselung und Klasse Verschlüsselung.
(Ich bin der Entwickler von ProGuard und DexGuard)
Ich würde nicht befürworten Verschleierung überhaupt für etwas stehen muss, bis zu ein Angreifer. Diese Zeichenfolgen sollten nicht Sie selbst in Ihrem code, wenn Sie sind, wichtig. Ich habe noch zu sehen, ein Java obfuscator, wo die string-Verschlüsselung ist nicht leicht zu brechen, und ich habe durchaus ein paar.
Wie ich schon sagte 😛 ich würde NICHT befürworten die Nutzung der Verschleierung für alles, was Hacker dürfen nicht betreten darf. Ich bitshift mein public-key für die Android-billing-API und bin nicht allzu besorgt, wenn die Menschen brechen, der Verschleierung und haben Zugang zu Ihr.
was kann getan werden, um zu vermeiden die explizite Saiten alle über den Klassen statt lediglich "übersetzt", wo Sie definiert wurden? Ich meine: Eine Klasse definiert public static String MYCONS="keine Sitzung", aber das ist eigentlich das, was Sie sehen, in Klasse B statt someView.setText(A. MYONCS)
ProGuard ist sehr zeitaufwendig und gibt es eine Möglichkeit, die ohne die Erstellung einer apk-können wir die app ausführen und die Fehler sehen, weil ich mich vor das problem, seine Arbeit in bauen, apk und nichts arbeiten im release-apk-also ich weiß nicht, wie, um den Fehler abzufangen
InformationsquelleAutor Eric Lafortune
Nein, ProGuard nicht verschlüsselt Zeichenketten-Konstanten (Proguard FAQ Link)
Aber es gibt einige kommerzielle Produkte, die helfen, dass Sie mit.
Ich würde empfehlen, die Stringer Java Obfuscator, weil es die check call-Kontext Integrität und steuert Funktionen das macht reverse engineering so hart wie möglich. IMHO Stringer ist die beste Zeichenfolge encryptor für Java und Android auf dem Markt heute.
Siehe auch Allatori Java Obfuscator.
N. B. ich bin CEO bei Licel LLC. Entwickler von Stringer Java Obfuscator.
Ein kommerzielles Produkt ist von Natur aus nicht frei, ja.
InformationsquelleAutor Ivan Kinash
Was ProGuard hat (wenn richtig konfiguriert) ist in-line string-Konstanten. Es würde nicht viel Sinn zu verschleiern, Sie glaube, eine string-Konstante verwendet werden könnte, zur Darstellung einer Nachricht an den Benutzer, und was gut würde es tun, wenn es verschleiert wurden?
Sie können konfigurieren ProGuard, Streifen aus dem log-Anrufe, zu.
InformationsquelleAutor Óscar López
Basierend auf meiner Lektüre der Verbergung Optionen in der manual, die Antwort ist Nein.
String-literal Verschleierung ist theoretisch möglich, aber es wäre notwendig, verwenden Sie einen speziellen classloader, der de-verschleiert die String-Literale, wie Sie gelesen werden, die von der Klasse Datei. Das würde schwierig sein. Auf top von, dass es nicht viel erreichen, da kann jemand sehr leicht wiederherstellen des ursprünglichen strings, indem Sie Ihre Anwendung mit einem Java-debugger.
InformationsquelleAutor Stephen C