Keeping track of companies that "care about your data 🥺"

Compare changes

Choose any two refs to compare.

Changed files
+131 -17
brands
apple
motorola
samsung
sony
vivo
zte
carriers
brands
nttdocomo
softbank
spectrum
+2 -2
README.md
···
### [Xiaomi/Redmi/POCO](./brands/xiaomi/README.md)
-
### [ZTE/nubia](./brands/zte/README.md)
-
## ⚠️ Proceed with caution!
The following manufacturers require an online account and/or a waiting period before unlocking.
···
### [Sony](./brands/sony/README.md)
### [Tecno](./brands/tecno/README.md)
+
+
### [ZTE/nubia](./brands/zte/README.md)
## ℹ️ "Safe for now" :trollface:
+1 -1
brands/apple/README.md
···
This one is probably expected. No iPhone, iPad, iPod Touch or Apple TV model has had an unlockable bootloader.
-
As expected, Apple does not allow bootloader unlocking, and never has. Most Apple dives also have an aggressive anti-rollback system, stopping you from downgrading to an older iOS version for jailbreaking purposes.
+
As expected, Apple does not allow bootloader unlocking, and never has. Most Apple devices also have an aggressive anti-rollback system, stopping you from downgrading to an older iOS version for jailbreaking purposes.
## Firmware signing
Apple has a server called "Tatsu Signing Server", typically shortened to TSS. When you try to install firmware on an Apple device, iTunes or Finder will send several things to TSS so it can generate a signed SHSH blob to allow the restore, the following being
+52 -7
brands/motorola/README.md
···
# Motorola/Lenovo/NEC
- Verdict: **⛔ Avoid!**
-
- Verdict: **🍅 Terrible!** (Unisoc)
+
- Verdict: **🍅 Terrible!** (Unisoc/MTK Legacy)
## Kernel sources
Motorola is one of the manufacturers that provide kernel source code for their devices via official repositories on GitHub. However, they usually have weird build instructions, and will not share them unless you threaten to report to the SFC.
···
- [Texas Instruments devices](https://github.com/MotorolaMobilityLLC/kernel-omap)
## Bootloader
-
To unlock your bootloader, you have to submit a request on [this][Unlock Code Website] website, which is pretty bad on its own (*wink* [Huawei](../huawei/README.md)). Unisoc devices will never be unlockable, this is *not* Motorola's fault, Unisoc does not allow unlocking.
+
Motorola has three device classes:
+
* Qualcomm devices
+
* MTK CID
+
* MTK Legacy/Unisoc
+
+
Qualcomm and MTK CID devices are developed and manufactured by the Motorola main team. MTK Legacy and UNISOC manufacturing process is often delegated to third parties ODMs, mainly their partner [Tinno](https://en.tinno.com/news/69.html), and sometimes other like [Huaqin](https://en.huaqin.com/).
+
+
+
For Qualcomm and MTK CID device, to unlock your bootloader, you have to submit a request on [this][Unlock Code Website] website, which is pretty bad on its own (*wink* [Huawei](../huawei/README.md)). Unisoc devices will never be unlockable, this is *not* Motorola's fault, Unisoc does not allow unlocking.
In addition, [this forum post][Old devices ineligible] says that once a device passes a certain age (the age not being specified), the device becomes ineligible.
···
* [This page][Some Devices] says only "Photon Q 4G LTE, DROID RAZR M(Developer Edition), DROID RAZR HD(Developer Edition CDMA-LTE), MOTOROLA RAZR HD (Rest of World -UMTS/LTE), MOTOROLA RAZR HD (Rogers Canada - UMTS/LTE) and MOTOROLA RAZR i are supported by the Bootloader Unlock site." -- Considering these devices are all over 13 years old, this is likely outdated.
* [And from this conversation][turistu's post] [turistu](https://github.com/turistu) had with their support: "most of our E devices doesn't support bootloader unlock program. Please see below a list of devices that support the bootloader unlock program : g100, g51 , g71 , g200 , g52 , g82 , g42 , g62 , g32"
* There's also an unofficial way with CID to check if your device can be unlocked, check here: [xdaforums.com][CID check]
+
* Generally, devices from the g3x series and higher can be unlocked, while G2x and lower (including E devices) cannot be unlocked *officially*.
Once your bootloader is unlocked, Motorola does not allow you to relock, attempting to re-lock will [brick your device][brick on relock]
+
Furthermore, on Motorola CID devices a valid **cid** partition needs to be present in the device to be unlocked or even to be able to boot normally. The unlock data is in fact contained in that partition, and cannot be haltered without getting cid `0xDEAD`.
+
In case of a corrupted cid partition, you'll need to bring your device for *cid provisioning*, where the cid data is regenerated and signed.
+
+
On MTK CID devices, it is impossible to unlock using third party tools (like mtkclient or Chimera), because Motorola validates the unlock state contained in `seccfg` against a stored value in the RPMB region in the flash storage.
+
Furthermore, Motorola disables BROM USBDL by efuse on newer devices (MTK V6 as well), and the stock Download Agent are limited to only allow flashing the bootloader.
+
+
### Possible bypasses?
+
#### Debug Token
+
Motorola CID devices (both Qualcomm and Mediatek ones) have a customized bootloader by Motorola, including their security library `mot_sec`.
+
+
Decompiling the bootloader it is possible to notice how Motorola includes a special *virtual* partition (it is just part of the cid partition) called `debug_token`.
+
By issuing `fastboot flash debug_token <debug-token-file>`, it is theoretically possible to disable all security on the device, including secure boot and more.
+
+
This file, though, cannot be obtained, since it is most likely used internally by Motorola development team, and it is verified against the public key.
+
+
#### Keygen
+
Many on XDA have wondered [if it was possible to develop a keygen](https://xdaforums.com/t/help-with-moto-g-bootloader-unlock-keygen.2631686/).
+
Motorola unlock process (on CID devices only) involves getting the unlock data from the phone using `fastboot oem get_unlock_data`.
+
+
The phone spits out some random data, that can be parsed the following way:
+
```
+
1A23457698214365
+
5441383930304242443700585431303332000000
+
140A858731D55F3B5DF78F0F6BB9EAE32A2B8945
+
3D372B020F0000000000000000000000
+
```
+
* The first line is the IMEI, with an additional A as padding to reach 16 bytes (IMEI as 15 characters long)
+
* The second line is the serial number + phone model
+
* The third line is thought to be the phone hash or processor UID
+
* The 4th line seem to be flash UID
+
+
Unfortunately, Motorola seems to use asymmetric encryption for generating the unlock key, meaning that without a private key it is impossible to make a keygen.
+
On the other hand, the bootloader verifies the key by first generating one on the fly based on the data in CID and hashing it with either HMAC-SHA256 (CID DB v2) or HMAC-SHA1 (CID DB v1), then comparing the hashes of the generated key with the hash of the bytes representation of the provided unlock key.
+
### Non-Lenovo devices
Even though Motorola has been owned by Lenovo for a while, there are still devices around that aren't made by Lenovo.
-
### Certain G series devices
-
For some Motorola devices, the firmware is not developed by the company's core team, but simply purchased solutions from various OEMs.
+
### Certain G and E series devices
+
For some Motorola devices, the firmware is not developed by the company's core team, but simply purchased solutions from various ODMs.
These are exactly the devices that lack any instructions on how to unlock the bootloader or are completely locked, with no way to unlock.
-
Examples of such devices include the Moto G23, G13, G24, and G24 Power.
+
Examples of such devices include the Moto G23, G13, G22, G24, and G24 Power.
Fortunately, enthusiasts have managed to find unofficial ways to unlock these devices, despite the fact that Moto Agents stubbornly deny the existence of such methods:
* Moto G13/G23 - Decompiled the bootloader, studied the algorithm for unlocking the bootloader and [developed a keygen](https://penangf.fuckyoumoto.xyz/docs/dev/bootloader), which is required to get the key to unlock the bootloader.
-
* Moto G24/G24 Power - Thanks to a leaked engineering DA with full permissions to all partitions and using a custom ChouChou bootloader, [a way to unlock was found](https://fogorow.fuckyoumoto.xyz/docs/dev/bootloader)
+
* Moto G24/G24 Power - Thanks to Carbonara, allowing privilege excalation in DA mode and a custom bootloader (chouchou), [a way to unlock was found](https://fogorow.fuckyoumoto.xyz/docs/dev/bootloader)
### Google Motos (2012-2014)
For a short while, Google owned Motorola Mobility (from May 2012 to October 2014). Despite Google devices following the normal procedure, Google Motos used the same unlock portal that the modern Lenovo devices use, and of course, Lenovo removed the ability to unlock older devices, so these Google-era Motos are no longer unlockable. This does not include the Nexus 6, see the [Google](../google/README.md) page for Nexus devices.
···
tldr, Motorola split into two companies in 2011. Motorola Mobility, which made the phones and DVRs and is now owned by Lenovo, and Motorola Solutions, who makes everything else. Solutions has recently started making radios which run Android. Not much is known about these devices, Motorola doesn't even reveal which SoC they use, so nothing is really known about these devices. This [datasheet] for the MOTOTRBO ION mentions "Root Detection: Standard", which in Moto-speak, means "this device always ships with root detection.", indicating that the bootloader is probably not unlockable on these devices. Via [this spreadsheet] from Google, you can see the MOTOTRBO ION's codename -- mkz_sdm660_64, which indicates that possibly it uses a Snapdragon 660 SoC, but the MOTOTRBO ION runs Android 13, which seems weirdly new for a 2017 SoC, no it might just be gibberish or something unrelated.
### MTKClient + BROM
-
Most MTK-based Motorola devices **released before 2022 are susceptible to [mtkclient](https://github.com/bkerler/mtkclient) bypass**, and full unlock may require [ChouChou](https://github.com/R0rt1z2/chouchou) / [Kaeru](https://github.com/R0rt1z2/kaeru) patches to disable automatic bootloader lock.
+
Most MTK-based Motorola devices **released before 2022 are susceptible to [mtkclient](https://github.com/bkerler/mtkclient) auth bypass**, and full unlock may require [chouchou](https://github.com/R0rt1z2/chouchou) / [Kaeru](https://github.com/R0rt1z2/kaeru) patches to disable automatic bootloader lock (as seen on Moto E7, codename `malta`).
However, on devices **released after 2022, this method is ineffective** as the preloader vulnerability has been patched and the BROM is blocked via eFuse, and attempting to crash the preloader results in a bootloop in the preloader.
+
Devices released before 2024 (and some released during 2024 as well) though are vulnerable to [Carbonara](https://shomy.is-a.dev/penumbra/Mediatek/Exploits/Carbonara), a DA1 memory corruption exploit that allows arbitrary code execution.
### Non-Motorola Lenovo devices, NEC devices and some Motorola tablets.
Lenovo usually does not use the Motorola name on their tablets and gaming-oriented phones, and these are typically branded as Lenovo or NEC. While similar to Motorola's unlock process, these have to be unlocked on the [ZUI website], which requires your IMEI, serial number, and email, and they'll send you an unlock-bootloader.img which you flash to the unlock partition in Fastboot to unlock. However, similar to Xiaomi, Lenovo has a quota, which if you surpass, you cannot unlock your bootloader, @MlgmXyysd has created an [unofficial unlock portal] which may work on recent tablets like Legion Y700 4th Gen. Some Motorola tablets, such as the G62, also use the ZUI website to unlock instead of Motorola's unlock portal.
···
Additional info provided by [Ivy / Lost-Entrepreneur439](https://github.com/Lost-Entrepreneur439).<br/>
CID info provided by [FPSensor](https://github.com/FPSensor).<br/>
Unofficial ways to unlock "Moto G13/G23/G24/G24 Power" bootloader provided by [DiabloSat](https://github.com/progzone122) & [Shomy](https://github.com/shomykohai).<br/>
+
Additional info for Motorola CID devices and mtkclient provided by [Shomy](https://github.com/shomykohai).<br/>
Legal agreement info provided by [FaridZelli](https://github.com/FaridZelli).<br/>
Lenovo branded and NEC unlock information provided by [CakesTwix](https://github.com/CakesTwix) and [Calyx Hikari](https://github.com/HikariCalyx).<br/>
Authored by [melontini](https://github.com/melontini).
+47 -3
brands/samsung/README.md
···
Snapdragon phones prior to the S7/Note7 (2016) can be unlocked regardless of region, as long as it's not locked to a carrier like AT&T or Verizon. The Canadian S7 can also be unlocked as it uses an Exynos SoC, despite Canada normally being a Snapdragon region.
-
Be aware that unlocking a Samsung device will permanently trip Knox. As a result, many Knox-based features will be broken. This includes, but not limited to: Samsung Pay, Pass, Flow, Health, Secure Folder, Secure Wi-Fi, Smart View. Furthermore, tripping Knox may serve as grounds for voiding your warranty.
+
**Be aware that unlocking a Samsung device will permanently trip Knox.** As a result, many Knox-based features will be broken. This includes, but not limited to: Samsung Pay, Pass, Flow, Health, Secure Folder, Secure Wi-Fi, Smart View. Furthermore, tripping Knox may serve as grounds for voiding your warranty.
+
+
There have been hardware issues caused by unlocking the bootloader, but these have been fixed for some regions. See [here][1] and [here][2]. As of late 2023, Korean Galaxy Fold3 running OneUI 5 still got camera disabled after unlocking, while EU/CN variants had fixed the issue.
+
+
As of September 2025, Galaxy Z Fold 5 also has a camera issue after unlocking the bootloader. After analyzing it, we found out it is a "Security Mechanism" to prevent the user from "taking photos" once they unlock the bootloader by providing a "black screen" in the viewfinder. (Fixable by re-locking the bootloader)
+
+
---
+
+
As of September 2025, all budget phones that have **Helio G99**, **Dimensity 6100+**, and **Dimensity 6300** have **serious connectivity and unfixable bootloop issues** after unlocking the bootloader and flashing a custom binary which "trips Knox".
+
+
**Example Devices Affected:**
+
- **Helio G99:** Galaxy A15 4G, A16 4G, etc.
+
- **Dimensity 6100+/6300:** Galaxy A06 5G, A15 5G, M15 5G, A16 5G, etc.
-
In the past, there have been hardware issues caused by unlocking the boatloader, but these have been fixed for some regions. See [here][1] and [here][2]. As of late 2023, Korean Galaxy Fold3 running OneUI 5 still got camera disabled after unlocking, while EU/CN variants had fixed the issue.
+
**If your device has Helio G99 or Dimensity 6100+/6300, you are a victim too!**
+
+
As a result, in the Helio G99 models, the `ril-daemon` will crash every 6 hours, leading to your SIM cards being disabled and showing a NULL IMEI in the settings (temporary). The only fix as of now is restarting the phone or using "third-party" Magisk modules to restart the `ril-daemon` every 6 hours. This is unfixable even after re-locking the bootloader.
+
+
In the Dimensity 6100+/6300 models, **you will completely lose 5G connectivity permanently**, and this is unfixable even after re-locking the bootloader. **The modem will crash when connecting to a 5G network**, leading to high battery drain and overheating. The only fix as of now is putting your device in 4G mode.
+
+
After intense analysis by ~5 experienced members of the Helio G99 and Dimensity 6100+/6300 community, we found why this happens. It looks like Samsung implemented checks at **both the modem firmware level and software level** to check for the value of the property `ro.vendor.boot.warranty_bit`. The software check uses a function called `DoOemSetwarrantyBit` in `/vendor/lib64/libsec-ril.so`.
+
+
**Why does a RIL-related HAL need to check "is Knox tripped?"**
+
+
After patching the necessary libs in the vendor, we thought it was over until we found out 5G still wasn't working and discovered that a similar but different function is baked into the modem firmware itself by analyzing the contents of the `md1img` partition. This firmware check differs from the libsec-ril's function and isn't patchable by a third party.
+
+
> The only fix is to be aware of this issue and not unlock the bootloader and trip Knox in the first place if you don't like these consequences. You have to sacrifice something to root these 2 device types.
+
+
**🔴 Regarding the unfixable bootloop issue**, it literally feels like a hard brick. The only thing that works is the display turning on. No matter what you do, even after flashing the stock ROM and re-locking the bootloader, this issue remains unfixable.
+
+
This was a serious issue in the initial firmware of the Dimensity 6100+ and 6300 devices and was **fixed by later firmware updates.**
+
+
If you want to unlock the bootloader, first update your phone to any firmware released with the 2025 January/April/July security patch.
+
+
**Symptoms:**
+
1. User can unlock the bootloader without any issues and the phone boots normally.
+
2. When they attempt to flash an unsigned binary (such as a custom kernel or Magisk-patched AP/boot image), the boot process instantly crashes after the splash screen (first Samsung Galaxy logo).
+
- What it looks like: A grey fuzzy screen with vertical blue/yellow lines appears when the crash occurs.
+
3. This issue is unfixable even after reverting the changes, and **you cannot access Android recovery - only download mode remains accessible.**
+
+
**There is nothing to worry about regarding this issue if your phone firmware is already updated.**
+
+
**Sources:**
+
- As the [writer of this section](https://github.com/ravindu644) of this documentation, I personally experienced this issue and lost $200. I have video proof but will not provide Telegram links here. You can find them in the Galaxy A16 Community if interested.
+
- [XDA Forum post regarding this exact issue](https://xdaforums.com/t/bootloop-without-access-to-recovery-need-insights-a156e-dsn.4707443/)
+
+
---
## SoC level exploits
One of the first things Samsung bootloaders do on phone bootup is check if the bootloader is unlocked, and if it is, and a bootloader unlock has not been authorized, the bootloader will automatically relock. This means SoC level exploits such as mtkclient or EDLUnlock will not work on Samsung devices, unless you reverse engineer, modify and re-flash Samsung's bootloader to stop the bootloader from re-locking.
···
There is an [open source VoLTE service] developed by phh, but it's incomplete and not stable.
***
-
Additional info provided by [aries-ts-indo](https://github.com/aries-ts-indo) and [Ivy / Lost-Entrepreneur439](https://github.com/Lost-Entrepreneur439).<br/>
+
Additional info provided by [aries-ts-indo](https://github.com/aries-ts-indo), [ravindu644](https://github.com/ravindu644) and [Ivy / Lost-Entrepreneur439](https://github.com/Lost-Entrepreneur439).<br/>
Authored by [melontini](https://github.com/melontini).
[1]:https://www.xda-developers.com/bootloader-unlocking-no-longer-kills-galaxy-z-fold-3-cameras/
+5 -1
brands/sony/README.md
···
- Verdict: **⚠️ Proceed with caution!**
+
- Verdict: **🍅 Terrible!** (Japan variants only)
+
Sony has an open policy for software developers:
- They are releasing AOSP sources under [Sony Open Devices Program].
- Jolla provides first-class support for installing [Sailfish OS] on select Xperias.
···
Sony supports [Custom AVB](../../README.md#custom-avb-keys) Since 2020.
-
***
+
You also can't unlock Japan variants. For some reason.
+
***
+
Info about Japan devices provided by [madeline-yana](https://github.com/madeline-yana)
Additional info provided by [K4sum1](https://github.com/K4sum1).<br/>
Authored by [konradmb](https://github.com/konradmb).
+1 -1
brands/vivo/README.md
···
There is also a chance that your device is vulnerable to one of the MTK or Unisoc [exploits](../../README.md#universal-soc-based-methods).
## Magisk
-
Vivo devices have kernel-level patches to block the `su` binary, so to use Magisk you should flash this modified version with `suu`.
+
Vivo devices have kernel-level patches to block the `su` binary, so to use Magisk you should flash this modified version with `suu`. This only applies on devices which run Funtouch, for devices which run OriginOS (mainly their Chinese market devices), while the bootloader is still not unlockable, `su` is not blocked.
- [Magisk][patched-magisk]
- [Magisk Delta][patched-magisk-delta]
+1 -1
brands/zte/README.md
···
> 🧹 This page is missing a lot of info!
-
- Verdict: **⛔ Avoid!**
+
- Verdict: **⚠️ Proceed with caution!**
- Verdict: **🍅 Terrible!** (Unisoc)
Snapdragon-based nubia devices can be unlocked with the Fastboot command `fastboot oem nubia_unlock NUBIA_MODEL` (e.g. -- if your phone's model number is NX609J, the command would be `fastboot oem nubia_unlock NUBIA_NX609J`.). Newer ZTE devices can also be unlocked with the standard `fastboot flashing unlock` command, but this tends to break the fingerprint sensor, Unisoc devices will never be unlockable, this is *not* ZTE's fault, Unisoc does not allow unlocking. As for non-nubia ZTE devices:
+5 -1
carriers/README.md
···
### [Verizon/Visible](./brands/verizon/README.md)
+
### [Spectrum](./brands/spectrum/README.md)
+
## Canada
All devices sold in Canada after December 1, 2017 are sold unlocked, and any devices sold before then legally have to be unlocked for free, thanks to [the Wireless Code](https://crtc.gc.ca/eng/archive/2017/2017-200.htm). For devices sold before then however..
···
## Japan
If you buy a Sony or Sharp phone used, high chance it's going to be locked to a Japanese carrier as that's just where Sony and Sharp are popular.
-
### [NTT Docomo](./brands/nttdocomo/README.md)
+
### [NTT Docomo/b-mobile/IIJMIO/DMM](./brands/nttdocomo/README.md)
+
+
### [SoftBank/y!mobile](./brands/softbank/README.md)
+1
carriers/brands/nttdocomo/README.md
···
NTT Docomo (and associated MVNOs) do not allow you to unlock your bootloader, the OEM unlock option is greyed out.
***
Authored by [Ivy / Lost-Entrepreneur439](https://github.com/Lost-Entrepreneur439), with additional MVNOs added by [madeline-yana](https://github.com/madeline-yana).<br/>
+
+9
carriers/brands/softbank/README.md
···
+
# Softbank/y!mobile
+
+
Verdict: **🍅 Terrible!**
+
+
Softbank and y!mobile do not let you unlock the bootloader either.
+
OEM unlocking works fine, however [it seems that Fastboot is modified.](https://www.reddit.com/r/SonyXperia/comments/15qdxt2/bootloader_unlocking_trouble_for_softbank_xperia/)
+
+
Authored by [madeline-yana](https://github.com/madeline-yana).<br/>
+
+7
carriers/brands/spectrum/README.md
···
+
# Spectrum
+
+
* Verdict **ℹ️ "Safe for now" :trollface:**
+
+
Despite being a Verizon MVNO, Spectrum does not have Verizon's hostility and allows bootloader unlocking.
+
***
+
Authored by [Ivy / Lost-Entrepreneur439](https://github.com/Lost-Entrepreneur439).<br/>