Indholdsfortegnelse:
- Kode tilsløring
- Ændring af licensbiblioteket
- Gør din applikation mod manipulation
- Flyt licensverifikationen til en ekstern server
Applikationssikkerhed, piratkopiering og forebyggelse er alle nye emner for nylig, med god grund. Uden en robust applikationsmarked er det ikke nødvendigt at vedligeholde hundreder af tusinder af nye aktiveringer hver måned, og et robust marked er ikke muligt uden støtte fra udviklere. Vi har set, at Android har en indbygget løsning til at forhindre piratkopiering, og vi har også set, hvor let det er at komme omkring det, hvis du er bestemt, og hvis ordningen er tilbage i sin grundlæggende form. Google antydede, at de havde nogle flere oplysninger at dele om hele emnet, og tro mod deres ord har de gjort det. Lad os se efter pausen på en Googlers metoder til at give en sikker, sikker og brugervenlig måde at beskytte applikationer på.
Android Market Licensing Service og License Verification Library er effektive værktøjer til udviklere til at forsøge at omgå program piratkopiering. Problemet, som for nylig blev dæmpet op, er, at det ikke er meget vanskeligt at omgå boksen ud af boksen. Da folk er mennesker, og mange vil bruge mere tid, end det er værd at knække en 99-centre-applikation fra markedet, har Trevor Johns (en af Android's Dev. Programingeniører) lagt et praktisk sæt tip til at styrke de medfølgende værktøjer, og få anti-piratkopiering til at fungere bedre.
De fire nøgleområder er:
Kode tilsløring
Kodehindring er et trick, der bruges af udviklere, der ændrer kildekoden, hvilket gør kendte funktioner, pakker, klasser og variabler meget svære at spore ved at give et alias til hver. Tag f.eks. Denne imaginære funktion - onRedraw (). Hvert sted, du bruger funktionen i kildekoden, er den lige der, let at læse og muligvis udnytte. En kodehæmmende vil erstatte den menneskelige læsbare funktion med et genereret alias - wy23 () er et godt eksempel. Et hurtigt blik (eller et automatiseret værktøj) på udkig efter funktioner fungerer ikke, da det kræver en seriøs grave at se nøjagtigt, hvad wy23 () virkelig betyder. Der er kommercielle Java-kode obfyousk8tors (ha!) Tilgængelige, og Trevor anbefaler ProGuard og planlægger en fremtidig artikel på Android-udviklerbloggen om at arbejde med ProGuard.
Ændring af licensbiblioteket
Google anbefaler, at udviklere ændrer kilden til de medfølgende licensbiblioteker så meget som muligt, mens de stadig beholder den originale funktion. Dette er et tilfælde, hvor den vej, der er taget, er vigtig, så længe destinationen er nået. Udviklere kan begrave funktion i, hvis / derefter udsagn, sløjfer, endda mve hele biblioteket i deres egen kodeblok.
For at gå et skridt videre opfordres udviklere til at bruge hashchecks og andre krypteringsmetoder til at generere nye konstanter og ændre koden for at se efter de nye konstanter i stedet for at bruge dem, der er leveret af Google i eksempelkoden. Sørg for at ramme kildelinket for at se et godt eksempel lige fra Google, der viser, hvordan dette kan gøres. Og glem ikke at tilsløre koden her heller!
Gør din applikation mod manipulation
Denne er enkel. For at en hacker- tyv skal fjerne licenserne fra din ansøgning, er han eller hun nødt til at vende ingeniør og genopbygge applikationen. Brug CRC-kontroller for at forhindre dette. Google har også et andet praktisk værktøj til dette område - kontroller, at Android Market var installationskilden til din applikation, og hvis ikke, lad det ikke køre. Igen er der et flot eksempel på dette ved kildelinket.
Flyt licensverifikationen til en ekstern server
Hvis din applikation bruger onlinekomponenter, anbefaler Google, at du flytter LVL-oplysninger og -svar ud af appen og videre til din server. Når brugeren bruger appen, tjekker din server hos Google, og hvis alt ikke er kosher, serveres intet indhold. Selvom det er enkelt, er det også meget effektivt, at man kommer rundt på dette, men nogen er nødt til at ændre ikke kun applikationen, men også indholdet på din server. Husk, lokale data er aldrig sikre, men en korrekt vedligeholdt og sikret server er en temmelig hård nød at knække.
Til sidst husker Google os - slutbrugerne og anbefaler, at disse tricks bruges på en måde, der er gennemsigtig og brugervenlig. Hvis du er en applikationsudvikler, der er interesseret i integriteten og piratkopiering af din app (og det skulle du være!), Skal du kontrollere kildelinket. Det bliver alt nørdigt og uklar og lægger det hele ud for dig. For resten af os er dette mere en påmindelse om, hvordan Goggle elsker sine dev'er, og vi kan føle os godt i at vide, at store G gør hvad det kan for at hjælpe.