Az APK Signature Scheme v3-at az Android nyílt forráskódú projektjében észlelték, és úgy tűnik, hogy támogatja a kulcsok elforgatását.
Ha Ön fejlesztő, vagy bármilyen módon jártas a módosított APK-fájlok visszafejtésében, módosításában és/vagy telepítésében, valószínűleg ismeri az alkalmazás-aláírásokat. Egyszerűen fogalmazva, az Android egy alkalmazást ír elő kell ugyanazzal a kulccsal kell aláírni, hogy a rendszer lehetővé tegye a kérdéses alkalmazás frissítését. Az Android ezt az APK aláírásának ellenőrzésével ellenőrzi.
APK aláírások nagyon alapvető biztonsági intézkedés az Androidban, amiről korábban már beszéltünk. Alapvetően minden aláírás egyedi fejlesztőre vagy fejlesztői csoportra vonatkozik, tehát ha egy APK-ban lévő aláírás/tanúsítvány nem érvényes, ill. nem egyezik az eredeti alkalmazáséval, a telepítés meghiúsul, így megakadályozza a manipulált vagy hamis APK-fájlok telepítését Android-eszközén. eszköz. Az aláírási kulcsokat a fejlesztőnek is biztonságosan meg kell őriznie, mivel ezek létfontosságúak az alkalmazásfrissítés ellenőrzéséhez és végső soron kiküldéséhez. Szerencsére az APK-k aláírására szolgáló aláírási séma újabb verziót kap – v3-at –, amely úgy tűnik, hogy kényelmes funkciót ad hozzá, miközben fenntartja a magas biztonsági szabványokat.
APK aláírási séma v1 és v2
Nem telt el túl sok idő az APK Signature Scheme jelenlegi v2-es verziója óta, megjelent a fejlesztők számára. Végül is alig mutatták be nekünk az Android 7.0 Nougat bevezetésével, 2016 végén. A v2 aláírási séma használatát az Android 7.0+ alkalmazásokban erősen támogatták, mivel ez egy sor lényeges javítást és javítást hozott magával. biztonsági fejlesztések: míg a v1 csak a JAR-t írta alá, a v2 további lépéseket tesz az egész integritásának védelme érdekében fájlt. Az aláírási sémák azonban nem kompatibilisek visszafelé, és az Android Marshmallow és régebbi verzióihoz v1 aláírásra van szükség az alkalmazásokhoz.
Hacsak nem kifejezetten a Nougat vagy magasabb verziójú felhasználókat szolgálja ki, az ideális forgatókönyv az lenne, ha a két aláírási sémát egymás mellett használnák, először a v1-el kell aláírni, majd a v2-vel lemondani. Így a Nougat és újabb verziók felismerik a v2 aláírást, míg a Marshmallow és az alacsonyabbak a v1 aláírást.
A csak v1 használata azonban erősen ellenjavallt egy sor sebezhetőség és más biztonsági probléma miatt, amelyek közül a legfigyelemreméltóbb a Janus sebezhetőségét, amely lehetővé teszi a támadók számára, hogy közvetlenül támadják meg és módosítsák az APK-kat az aláírások befolyásolása nélkül. A ritkán frissülő népszerű alkalmazások, például az Instagram vagy a Snapchat csak v1 aláírással vannak aláírva, ami azt jelenti, hogy ki vannak téve ezeknek a problémáknak.
APK aláírási séma v3
A v3 legnagyobb főcíme, ami a v2 átdolgozása lesz, az lesz kulcsforgatás támogatása. A v3 aláírási séma bemutatja az APK Signer Lineage-t, amely szerint az egyik elkövet, "az egyes ősökkel aláírt tanúsítványok történetét tartalmazza, amelyek igazolják leszármazottja érvényességét. Minden további leszármazott egy új identitást jelent, amely APK aláírására használható. Ily módon a származás tartalmaz egy forgási igazolást, amellyel az azt tartalmazó APK bemutathatja másoknak felek számára, hogy rábízható legyen a jelenlegi aláíró tanúsítványa, mintha azt valamelyik régebbi tanúsítványa írta volna alá azok."
A kulcsforgatás több szempontból is nagyszerű funkció a fejlesztők számára. Kezdetben ez hasznos lehet az egyetlen alkalmazáson dolgozó csapatok fejlesztői számára, így a fejlesztőknek nem kell megosztaniuk aláírási kulcsaikat a csapattal. Mivel az alkalmazásnak pontosan ugyanarra az aláírásra van szüksége a frissítéshez, az összes alkalmazást ugyanannak a fejlesztőnek vagy egy csoportnak kell lefordítania. a fejlesztők ugyanazzal a kulccsal dolgoznak, csökkentve a biztonságot (nagyobb az esély a kulcs ellopására) és lelassítva a fejlesztést.
Ezenkívül hasznos lehet abban az esetben is, ha egy fejlesztőnek ellopták/elvesztették az aláírási kulcsát, ami általában azt jelenti, hogy az alkalmazást egy másik csomagban újra fel kell tölteni a Play Áruházba név. Ez egyáltalán nem ritka eset, hiszen régen még a Google is elvesztette a Google Authenticator alkalmazás aláíró kulcsát, ami miatt újra közzétették egy másik csomagnéven. A Google azóta lehetőséget biztosít az aláíró kulcsok biztonságos tárolására a felhőben Google Play App Signing, de a billentyűk elforgatása lehetővé tenné az alkalmazás frissítésének folytatását feltételezett hiba esetén.
Mikor jelenik meg?
Bár a nagyobb kényelem kedvéért szívesen kipróbálná, a v3 aláírási séma az AOSP körül lebeg Gerrit Code Review webhely, és magukat a kötelezettségvállalásokat jelenleg még nem egyesítették a fő ágba, így nem áll készen. még. Arra kell számítanunk, hogy a v3 aláírási séma az Android P közelgő kiadásával a fejlesztők kezébe kerül, ha az előző Android Nougat v2-es kiadás mond valamit.
Azt is meg kell jegyeznünk, hogy a billentyűforgatás valószínűleg nem az egyetlen különbség a v2-höz képest. Az APK Signature Scheme v3 még folyamatban van, így a v3 aláírási séma tényleges fejlesztéseit akkor láthatjuk majd, amikor a jövőben megjelenik a teljes dokumentáció.