App kopieren...

M

Muecke1982

Gast
hallo miteinander,

wenn ich es denn mal geschafft habe alles zu Installieren würde ich gerne ein paar APP´s Programmieren.

ich habe da vorweg aber mal ne Frage.

ich kann meine APP je überall anbieten z.B. auch auf meiner HP und nicht im Markt, wenn ich jetzt aber eine APP mache die Kostenpflichtig sein soll, und die in den Markt stelle und sich die jemand herunter geladen (gekauft) hat, kann der die dann auch von Seinem handy aus auf einen PC Kopieren und dann auf ein anderes Handy Kopieren?

ich möchte nicht wissen wie das geht sondern ob das geht und vielleicht sogar wie man so was verhindern kann.

hoffe das man versteht was ich meine.
 
geht, kannste nicht verhindern.
 
Das bedeutet das wen ich es auf den Handy habe kann ich die so kopieren wie möchte und kann es nicht verhindern wie das die app kopiert wird das finde ich sehr schade.
 
Ist ja auf jeder Plattform möglich leider.

Gesendet mit der Android-Hilfe.de-App
 
Je nachdem was für eine Anwendung du vorhast, zu programmieren, kannst du durch ein Authentifizierungssystem verhindern, das sich das Kopieren lohnt.

Beispiel: Wenn ich ein Spiel Programmiere, bei dem man sich anmelden muss, kann ich eine "pro" Version ohne Werbung und eine "free" Version mit Werbung anbieten.
Wenn jetzt ein Spieler die "Pro" Version kauft, kann ich auf meinem Server in der Datenbank eintragen das der Spieler der die pro Version hat keine Werbung mehr angezeigt bekommt.
Das führ dazu, dass jemand der sich die "pro" Version kopiert, aber das flag in der Datenbank nicht hat, Werbung angezeigt bekommt. Wohingegen ein Anwender der das Flag hat, selbst in der „free“ Version keine Werbung angezeigt bekommt
 
Für mein Verständnis:

- kann man die App "Einfach" kopieren? oder muss ich da schon einen "Heck" vornehmen das ich daran komme?


@Maddi: he he, jetzt wies ich auch endlich mal was das mit der pro und nicht pro Versionen im Markt sind :).
 
Es gibt einen Mechanismus, dass nur Leute mit root die App runterkopieren können. Bringt aber nix, denn einer reicht, damit der Rest der Welt sie wieder draufkopieren kann. ;)

Das bedeutet das wen ich es auf den Handy habe kann ich die so kopieren wie möchte und kann es nicht verhindern wie das die app kopiert wird das finde ich sehr schade.
Wenn das nicht möglich wäre, hätte ich kein android.
 
Informiere dich über Android LVL.
Das ist ein Service, mit dem du überprüfen kannst, ob die App gekauft wurde.

Ein Kopieren ist dann möglich, aber du merkst, dass die App nicht gekauft wurde und kannst entscheiden, was passieren soll.

Das ist der offiziell empfohlene Weg.
 
Zum "aushebeln" der LVL gibt es verschiedene Varianten. Grundsätzlich kann man zwischen a) Manipulation der APK und b) Manipulation zur Laufzeit unterscheiden.

a) lässt sich durch Kombinationen von Obfuscating und Validierung der APK-Signierung relativ gut verhindern.

b) ist die "fiesere" Variante. Es kursiert auf diversen Seiten eine App, die die kompilierten Klassen (classes.dex) im Dalvik-Cache auf byte-Ebene manipuliert. Dieses lässt sich durch Umschreiben der Schnittstellen und Methoden in der LVL-Bibliothek "blockieren", so dass halt die Byte-Muster die beim Ausführen der Crack-App genutzt werden nichtmehr vorhanden sind.

Zur LVL und ein paar Ansätzen wie man das ganze noch absichert gibt es in einem Google IO Vortrag (klick) - allerdings 100%ig sicher sind die Methoden hier auch noch nicht, da sie b) nicht beachten!

Ich würde mittlerweile dazu übergeben eine Gesamt-App zu schreiben und die kostenpflichtigen Teile per In-App Käufe abzurechnen, denn hierfür gibt es meines Wissens nach noch keine Cracks.
 
sixi schrieb:
!

Ich würde mittlerweile dazu übergeben eine Gesamt-App zu schreiben und die kostenpflichtigen Teile per In-App Käufe abzurechnen, denn hierfür gibt es meines Wissens nach noch keine Cracks.

InApp purchase ist natürlich ein super gedanke, da geb ich dir vollkommen recht.

aber die sicherheit dabei hängt von deiner implementation ab. Wenn du zb einfach werbung nach in app purchase ausblenden willst, musst du das ja irgendwo lokal speichern. Je nach Implementation des Flags, ist es sicherer oder weniger sicher.

Fix ist nur:
es gibt immer einen, der sich die zeit nimmt und nach etwas sucht, um sich 0,99 zu sparen. Wenn er in der Zeit gearbeitet hätte, hätte er wohl ein vielfaches davon verdient :D
 
sixi schrieb:
b) ist die "fiesere" Variante. Es kursiert auf diversen Seiten eine App, die die kompilierten Klassen (classes.dex) im Dalvik-Cache auf byte-Ebene manipuliert. Dieses lässt sich durch Umschreiben der Schnittstellen und Methoden in der LVL-Bibliothek "blockieren", so dass halt die Byte-Muster die beim Ausführen der Crack-App genutzt werden nichtmehr vorhanden sind.

werden die Dateien nicht mit Prüfsummen validiert?
 
@swordi: sicherlich, aber das halbwegs manipulationssicher zu speichern sollte ja nicht das Problem sein. Ich würde da so an 'nen Hash aus App-Signatur + In-App-Item-ID + DeviceID denken... ausgehend davon, dass die APK selbst nicht manipuliert ist sollte das recht sicher sein. Das es natürlich "immer irgendwie geht" - keine Frage :)

@Fr4gg0r: Jain. Meines Wissens nach werden die Checksummen nur beim Booten überprüft und im Fehlerfall die classes.dex aus der APK wieder in den Cache kopiert. Hier wurde in der Crack-App aber natürlich vorgesorgt und nach dem BOOT_COMPLETED-Broadcast wird wieder manipuliert...
 
geil... :D
 

Ähnliche Themen

S
Antworten
33
Aufrufe
2.655
Sempervivum
S
Manny87
  • Manny87
Antworten
11
Aufrufe
161
swa00
swa00
W
Antworten
2
Aufrufe
739
rene3006
R
Zurück
Oben Unten