OEM-Unlock: Unterschied zwischen den Versionen

Aus Android Wiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt)
Zeile 1: Zeile 1:
Die Option '''OEM-Unlock''' (verfügbar ab Android {{Android|5.0}}<ref>{{Internetquelle|titel = FYI: Android 5.0 Introduces "Enable OEM Unlock" Option in Developer Options|url = http://www.droid-life.com/2014/11/04/fyi-android-5-0-introduces-enable-oem-unlock-option-in-developer-options/|zugriff = 2015-12-06|werk = Droid Life}}</ref>, auf deutschsprachigen Geräten auch ''OEM-Entsperrung'' oder ''Bootloader-Entsperrung zulassen'') ist eine Auswahlbox in den [[Entwickleroptionen]], die als Sicherheitsfunktion gegen das unberechtigte Entsperren des Bootloaders dient. Die (i.d.R. standardmäßig deaktivierte) Option steuert, ob der Bootloader durch eine [[OEM]]-Routine (also einer vom Hersteller bereitgestellten Prozedur zum [[Bootloader Unlock|Entsperren des Bootloaders]]) entsperrt werden kann oder nicht. Ist diese deaktiviert und wird versucht, den Bootloader zu entsperren, verweigert dieser das mit einer Fehlermeldung.
{{DISPLAYTITLE:OEM-Unlock / OEM-Entsperren}}


Neben der Möglichkeit, die Entsperrung des Bootloader zu erlauben, deaktiviert der ''OEM-Unlock'' (sofern aktiviert) zudem ein Feature der [[Device Protection]]: Android Factory Reset Protection. Dadurch wird es möglich, ein Gerät zurückzusetzen, ohne anschließend ein vorher mit dem Gerät synchronisiertes Google-Konto zu bestätigen. Mehr Informationen zu [[Device Protection|Device Protection ist auf der entsprechenden Seite in diesem Wiki zu finden]].
Die Option '''OEM-Unlock''' (verfügbar ab Android {{Android|5.0}}<ref>{{Internetquelle|titel = FYI: Android 5.0 Introduces "Enable OEM Unlock" Option in Developer Options|url = http://www.droid-life.com/2014/11/04/fyi-android-5-0-introduces-enable-oem-unlock-option-in-developer-options/|zugriff = 2015-12-06|werk = Droid Life}}</ref>, auf deutschsprachigen Geräten auch ''OEM-Entsperren'' oder ''Bootloader-Entsperrung zulassen'') ist eine Auswahlbox in den [[Entwickleroptionen]], die als Sicherheitsfunktion gegen das unberechtigte Entsperren des Bootloaders dient. Die (i.d.R. standardmäßig deaktivierte) Option steuert, ob der Bootloader durch eine [[OEM]]-Routine (also einer vom Hersteller bereitgestellten Prozedur zum [[Bootloader Unlock|Entsperren des Bootloaders]]) entsperrt werden kann oder nicht. Ist diese deaktiviert und wird versucht, den Bootloader zu entsperren, verweigert dieser das mit einer Fehlermeldung.
 
Neben der Möglichkeit, die Entsperrung des Bootloader zu erlauben, deaktiviert der ''OEM-Unlock'' (sofern aktiviert) zudem ein Feature der [[Device Protection]]: Android Factory Reset Protection, kurz FRP. Dadurch wird es möglich, ein Gerät zurückzusetzen, ohne anschließend ein vorher mit dem Gerät synchronisiertes Google-Konto zu bestätigen. Mehr Informationen zu [[Device Protection|Device Protection ist auf der entsprechenden Seite in diesem Wiki zu finden]].
 
== Technische Umsetzung ==
Damit eine Einstellung sowohl für den Bootloader, als auch im Android System zur Verfügung steht, muss der Wert der Einstellung in einem ''raw'' Format gespeichert werden (sodass der Bootloader auch darauf zugreifen kann, wenn die Abstraktions-Layer und Implementierungen des Android-Systems nicht zur Verfügung stehen). Dies ist auch bei der OEM-Unlock Einstellung der Fall.<ref>{{Internetquelle|url=http://newandroidbook.com/Articles/Nexus9.html|titel=Nexus 9 Notes|werk=newandroidbook.com|zugriff=2017-07-26}}</ref> In Android ist hierfür eine eigene [[Partition]] vorhanden, die Daten persistent abspeichern kann. Die entsprechende Partition ist in der System-Eigenschaft (''System property'') '''ro.frp.pst''' gespeichert.<ref>{{Internetquelle|url=https://github.com/android/platform_frameworks_base/blob/e426dac4e2e668ff6af027ec0c8bbfff40596ba1/services/core/java/com/android/server/PersistentDataBlockService.java#L69|titel=android/platform_frameworks_base|werk=GitHub|sprache=en|zugriff=2017-07-26}}</ref> Die verwendete Partition unterscheidet sich von Gerät zu Gerät, so wird beim [[HTC/10|HTC 10]] die ''frp'' Partition (für '''F'''actory '''R'''eset '''P'''rotection) verwendet<ref>{{Internetquelle|url=https://github.com/LineageOS/android_device_htc_pme/blob/cea96b1061baf50f46b69dd214f390a6d11a8737/system.prop#L51|titel=LineageOS/android_device_htc_pme|werk=GitHub|sprache=en|zugriff=2017-07-26}}</ref>, bei Samsung-Geräten, die auf einem Snapdragon 625 MSM8976 basieren, die ''persistent'' Partition.<ref>{{Internetquelle|url=https://github.com/LineageOS/android_device_samsung_msm8976-common/blob/022b32e4bf4257fb573a300229560c38a2965db6/system.prop#L59|titel=LineageOS/android_device_samsung_msm8976-common|werk=GitHub|sprache=en|zugriff=2017-07-26}}</ref> Die [[wikipedia:de:Block device|Block-Geräte]] der jeweiligen Partitionen sind zudem wiederum von Gerät zu Gerät unterschiedlich.
 
Wird die OEM-Unlock Einstellung in den Entwickleroptionen geändert, wird der neue Wert (1 für ''aktiviert'' und 0 für ''deaktiviert'') als Wert/Inhalt zu dieser angegebenen Partition geschrieben und kann anschließend vom Bootloader ausgelesen werden. Die Implementierung zur Steuerung des Entsperrens des Bootloaders kann somit auf einen Wert zugreifen, der im Android-System verändert werden kann.


== Einzelnachweise ==
== Einzelnachweise ==

Aktuelle Version vom 16. September 2018, 18:10 Uhr


Die Option OEM-Unlock (verfügbar ab Android 5.0 Lollipop "Lollipop"[1], auf deutschsprachigen Geräten auch OEM-Entsperren oder Bootloader-Entsperrung zulassen) ist eine Auswahlbox in den Entwickleroptionen, die als Sicherheitsfunktion gegen das unberechtigte Entsperren des Bootloaders dient. Die (i.d.R. standardmäßig deaktivierte) Option steuert, ob der Bootloader durch eine OEM-Routine (also einer vom Hersteller bereitgestellten Prozedur zum Entsperren des Bootloaders) entsperrt werden kann oder nicht. Ist diese deaktiviert und wird versucht, den Bootloader zu entsperren, verweigert dieser das mit einer Fehlermeldung.

Neben der Möglichkeit, die Entsperrung des Bootloader zu erlauben, deaktiviert der OEM-Unlock (sofern aktiviert) zudem ein Feature der Device Protection: Android Factory Reset Protection, kurz FRP. Dadurch wird es möglich, ein Gerät zurückzusetzen, ohne anschließend ein vorher mit dem Gerät synchronisiertes Google-Konto zu bestätigen. Mehr Informationen zu Device Protection ist auf der entsprechenden Seite in diesem Wiki zu finden.

Technische Umsetzung[Bearbeiten | Quelltext bearbeiten]

Damit eine Einstellung sowohl für den Bootloader, als auch im Android System zur Verfügung steht, muss der Wert der Einstellung in einem raw Format gespeichert werden (sodass der Bootloader auch darauf zugreifen kann, wenn die Abstraktions-Layer und Implementierungen des Android-Systems nicht zur Verfügung stehen). Dies ist auch bei der OEM-Unlock Einstellung der Fall.[2] In Android ist hierfür eine eigene Partition vorhanden, die Daten persistent abspeichern kann. Die entsprechende Partition ist in der System-Eigenschaft (System property) ro.frp.pst gespeichert.[3] Die verwendete Partition unterscheidet sich von Gerät zu Gerät, so wird beim HTC 10 die frp Partition (für Factory Reset Protection) verwendet[4], bei Samsung-Geräten, die auf einem Snapdragon 625 MSM8976 basieren, die persistent Partition.[5] Die Block-Geräte der jeweiligen Partitionen sind zudem wiederum von Gerät zu Gerät unterschiedlich.

Wird die OEM-Unlock Einstellung in den Entwickleroptionen geändert, wird der neue Wert (1 für aktiviert und 0 für deaktiviert) als Wert/Inhalt zu dieser angegebenen Partition geschrieben und kann anschließend vom Bootloader ausgelesen werden. Die Implementierung zur Steuerung des Entsperrens des Bootloaders kann somit auf einen Wert zugreifen, der im Android-System verändert werden kann.

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. Vorlage:Internetquelle/Wartung/Zugriffsdatum nicht im ISO-FormatInterner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. In: Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. Abgerufen am 2015-12-06.Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  2. Vorlage:Internetquelle/Wartung/Zugriffsdatum nicht im ISO-FormatInterner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. In: Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. Abgerufen am 2017-07-26.Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  3. Vorlage:Internetquelle/Wartung/Zugriffsdatum nicht im ISO-FormatInterner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. In: Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. Abgerufen am 2017-07-26 (english).Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  4. Vorlage:Internetquelle/Wartung/Zugriffsdatum nicht im ISO-FormatInterner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. In: Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. Abgerufen am 2017-07-26 (english).Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  5. Vorlage:Internetquelle/Wartung/Zugriffsdatum nicht im ISO-FormatInterner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. In: Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. Abgerufen am 2017-07-26 (english).Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.