A teljes lemezes titkosítás az Android-eszközön lévő összes felhasználói adat titkosítása egy titkosított kulcs segítségével. Miután az eszköz titkosítva van, minden felhasználó által létrehozott adat automatikusan titkosításra kerül, mielőtt a lemezre kerül, és minden olvasás automatikusan visszafejti az adatokat, mielőtt visszaadja azokat a hívó folyamatnak.
A teljes lemezes titkosítás a 4.4-es Androidban került bevezetésre, de az Android 5.0 bevezette ezeket az új funkciókat:
- A gyors titkosítás, amely csak a használt blokkokat titkosítja az adatpartíción, hogy az első indítás ne tartson sokáig. Jelenleg csak az ext4 és az f2fs fájlrendszerek támogatják a gyors titkosítást.
- Hozzáadta a
forceencryptfstab flag-et az első indításkor történő titkosításhoz. - Hozzáadta a minták és a jelszó nélküli titkosítás támogatását.
- Hozzáadta a titkosítási kulcs hardveresen támogatott tárolását a Trusted Execution Environment (TEE) aláírási képességének használatával (például egy TrustZone-ban). További részletekért lásd: A titkosított kulcs tárolása.
Vigyázat! Az Android 5.0-ra frissített, majd titkosított készülékek a gyári adatok visszaállításával visszaállíthatók titkosítatlan állapotba. Az első indításkor titkosított új Android 5.0készülékek nem állíthatók vissza titkosítatlan állapotba.
- Hogyan működik az Android teljes lemezes titkosítása
- Folyamatok
- Új eszköz titkosítása forceencrypt
- Egy meglévő eszköz titkosítása
- Titkosított eszköz indítása alapértelmezett titkosítással
- Titkosított eszköz indítása alapértelmezett titkosítás nélkül
- Failure
- A titkosított kulcs tárolása
- A jelszó módosítása
- A titkosítási tulajdonságok
- Vold properties
- init properties
- Init actions
Hogyan működik az Android teljes lemezes titkosítása
Az Android teljes lemezes titkosítása a dm-crypton alapul, amely egy kernelfunkció, amely a blokkeszköz rétegén működik. Emiatt a titkosítás működik a beágyazott MultiMediaCard (eMMC) és hasonló flash eszközökkel, amelyek a kernel számára blokkeszközként jelennek meg. A titkosítás nem lehetséges a YAFFS-sel, amely közvetlenül a nyers NAND flash chiphez beszél.
A titkosítási algoritmus 128 Advanced Encryption Standard (AES), CBC (Ccipher-block chaining) és ESSIV:SHA256. A főkulcs titkosítása128 bites AES-szel történik az OpenSSL könyvtár hívásain keresztül. A kulcshoz legalább 128 bites kulcsot kell használni (a 256 bites választható).
Megjegyzés: Az OEM-ek 128 bites vagy magasabb titkosítást használhatnak a mester kulcs titkosításához.
Az Android 5.0 kiadásban négyféle titkosítási állapot létezik:
- alapértelmezett
- PIN
- jelszó
- minta
A készülék az első indításkor véletlenszerűen generált 128 bites mester kulcsot hoz létre, majd egy alapértelmezett jelszóval és egy tárolt sóval hash-olja azt. Az alapértelmezett jelszó: “default_password “Az így kapott hash azonban egy TEE-n (például TrustZone) keresztül is aláírásra kerül,amely az aláírás hash-ját használja a mester kulcs titkosításához.
Az Android Open Source Project cryptfs.cppfile-ban megtalálható az alapértelmezett jelszó.
Amikor a felhasználó beállítja a PIN/pass vagy jelszót az eszközön, csak a 128 bites kulcsot titkosítja újra és tárolja. (azaz a felhasználói PIN/pass/minta módosításai NEM okozzák a felhasználói adatok újratitkosítását.) Vegye figyelembe, hogy a kezelt eszközre vonatkozhatnak PIN, minta vagy jelszó korlátozások.
A titkosítást a init és vold kezeli.init meghívja a vold-t, és vold beállítja a tulajdonságokat, hogy init-ben eseményeket váltson ki. A rendszer más részei is megnézik a tulajdonságokat, hogy olyan feladatokat hajtsanak végre, mint az állapotjelentés, a jelszó kérése vagy a gyári visszaállításra való felszólítás végzetes hiba esetén. A vold titkosítási tulajdonságainak meghívásához a rendszer a parancssori eszközvdc cryptfs parancsait használja: checkpw,restart, enablecrypto, changepw,cryptocomplete, verifypw, setfield,getfield, mountdefaultencrypted, getpwtype,getpw és clearpw.
A /data titkosításához, dekódolásához vagy törléséhez a /data nem lehet csatlakoztatva. Ahhoz azonban, hogy bármilyen felhasználói felület (UI) megjelenjen, a keretrendszernek el kell indulnia, és a keretrendszernek szüksége van /data futtatására. Ennek a rejtélynek a megoldására egy ideiglenes fájlrendszer van csatolva a /data-re.Ez lehetővé teszi az Android számára, hogy szükség szerint jelszavakat kérjen, előrehaladást mutasson, vagy adattörlést javasoljon. Ez azt a korlátozást jelenti, hogy az ideiglenes fájlrendszerről a valódi /data fájlrendszerre való átváltáshoz a rendszernek le kell állítania minden olyan folyamatot, amely nyitott fájlokat tárol az ideiglenes fájlrendszeren, és újra kell indítania ezeket a folyamatokat a valódi /data fájlrendszeren. Ehhez minden szolgáltatásnak a három csoport egyikébe kell tartoznia: core, main és late_start.
-
core: Indítás után soha nem áll le. -
main: Lezárás, majd újraindítás a lemezjelszó megadása után. -
late_start: Nem indul addig, amíg a/datatitkosítása és csatolása meg nem történt.
Ezek a műveletek kiváltásához a vold.decrypt tulajdonságot különböző karakterláncokra kell állítani.A szolgáltatások leállításához és újraindításához a init parancsok a következők:
-
class_reset: Leállítja a szolgáltatást, de lehetővé teszi, hogy a class_start segítségével újraindítható legyen. -
class_start: Egy szolgáltatás újraindítása. -
class_stop: Leállít egy szolgáltatást és hozzáad egySVC_DISABLEDjelzőt. A leállított szolgáltatások nem válaszolnak aclass_start-re.
Folyamatok
Egy titkosított eszközhöz négy folyamat tartozik. Egy eszköz csak egyszer van titkosítva, majd a normál indítási folyamatot követi.
- Egy korábban nem titkosított eszköz titkosítása:
- Új eszköz titkosítása a
forceencryptsegítségével: Kötelező titkosítás az első indításkor (az Android L-től kezdve). - Egy meglévő eszköz titkosítása: Felhasználó által kezdeményezett titkosítás (Android K és korábbiak).
- Új eszköz titkosítása a
- Titkosított eszköz indítása:
- Titkosított eszköz indítása jelszó nélkül: Beállított jelszóval nem rendelkező titkosított eszköz indítása (Android 5.0 és újabb operációs rendszert futtató eszközökre vonatkozik).
- Titkosított eszköz indítása jelszóval: Beállított jelszóval rendelkező titkosított eszköz indítása.
Ezeken az áramlatokon kívül az eszköz titkosítása is sikertelen lehet /data.Az egyes áramlatokat az alábbiakban részletesen ismertetjük.
Új eszköz titkosítása forceencrypt
Ez a normál első indítás egy Android 5. sz.0 eszköz.
- Érzékeli a titkosítatlan fájlrendszert
forceencryptflaggel/datanem titkosított, de titkosítani kell, mert aforceencryptelőírja.Unmount/data. - A
/datavold.decrypt = "trigger_encryption"titkosításának megkezdéseinit.rckiváltjavolda/datatitkosítását jelszó nélkül (Nincs beállítva, mert ez egy új eszköznek kell lennie.).) - Mount tmpfs
voldmountol egy tmpfs/data-t (aro.crypto.tmpfs_optionstmpfs opciókat használva) és avold.encrypt_progresstulajdonságot 0-ra állítja.voldelőkészíti a tmpfs/data-t egy titkosított rendszer indításához és beállítja avold.decrypttulajdonságot:trigger_restart_min_framework - Hozd fel a keretrendszert a haladás megjelenítésére
Miatt, hogy az eszközön gyakorlatilag nincs titkosítandó adat, a haladásjelző gyakran nem is fog megjelenni, mert a titkosítás olyan gyorsan történik. Lásd: Meglévő eszköz titkosítása a haladás felhasználói felületével kapcsolatos további részletekért.
- Amikor
/datatitkosítva van, vegye le a keretrendszertvoldállítsavold.decryptatrigger_default_encryptionértékre, ami elindítja adefaultcryptoszolgáltatást. (Ez elindítja az alábbi folyamatot az alapértelmezett titkosított felhasználói adatok mountolásához.)trigger_default_encryptionellenőrzi a titkosítás típusát, hogy lássa, hogy/datatitkosított-e apassworddel vagy anélkül. Mivel az Android 5.0 eszközök az első indításkor titkosítva vannak, nem kell jelszót beállítani; ezért dekódoljuk és csatlakoztatjuk a/data-t. - Mount
/datainitmajd csatlakoztatja a/data-t egy tmpfs RAMDiskre aro.crypto.tmpfs_options-ből átvett paraméterekkel, amelyek ainit.rc-ben vannak beállítva. - Start framework
A
vold-ttrigger_restart_framework-re állítja, ami folytatja a szokásos boot folyamatot.
Egy meglévő eszköz titkosítása
Ez történik, amikor titkosít egy titkosítatlan Android K vagy korábbiAndroid K vagy korábbi készüléket, amelyet L-re migráltak.
Ezt a folyamatot a felhasználó kezdeményezi, és a kódban “inplace titkosításnak” nevezik. Amikor a felhasználó kiválasztja az eszköz titkosítását, a felhasználói felület meggyőződik arról, hogy az akkumulátor teljesen fel van töltve és a hálózati adapter be van dugva, így elegendő energia áll rendelkezésre a titkosítási folyamat befejezéséhez.
Figyelmeztetés: Ha az eszköz lemerül és kikapcsol, mielőtt befejezné a titkosítást, a fájladatok részben titkosított állapotban maradnak. Az eszközt vissza kell állítani a gyári állapotba, és minden adat elveszik.
A helyben történő titkosítás engedélyezéséhez a vold egy ciklusba kezd, hogy beolvassa a valós blokkeszköz minden egyes szektorát, majd beírja azt a kriptoblokkeszközbe. vold az olvasás és írás előtt ellenőrzi, hogy egy szektor használatban van-e, ami sokkal gyorsabbá teszi a titkosítást egy új eszközön, amely kevés vagy semmilyen adatot nem tartalmaz.
Az eszköz állapota: Set ro.crypto.state = "unencrypted"és a on nonencrypted init trigger végrehajtása a bootolás folytatásához.
- Check password
A felhasználói felület meghívja a
voldparancsotcryptfs enablecrypto inplaceamelybenpasswda felhasználó lock screen jelszava. - Take down the framework
voldellenőrzi a hibákat, -1-et ad vissza, ha nem tud titkosítani, és kiírja az okot a naplóba. Ha tud titkosítani, akkor avold.decrypttulajdonságottrigger_shutdown_framework-ra állítja. Ennek hatására ainit.rcleállítja alate_startésmainosztályok szolgáltatásait. - Készítsen kriptalábrázolást
- Készítsen morzsafájlt
- Újraindítás
- Felismeri a morzsafájlt
- Elkezdi a titkosítást
/datavoldmajd beállítja a kripto leképezést, amely létrehoz egy virtuális kriptoblokk-eszközt,amely leképezi a valódi blokk-eszközt, de minden egyes szektort titkosít, amikor írják,és minden egyes szektort dekódol, amikor olvassák.voldezután létrehozza és kiírja a kripto metaadatokat. - Miközben titkosít, mount tmpfs
voldmountol egy tmpfs/data-t (aro.crypto.tmpfs_options-ből származó tmpfs opciókat használva) és a propertyvold.encrypt_progress-t 0-ra állítja.voldelőkészíti a tmpfs/data-t egy titkosított rendszer indításához és a propertyvold.decrypt-t beállítja:trigger_restart_min_framework - Bring up framework to show progress
trigger_restart_min_frameworkkazinit.rcindítja el amainszolgáltatási osztályt. Amikor a keretrendszer látja, hogyvold.encrypt_progress0-ra van állítva, előhívja a progress barUI-t, amely öt másodpercenként lekérdezi ezt a tulajdonságot és frissíti a progress bar-t.A titkosítási ciklus minden alkalommal frissítivold.encrypt_progress, amikor a partíció újabb százalékát titkosítja. - Amikor
/datatitkosítva van, frissítse a crypto footer-tAmikor
/datasikeresen titkosítva van,voldtörli aENCRYPTION_IN_PROGRESSjelzést a metaadatokban.Az eszköz sikeres feloldása után a jelszó felhasználásra kerül a mesterkulcs titkosításához, és frissül a crypto footer.
Ha az újraindítás valamilyen okból nem sikerül,
voldavold.encrypt_progresstulajdonságoterror_reboot_failed-re állítja, és a felhasználói felületnek egy üzenetet kell megjelenítenie, amely arra kéri a felhasználót, hogy nyomjon meg egy gombot az újraindításhoz. Ez várhatóan soha nem fordul elő.
Titkosított eszköz indítása alapértelmezett titkosítással
Ez történik, amikor egy titkosított eszközt jelszó nélkül indítunk el.Mivel az Android 5.0 eszközök az első indításkor titkosítva vannak, nem kell beállítottjelszónak lennie, ezért ez az alapértelmezett titkosítási állapot.
- Detect encrypted
/datawith no passwordMegállapítja, hogy az Android eszköz titkosított, mert
/datanem lehet csatlakoztatni, és aencryptablevagyforceencryptjelzők egyike be van állítva.voldbeállítja avold.decryptértékettrigger_default_encryption-re, ami elindítja adefaultcryptoszolgáltatást.trigger_default_encryptionellenőrzi a titkosítás típusát, hogy kiderüljön, hogy/datajelszóval vagy jelszó nélkül van-e titkosítva. - Decrypt /data
Elkészíti a
dm-crypteszközt a blokkeszköz felett, így az eszközhasználatra kész. - Mount /data
voldezután mountolja a dekódolt valódi/datapartíciót, majd előkészíti az új partíciót. Avold.post_fs_data_donetulajdonságot 0-ra állítja, majd avold.decryptttrigger_post_fs_data-re állítja. Ennek hatására ainit.rcfuttatja apost-fs-dataparancsokat. Ezek létrehozzák a szükséges könyvtárakatvagy linkeket, majd avold.post_fs_data_donetulajdonságot 1-re állítják.Mihelyt a
voldlátja az 1-et ebben a tulajdonságban, avold.decrypttulajdonságotvold.decrypt-re állítja:trigger_restart_framework.Ezáltal ainit.rcújra elindítja amainosztályú szolgáltatásokat, és alate_startosztályú szolgáltatásokat is elindítja a rendszerindítás óta először. - Start framework
Most a keretrendszer elindítja az összes szolgáltatását a visszafejtett
/datahasználatával,és a rendszer készen áll a használatra.
Titkosított eszköz indítása alapértelmezett titkosítás nélkül
Ez történik, amikor egy titkosított eszközt indítunk beállított jelszóval. Az eszköz jelszava lehet pin, minta vagy jelszó.
- Encrypted device with a password
Detect that the Android device is encrypted because the flag
ro.crypto.state = "encrypted"voldsetvold.decrypttotrigger_restart_min_frameworkbecause/dataiscrypted with a password. - Mount tmpfs
initöt tulajdonságot állít be a/dataszámára megadott kezdeti mount optionsgiven ainit.rc-től átadott paraméterekkel.Avoldezeket a tulajdonságokat használja a kripto leképezés beállításához:-
ro.crypto.fs_type -
ro.crypto.fs_real_blkdev -
ro.crypto.fs_mnt_point -
ro.crypto.fs_options -
ro.crypto.fs_flags(ASCII 8 számjegyű hexa szám, amelyet 0x előz meg)
-
- Start framework to prompt for password
A keretrendszer elindul és látja, hogy a
vold.decryptértéketrigger_restart_min_framework. Ez azt mondja a keretrendszernek, hogy egy tmpfs/datalemezről indul, és meg kell kérnie a felhasználói jelszót.Először azonban meg kell győződnie arról, hogy a lemez megfelelően titkosított. Elküldi a
cryptfs cryptocompleteparancsotvold-ra.vold0-t ad vissza, ha a titkosítás sikeresen befejeződött, -1 belső hiba esetén, vagy-2-t, ha a titkosítás nem fejeződött be sikeresen. Avoldezt úgy állapítja meg, hogy a kripto metaadatokban keresi aCRYPTO_ENCRYPTION_IN_PROGRESSjelzőt. Ha ez be van állítva, akkor a titkosítási folyamat megszakadt, és az eszközön tárolható adatok vannak. Ha avoldhibát ad vissza, a felhasználói felületnek üzenetet kell megjelenítenie a felhasználónak az eszköz újraindítására és gyári alaphelyzetbe állítására, és meg kell adnia a felhasználónak egy gombot, amelyet megnyomhat ehhez. - Decrypt data with password
Ha a
cryptfs cryptocompletesikeres, a keretrendszer megjelenít egy felhasználói felületet, amely a lemez jelszavát kéri. A felhasználói felület a jelszót acryptfs checkpwparancsvold-ra történő elküldésével ellenőrzi. Ha a jelszó helyes (amit a dekódolt/dataideiglenes helyre történő sikeres mountolásával, majd leválasztásával lehet megállapítani),voldelmenti a dekódolt blokkeszköz nevét aro.crypto.fs_crypto_blkdevtulajdonságba, és 0 állapotot küld vissza az UI-nak. Ha a jelszó helytelen, -1-et ad vissza az UI-nak. - Stop framework
A UI megjeleníti a kripto boot grafikát, majd meghívja a
vold-t acryptfs restartparanccsal. Avoldavold.decrypttulajdonságottrigger_reset_main-re állítja, aminek hatására ainit.rcelvégzi aclass_reset mainfeladatot. Ez leállítja az összes szolgáltatást a főosztályban, ami lehetővé teszi a tmpfs/dataleválasztását. - Mount
/datavoldezután mountolja a dekódolt valódi/datapartíciót, és előkészíti az új partíciót (ami lehet, hogy soha nem készült el, ha a wipe opcióval lett titkosítva, ami az első kiadásban nem támogatott). Avold.post_fs_data_donetulajdonságot 0-ra állítja, majd avold.decrypt-ttrigger_post_fs_data-re állítja. Ennek hatására ainit.rcfuttatja apost-fs-dataparancsokat. Ezek létrehozzák a szükséges könyvtárakat vagy hivatkozásokat, majd avold.post_fs_data_donetulajdonságot 1-re állítják. Amint avoldlátja az 1-et ebben a tulajdonságban, avold.decrypttulajdonságottrigger_restart_framework-re állítja. Ennek hatására ainit.rcújra elindítja amainosztályú szolgáltatásokat, és alate_startosztályú szolgáltatásokat is elindítja a rendszerindítás óta először. - Start full framework
Most a keretrendszer elindítja az összes szolgáltatását a visszafejtett
/datafájlrendszer használatával, és a rendszer készen áll a használatra.
Failure
Az eszköz, amelynek nem sikerül a dekódolás, több okból is hibás lehet. Az eszköz a normál lépéssorozattal indul a rendszerindításhoz:
- Titkosított eszköz felismerése jelszóval
- Mount tmpfs
- Start framework to prompt for password
De miután a keretrendszer megnyílt, az eszköz néhány hibával találkozhat:
- A jelszó megegyezik, de nem tudja visszafejteni az adatokat
- A felhasználó 30-szor rossz jelszót ad meg
Ha ezek a hibák nem oldódnak meg, kérje a felhasználót a gyári törlésre:
Ha a vold hibát észlel a titkosítási folyamat során, és ha még nem semmisültek meg adatok és a keretrendszer működik, a vold a vold.encrypt_progress tulajdonságot error_not_encrypted-re állítja.A felhasználói felület újraindításra szólítja fel a felhasználót, és figyelmezteti, hogy a titkosítási folyamat soha nem indult el. Ha a hiba a keretrendszer lebontása után következik be, de még mielőtt a progress bar UI megjelenik, a vold újraindítja a rendszert. Ha az újraindítás sikertelen, akkor vold.encrypt_progress-et error_shutting_down-re állítja és -1-et ad vissza; de nem lesz semmi, ami a hibát elkapja. Ez nem várható.
Ha a vold hibát észlel a titkosítási folyamat során, akkor a vold.encrypt_progress értékét error_partially_encrypted-ra állítja és -1-et ad vissza. A felhasználói felületnek ekkor egy üzenetet kell megjelenítenie a titkosítás sikertelenségéről, és egy gombot kell biztosítania a felhasználó számára az eszköz gyári visszaállításához.
A titkosított kulcs tárolása
A titkosított kulcsot a titkosítási metaadatokban tárolja. A hardveres alátámasztás a Trusted Execution Environment (TEE) aláírási képességének használatával valósul meg.Korábban a mesterkulcsot a scryptt alkalmazásával generált kulccsal titkosítottuk a felhasználó jelszavára és a tárolt sóra. Annak érdekében, hogy a kulcs ellenálló legyen az off-box támadásokkal szemben, ezt az algoritmust kiterjesztjük a kapott kulcsnak egy tárolt TEE-kulccsal történő aláírásával. Az így kapott aláírást ezután a scrypt egy újabb alkalmazásával megfelelő hosszúságú kulccsá alakítjuk. Ezt a kulcsot ezután a főkulcs titkosítására és visszafejtésére használjuk. A kulcs tárolásához:
- Generáljon véletlenszerű 16 bájtos lemez titkosítási kulcsot (DEK) és 16 bájtos sót.
- Alkalmazza a scryptet a felhasználói jelszóra és a sóra a 32 bájtos intermediateekey 1 (IK1) előállításához.
- Töltsük fel az IK1-et nulla bájttal a hardverhez kötött privát kulcs (HBK) méretéig: 00 || IK1 || 00..00; egy nulla bájt, 32 IK1 bájt, 223 nulla bájt.
- Az IK1-et HBK-val feltöltve 256 bájtos IK2-t kapunk.
- Alkalmazzuk a scryptet az IK2-re és a sót (ugyanazt a sót, mint a 2. lépésben), hogy 32 bájtos IK3-at kapjunk.
- Az IK3 első 16 bájtját használja KEK-ként, az utolsó 16 bájtot pedig IV-ként.
- Kódolja a DEK-t AES_CBC-vel, a KEK kulccsal és az IV inicializációs vektorral.
A jelszó módosítása
Ha a felhasználó úgy dönt, hogy megváltoztatja vagy eltávolítja jelszavát a beállításokban, az UI elküldi a cryptfs changepw parancsot a vold-nak, ésvold újrakódolja a lemez mesterkulcsát az új jelszóval.
A titkosítási tulajdonságok
vold és init a tulajdonságok beállításával kommunikálnak egymással. Íme a titkosításhoz rendelkezésre álló tulajdonságok listája.
Vold properties
| Property | Description |
|---|---|
vold.decrypt trigger_encryption |
Encrypt the drive with no password. |
vold.decrypt trigger_default_encryption |
Vizsgálja meg, hogy a meghajtó jelszó nélkül titkosítva van-e. Ha igen, dekódolja és csatolja, különben állítsa be a vold.decrypt értéket trigger_restart_min_framework-ra. |
vold.decrypt trigger_reset_main |
A vold állítsa le a lemez jelszavát kérő felhasználói felületet. |
vold.decrypt trigger_post_fs_data |
A vold állítsa elő a /data-et a szükséges könyvtárakkal, stb. |
vold.decrypt trigger_restart_framework |
Beállítja a vold, hogy elindítsa a valódi keretrendszert és az összes szolgáltatást. |
vold.decrypt trigger_shutdown_framework |
Beállítja a vold, hogy leállítsa a teljes keretrendszert a titkosítás elindításához. |
vold.decrypt trigger_restart_min_framework |
Set by vold to start theprogress bar UI for encryption orprompt for password, depending onthe value of ro.crypto.state. |
vold.encrypt_progress |
A keretrendszer indításakor,ha ez a tulajdonság be van állítva, belép a progress bar UI módba. |
vold.encrypt_progress 0 to 100 |
A progress bar UI-nak a beállított százalékos értéket kell megjelenítenie. |
vold.encrypt_progress error_partially_encrypted |
A progress bar UI-nak üzenetet kell megjelenítenie, hogy a titkosítás sikertelen volt, és lehetőséget kell adnia a felhasználónak a készülék gyári visszaállítására. |
vold.encrypt_progress error_reboot_failed |
A progress bar UI-nak üzenetet kell megjelenítenie, hogy a titkosítás befejeződött, és gombot kell adnia a felhasználónak a készülék újraindítására. Ez a hiba nem várható. |
vold.encrypt_progress error_not_encrypted |
A progress bar UI-nak egy üzenetet kell megjelenítenie, amely szerint hiba történt, nem titkosított vagy elveszett adatokat, és a felhasználónak egy gombot kell adnia a rendszer újraindításához. |
vold.encrypt_progress error_shutting_down |
A progress bar UI nem fut, így nem világos, ki fog reagálni erre a hibára. És amúgy sem szabadna megtörténnie. |
vold.post_fs_data_done 0 |
Közvetlenül a vold.decrypt beállítása előtt trigger_post_fs_data. |
vold.post_fs_data_done 1 |
Közvetlenül a post-fs-data feladat befejezése után init.rc vagy init.rc. |
init properties
| Property | Description | |
|---|---|---|
ro.crypto.fs_crypto_blkdev |
A vold parancs checkpw által a vold parancs restart általi későbbi használatra beállítva. |
|
ro.crypto.state unencrypted |
Az init által beállított |
jelzi, hogy ez a rendszer titkosítatlan /data ro.crypto.state encrypted rendszerrel fut. Set by init to say this system is running with an encrypted /data. |
|
|
Ezt az öt tulajdonságot a init állítja be, amikor megpróbálja a /data-et a init.rc-ből átadott paraméterekkel csatlakoztatni. A vold ezeket használja a kriptomapping beállításához. |
|
ro.crypto.tmpfs_options |
Az init.rc által beállított opciókat az initnek kell használnia, amikor a tmpfs /data fájlrendszert mountolja. |
Init actions
.