„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie kann ich sensible Zeichenfolgen in verschleiertem Code effektiv verbergen?

Wie kann ich sensible Zeichenfolgen in verschleiertem Code effektiv verbergen?

Veröffentlicht am 10.11.2024
Durchsuche:490

 How can I effectively hide sensitive strings in obfuscated code?

Enthüllung versteckter Zeichenfolgen in verschleiertem Code

Verschleierer wie ProGuard können die Codesicherheit verbessern, indem sie sichtbare Zeichenfolgen verschleiern, für vertrauliche Informationen reichen sie jedoch möglicherweise nicht aus B. URLs oder Lizenzdaten.

Verstecken vertraulicher Zeichenfolgen

Um vertrauliche Zeichenfolgen effektiv zu verbergen, sollten Sie die folgenden Techniken in Betracht ziehen:

  • Kodierung: Codieren Sie Zeichenfolgen mit Methoden wie Base64, damit sie verschlüsselt erscheinen.
  • Verschlüsselung: Verschlüsseln Sie Zeichenfolgen mit Algorithmen wie AES, um sie ohne den Verschlüsselungsschlüssel unverständlich zu machen.

Um diese Techniken zu implementieren, können Sie:

  1. Die Zeichenfolge manuell mit einem bekannten Schlüssel verschlüsseln.
  2. Passen Sie Ihren Code an, um die entschlüsselte Version der Zeichenfolge zu verwenden. Zum Beispiel:
// Before encryption
public class Foo {
    private String mySecret = "http://example.com";
}

// After encryption
public class Foo {
    private String encrypted = "";
    private String key = "";
    private String mySecret = MyDecryptUtil.decrypt(encrypted, key);
}

Auffinden der R-Klasse

Während der Dekompilierung ist die R-Klasse aufgrund von Verschleierung nicht immer leicht sichtbar. Die ProGuard-Zuordnungsdatei kann jedoch Einblicke in ihren Speicherort geben:

  • Suchen Sie den Abschnitt „Klassen“ in der Zuordnungsdatei.
  • Suchen Sie nach „R.java“, um das Original zu finden Pfad der R-Klasse.
  • Navigieren Sie zu diesem Pfad im dekompilierten Codeverzeichnis, um auf die R-Klasse zuzugreifen.

Grundlegende Informationen zu R-Klassennummern

Zahlen wie „2130903058“ im dekompilierten Code stellen Ressourcen-IDs dar. Diese Nummern beziehen sich auf Ressourcen in Ihrem Projekt, beispielsweise Layoutdateien.

So finden Sie die entsprechenden Ressourcen:

  • Dekompilieren Sie die R.java-Datei aus der Mapping-Datei.
  • Suchen Sie nach der Ressourcen-ID in der dekompilierten R.java-Datei.
  • Die entsprechende Ressource (z. B. Layoutdatei) wird in den Suchergebnissen angegeben.
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3