Android In-App-Sicherheitsempfehlung - was bedeutet das?

8

Der Android-Entwickler sagt Folgendes zum Speichern Ihres öffentlichen App-Schlüssels in Ihrem Projekt:

  

Sicherheitsempfehlung: Es wird dringend empfohlen, dies nicht zu tun   Hard-Code den genauen öffentlichen Lizenzschlüssel Zeichenfolge Wert wie von   Google Play. Stattdessen können Sie den gesamten öffentlichen Lizenzschlüssel erstellen   Zeichenkette zur Laufzeit von Teilstrings, oder sie von einem verschlüsselten abrufen   speichern, bevor Sie es an den Konstruktor übergeben. Dieser Ansatz macht es   schwieriger für böswillige Dritte die Öffentlichkeit zu modifizieren   Lizenzschlüssel-String in Ihrer APK-Datei.

Sollte das selbsterklärend sein? Ich verstehe nicht, was sie von mir wollen.

Sie sagen dasselbe in den Kommentaren des Beispiels, aber was zum Teufel p zeigen sie nicht wirklich, was sie mit ihren Anweisungen meinen. Hier ist, was es sagt:

  

Anstatt nur die gesamte literale Zeichenfolge zu speichern, die hier eingebettet ist   das            * Programm, konstruiere den Schlüssel zur Laufzeit aus Stücken oder            * Verwenden Sie Bit-Manipulation (z. B. XOR mit einer anderen Zeichenfolge) zum Ausblenden            * Der eigentliche Schlüssel. Der Schlüssel selbst ist keine geheime Information, aber wir tun es nicht            * wollen es einem Angreifer leicht machen, den öffentlichen Schlüssel durch einen zu ersetzen            * ihrer eigenen und dann gefälschte Nachrichten vom Server.

Also, wie genau könnte eine Person das tun?

    
Plastic Sturgeon 20.06.2013, 04:01
quelle

3 Antworten

2

Android Entwickler möchte den "öffentlichen Schlüssel" sagen, den Sie mit Google Play für jede Zahlung, die Sie mit Ihrer Anwendung tun möchten, synchronisieren möchten, sollte es nicht direkt in Ihrem App-Quellcode verwendet werden, weil es leicht von gehackt werden kann irgendjemand. So ist eine Möglichkeit, Ihren öffentlichen Schlüssel auf der Serverseite zu speichern und sobald Sie eine Antwort von Google Play erhalten, um den Schlüssel zu überprüfen, senden Sie diese Antwort an den Server und führen Sie Ihre Operation dort auf dem Server durch.

%Vor%     
skygeek 20.06.2013, 04:09
quelle
1

Es ist eine sehr grundlegende Information, die sie zu sagen versuchen. Lassen Sie uns dieses Beispiel sehen:

Einige Entwickler speichern ihre Lizenz möglicherweise selbst als String:

%Vor%

Und sie möchten vielleicht, dass Benutzer ihre Lizenznummer eingeben, also werden sie so etwas tun:

%Vor%

Jetzt kann ich diese App dekompilieren und bekomme alle Lizenzen: D

Wenn Sie oben nichts in Ihrem Code gehabt hätten, wäre die einzige Möglichkeit, Ihre Lizenzierung zu umgehen, folgende: Wenn es lokal gemacht wird, könnte es sich in den Speicher hacken, wie es GameCIH tut. Speicher-Hacking ist nur ein Beispiel, es gibt verschiedene Dinge, die Angreifer tun könnten. Du kannst sie nicht aufhalten, aber du kannst ihr Leben härter machen.

    
Milan 20.06.2013 04:13
quelle
1

Wie bereits erwähnt , Sicherheit durch Unklarheit funktioniert nicht, so dass Sie die Dokumentation ignorieren können.

    
user2768 01.10.2014 08:34
quelle