0

What exactly does it mean in this context to be locked anyways?

5

1 Answer 1

4

The definitive answer comes from the android documentation itself

By default, most Android devices ship with a locked bootloader, meaning that users can't flash the bootloader or device partitions. https://source.android.com/devices/bootloader/locking_unlocking

So functionally it's a prevention mechanism for altering these protected filesystem partitions on the device.

Some fundamental background is worth mentioning regarding these special partitions.

Any Android phone has three main partitions: boot loader, Android ROM, and recovery. The boot loader is present in the first partition and is the first program that runs when the phone is powered on.

The primary role of the Boot Loader is to take care of low-level hardware initialization and boot the device into other partitions. It usually loads the Android partition, commonly called as Android ROM. Android ROM contains all the operating system files that are necessary to run the device. The recovery partition, commonly called as stock recovery, is used to delete all user data and files or to perform system updates. https://resources.infosecinstitute.com/topic/practical-android-phone-forensics/

A bootloader lock prevents ROM/firmware from unwanted modifications. It is one link in the secure boot chain of trust.

It therefore plays important role in data security protecting your personal data against theft (it won't however protect your data from deleting, factory reset is always possible). More can be read about the subject here
Is Android's system recovery a firmware thing or Android thing? Can factory reset be prevented?

Additional information can be found in this related question that asked to disambiguate a locked device from a locked bootloader device. unlocked device vs. unlocked bootloader. The key takeaways are

  • boot loader loads the core Android OS code.
  • locked bootloaders use digital signatures to verify the Android code it's loading.
  • an unlocked bootloader will load any ROM.

This other answer though not really offering a precise definition gives some insight into the motivations behind the design of the boot loader being locked
what is a bootloader unlocked phone?

A prerequisite for a device to be locked is that it must first be flashed with a ROM image that had the lock support option baked into it at build time with the build property ro.oem_unlock_supported set to 1 as in a build.prop file. Only then can a device have the ability to toggle between a locked and unlocked state, otherwise it will always be unlocked by default.

2
  • 1
    (if you think about on which stage in boot chain build.prop is located) the build property refers to the oem unlock toggle in developer options only, not actually to the bootloader lock itself. therefore your last sentence is wrong. devices can shipped locked state without having that property. also bootloader can be non-unlockable even with get_unlock_ability=1 and/or OEM unlocking enabled: android.stackexchange.com/q/233310 android.stackexchange.com/q/234025
    – alecxs
    Jun 4, 2021 at 7:44
  • 1
    That's good, that last paragraph I synthesized with some uncertainty just because I haven't done any android development. I tried to find documentation of where in an android project you integrate and refer the build to one of these files, it seemed like there was a way but I was filling in the blank in my mind analogizing with visual studio property sheets docs.microsoft.com/en-us/cpp/build/…
    – jxramos
    Jun 4, 2021 at 8:44

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .