Cuprins:
- Cod de obstrucție
- Modificarea bibliotecii de licențe
- Faceți ca aplicația dvs. să fie rezistentă
- Mutați verificarea licenței pe un server la distanță
Securitatea, pirateria și prevenirea aplicațiilor sunt subiecte recente, cu motive întemeiate. Fără o piață de aplicații robustă, numărul de sute de mii de activări noi în fiecare lună nu va putea fi menținut, iar o piață robustă nu este posibilă fără sprijinul dezvoltatorilor. Am văzut că Android are o soluție încorporată pentru a preveni pirateria și am văzut, de asemenea, cât de ușor este să te ocolești dacă ești hotărât și dacă schema este lăsată în forma sa de bază. Google a înțeles că au mai multe informații pe care să le comunice despre întregul subiect și că sunt fidele cuvântului lor, au făcut acest lucru. După pauză, să aruncăm o privire la metodele unui Googler pentru a oferi un mod sigur, sigur și ușor de utilizat de a proteja aplicațiile.
Serviciul de licențiere Android Market și Biblioteca de verificare a licențelor sunt instrumente puternice pentru ca dezvoltatorii să încerce să eludeze pirateria aplicației. Problema, așa cum s-a demonstrat recent, este că din cutie nu este foarte greu de ocolit. Deoarece oamenii sunt oameni și mulți vor petrece mai mult timp decât merită să spargeți o aplicație de 99 de cenți de pe piață, Trevor Johns (unul dintre inginerii de programe Dev. Android) a pus la dispoziție un set util de sfaturi pentru a consolida instrumentele furnizate, și face ca măsurile anti-piraterie să funcționeze mai bine.
Cele patru domenii cheie sunt:
Cod de obstrucție
Obfuscarea codului este un truc folosit de dezvoltatori care schimbă codul sursă, făcând cunoscute funcțiile, pachetele, clasele și variabilele foarte greu de urmărit, oferind un alias fiecăruia. Luați această funcție imaginară de exemplu - onRedraw (). Fiecare loc în care utilizați funcția din codul sursă, este chiar acolo, ușor de citit și posibil de exploatat. Un obfuscator de cod va înlocui funcția care poate fi citită de om cu un alias generat - wy23 () este un exemplu bun. O privire rapidă (sau un instrument automat) în căutare de funcții nu va funcționa, deoarece este nevoie de câteva săpături serioase pentru a vedea exact ce înseamnă wy23 (). Există coduri comerciale obfyousk8tors cu cod comercial (ha!), Iar Trevor recomandă ProGuard și planifică un articol viitor pe blogul dezvoltatorilor Android despre colaborarea cu ProGuard.
Modificarea bibliotecii de licențe
Google recomandă dezvoltatorilor să schimbe cât mai mult sursa bibliotecilor de licențe furnizate, păstrând în același timp funcția inițială. Acesta este un caz în care calea parcursă este lipsită de importanță, atâta timp cât este atinsă destinația. Dezvoltatorii pot îngropa funcțiile în cazul în care / apoi declarații, bucle, chiar și mvezi întreaga bibliotecă în propriul bloc de cod.
Pentru a face un pas mai departe, dezvoltatorii sunt încurajați să utilizeze verificări de hash și alte metode de criptare pentru a genera constante noi și să schimbe codul pentru a căuta noile constante în loc să le folosească pe cele furnizate de Google în codul de exemplu. Asigurați-vă că apăsați pe linkul sursă pentru a vedea un exemplu excelent chiar de la Google care arată cum se poate face acest lucru. Și nu uita să obfuscăți codul aici!
Faceți ca aplicația dvs. să fie rezistentă
E simplu. Pentru ca un hoț de hackeri să elimine licența din aplicația dvs., el sau ea trebuie să inverseze inginerul și să reconstruiască aplicația. Utilizați verificările CRC pentru a preveni acest lucru. Google are și un alt instrument util pentru această zonă - verificați dacă Android Market a fost sursa de instalare a aplicației dvs. și, dacă nu, nu lăsați-o să funcționeze. Din nou, există un exemplu extrem de detaliat la link-ul sursă.
Mutați verificarea licenței pe un server la distanță
Dacă aplicația dvs. folosește componente online, Google vă recomandă să mutați informațiile și răspunsul LVL din aplicație și pe serverul dvs. Când utilizatorul folosește aplicația, serverul dvs. verifică cu Google, iar dacă totul nu este kosher, nu se servește conținut. Deși este simplu, de asemenea, este foarte eficient pentru a evita acest lucru, cineva ar trebui să schimbe nu numai aplicația, ci și conținutul pe serverul tău. Amintiți-vă, datele locale nu sunt niciodată în siguranță, dar un server întreținut și securizat corespunzător este o piuliță destul de dură de spart.
În sfârșit, Google își amintește de noi - utilizatorii finali și recomandă utilizarea acestor trucuri într-un mod transparent și ușor de utilizat. Dacă sunteți un dezvoltator de aplicații interesat de integritatea și prevenirea pirateriei aplicației dvs. (și ar trebui să fiți!), Asigurați-vă că consultați link-ul sursă. Este foarte geeky și fuzzy și spune totul pentru tine. Pentru ceilalți dintre noi, aceasta este mai mult o amintire despre modul în care Goggle iubește că este dev, și ne putem simți bine știind că G mare face ceea ce poate pentru a ajuta.