Služby licencování Google

Před Google Play se aplikace pro Android spoléhaly na starší ochranu proti kopírování, kterou poskytuje trh Google, aby se zajistilo, že aplikace na jejich zařízeních můžou spouštět jenom autorizovaní uživatelé. Omezení ochranného mechanismu pro kopírování udělalo pro ochranu aplikací méně než ideální řešení.

Licencování Google je náhradou tohoto staršího mechanismu ochrany před kopírováním. Licencování Google je flexibilní Zabezpečená síťová služba, kterou můžou aplikace pro Android dotazovat, aby zjistili, jestli je aplikace licencovaná ke spuštění na daném zařízení.

Licencování Google je flexibilní v tom, že aplikace pro Android mají plnou kontrolu nad tím, kdy se má tato licence kontrolovat, jak často se má licence kontrolovat a jak se má zpracovat odpověď z licenčního serveru.

Licence Google je zabezpečená v tom, že každá odpověď je podepsaná pomocí páru klíčů RSA, který se sdílí výhradně mezi Google Play serverem a aplikací. Google Play poskytuje veřejný klíč pro vývojáře, který je vložený v aplikaci pro Android a který slouží k ověření odpovědí. Google Play server udržuje privátní klíč interně.

Aplikace, která implementuje licencování Google, vytvoří požadavek na službu hostovanou aplikací Google Play na zařízení. Google Play pak pošle tuto žádost na licenční server Google, který odpoví na stav licence:

Diagram pracovního postupu licenčního serveru

Výše uvedený diagram znázorňuje tento pracovní postup:

  • Aplikace poskytuje název balíčku, hodnotu nonce (kryptografická ověřovací data), která se používá k ověření odpovědi serveru a zpětnému volání, které může zpracovat odpověď asynchronně.

  • Google Play poskytuje informace, jako je například účet Google a samotné zařízení, například číslo IMSI.

Služba licencování Google je také klíčovou součástí souborů rozšíření APK (které jsou popsány dále v tomto dokumentu). APK rozšiřující soubory využívají služby Licencování Google k získání adres URL rozšiřujících souborů, které se stáhnou.

Požadavky

Aplikace, které nejsou zakoupené prostřednictvím Google Play, nebudou od služby Licencování Google dostávat žádné výhody. Pokud v zařízení není nainstalováno Google Play, aplikace, které používají licenční služby, budou na tomto zařízení nadále fungovat normálně.

Google Play vyžaduje přístup k Internetu. Aplikace může licenci ukládat do mezipaměti, aby vyhovovala scénářům, kde zařízení nemá přístup k licenčním serverům Google Play.

Bezplatné aplikace vyžadují licencování Google jenom v případě, že aplikace používá soubory rozšíření APK.