Pár napja jött a hír, hogy a HTC ezentúl nyitott bootloader-rel szállítja a telefonjait – sokak nagy örömére. Mindenképp jó pont, hogy a gyártó figyelembe vette a vásárlói visszajelzéseket. Könnyű elképzelni azonban, hogy sokak számára a hivatkozott hír, illetve egyáltalán maga a bootloader fogalma nem mond semmit. Ebben a bejegyzésben igyekszem közérthető nyelven tisztába tenni a sokszor rejtélyesnek tűnő fogalmat.
Kit érdekel egyáltalán a bootloader vagy a ROM-csere?
Bizonyos szemszögből nézve meglehetősen kevés embert. A naponta aktivált 400.000 Androidos telefon legnagyobb része olyan kezekbe kerül, ahol egyáltalán nem fontos hogy mi az a bootloader. Az Android mára szinte hétköznapivá vált, és az hogy ezt a cikket olvasod valószínűleg azt jelenti, hogy a tapasztaltabb felhasználók közé sorolod magad.
Emitt mondhatjuk azt, hogy a HTC vagy a Motorola zárt bootloader politikája – annak ellenére hogy engem például érintett a dolog – nagyon kis hatással van az Android platform összképére nézve. Ugyanakkor ez azt is jelenti, hogy a Sony Ericsson vagy a HTC az összes vásárló igényét ki szeretné elégíteni. Még azt a kevés, ugyanakkor “hangos” csoportot is, akik “még jobban hackelhető” telefont szeretnének maguknak.
A témakör tehát valójában azokat érdekli, akik totálist kontrollt akarnak a telefonjukon futó szoftver felett. Ők a programozók, a fejlesztők, téma-készítők, hackerek, akik szeretnék teljes mértékben optimalizálni és még jobbá tenni a rendszert, amit használnunk.
Miért akarnak a gyártók / szolgáltatók zárt bootloadert?
Mivel ezzel tudják biztosítani mind a felhasználók érdekeit, mind a saját anyagi biztonságukat.
Amikor azt mondjuk, hogy zárt bootloader, valójában arról beszélünk, hogy induláskor a telefon leellenőrzi a rajta levő szoftver fontos komponenseit bootolás közben, egy digitális aláírást keresve.
Még egyszerűbben: Amikor bekapcsoljuk a HTC vagy Motorola telefonunkat, a bootloader indítja el a dolgokat, majd átadja a vezérlést a boot-képnek (a lemez azon része, ami az induláshoz szükséges fájlokat tartalmazza). A boot-kép betölti a telefon kernelét, majd az Androidot, ahogyan azt az indítófájlokban található utasítások megadják. Ezt a boot-képet úgy tudod a telefonra rakni, hogy a telefon belső memóriájára flasheled (“telepíted”) – nem a RAM-ba, hanem a háttértárra. És emiatt veszélyes a művelet. Ha itt elrontasz valamit, akkor könnyen téglát csinálhatsz a mobilodból.
Ha zárt bootloader-ed van, akkor csak olyan boot-képeket flashelhetsz a a telefonra, amik digitális aláírással rendelkeznek. Nem rakhatod fel a saját készítésű bootloader-t a telefonodra. A Recovery-vel, tehát a telefon helyreállító menüjével ugyanaz a helyzet. A gyártó aláírását nem lehet “meghamisítani”. Ez pedig azt jelenti, hogy induláskor nem tudunk főzött kernel, vagy egyéb fájlokat betölteni zárt bootloader esetében.
Visszatérve a biztonság részhez: A zárt bootloaderrel rendelkező telefonokon csak a gyártó által jóváhagyott rendszer tud futni. Ezzel biztosítja azt, hogy telefon rendeltetésszerűen működjön. Ez lenne a tökéletes megoldás, csakhogy a probléma ott kezdődik, hogy időnkét bele-bele csúszik a gyári rendszerbe is egy-két bug vagy biztonsági rés. Persze legtöbben az Androidos felhasználók közül még nyitott bootloader esetén sem tudnák a szükséges javítócsomagot vagy bugfixet feltenni.
Megjegyzésként muszáj megemlíteni azt is, hogy extrém esetekben mérhető anyagi kárt lehet okozni a szolgáltatóknak. Bizonyos készülékeken például el lehet érni, hogy a telefon elkezdjen belföldön roamingolni, tehát egy másik szolgáltató adatkapcsolatát használni.
De több zárt bootloaderes készüléken fut főzött ROM!
Valóban, eddig a legtöbb esetben a fejlesztők az ügyességüket kihasználva sok készülék esetében meg tudták oldani a főzött ROM telepítésest. Ez azonban sokszor a szerencsének köszönhető, hiszen egy-egy biztonsági rés felfedezése után a gyártó általában befoltozza azt, és a következő készüléknél valami új megoldást kell találni. Nem minden esetben lehet erre alapozni.
Mit kezdek én egy nyitott bootloader-rel?
Bármit.
Egy nyitott bootloader-rel rendelkező telefonok esetében a hacker típusú fejlesztők rekord gyorsasággal elkészülnek a rootolással, főzött ROM-okkal, más készülékekek szoftverének portolásával – mindazzal, amit sokan annyira szeretünk az Androidban. Plusz, a nyitott bootloader = főzött kernel, ami processzor túlhúzást, USB-hoszt módot, és minden olyan egyéb nyalánkságot jelent, amit szinte lehetetlen zárt bootloader-rel megoldani. És természetesen nem szabat elfeledkezni a MIUI-ról és a CyanogenMod-ról sem, amiknek hála sokunk készülékén futhat a legkésőbbi gyári szoftvernél magasabb verziószámú Android.
Örülhetünk, hogy a dolgok olyan irányt vettek, amilyet. Ha szeretnéd hackelni a HTC telefonodat, akkor ezentúl megteheted. Ha nem, akkor semmi extrát nem kell csinálnod, és élvezheted a stabilitást és a biztonságot, amit a gyártó biztosít. Mindenesetre remélhetőleg pár dolgot sikerült tisztába tenni a bootload-rel kapcsolatban.









Olvastam már az eredeti szöveget angolul, jó cikk.
[...] A HTC tavaly elkötelezte magát a nyitott bootloader mellett, ami nagyobb szabadságot biztosít a fejlesztőknek, és persze több főzött ROM-ot a felhasználóknak. (A bootloader-ről többet ebben a cikkben.) [...]