La recuperación de stock puede flashear paquetes raíz y ZIP de recuperación personalizados, pero no ROM personalizados

Esta pregunta puede parecer un duplicado de esta pregunta , pero es diferente.

Pero me gustaría tener una breve explicación de por qué necesitamos una recuperación personalizada para flashear una ROM. Mis principales puntos de confusión son:

  1. En la recuperación de stock tenemos una opción para " Instalar actualización desde la tarjeta SD ". ¿Por qué no podemos flashear directamente una ROM desde allí?

  2. Si la verificación de la firma es el problema con respecto al primer punto, ¿cómo podemos rootear y flashear la recuperación personalizada usando la actualización desde la tarjeta SD?

¿Por qué no ocurre ningún problema de firma o verificación al actualizar el paquete raíz o el paquete de recuperación personalizado?

Como cualquier otro paquete de ROM personalizado, tampoco están firmados.

Por favor, explícame esto. Gracias.

@beeshyams Lo siento, pero estas son preguntas completamente diferentes. Mi pregunta es: ¿Cómo permite la recuperación de stock la instalación de PAQUETES DE RECUPERACIÓN PERSONALIZADOS Y DE RAÍZ SIN FIRMAR PERO NO PERMITE LA INSTALACIÓN DE ROM PERSONALIZADA DIRECTAMENTE?
La recuperación de stock no permite la instalación de paquetes no firmados. O la premisa de su pregunta es defectuosa o está confundiendo su terminología aquí.
@eldarerathis He leído que la recuperación de stock presente en Android no permite la instalación de ningún paquete que no esté firmado por un proveedor en particular. En el caso de las roms personalizadas, no están firmadas y, por lo tanto, no se pueden instalar, pero cuando rooteamos nuestro teléfono, necesitamos actualizar un archivo "update.zip" que nuevamente no está firmado por el proveedor específico del dispositivo, entonces ¿cómo es que están instalados y no? roms personalizados.
Acabo de señalar una pregunta relacionada... No dije una pregunta duplicada y cite dónde había leído, en su respuesta anterior a @elderathis. seria educativo
No leí esto exactamente en ninguna parte, pero esta pregunta me vino a la mente después de leer el procedimiento para instalar una rom personalizada :).
Eso requiere una edición de su pregunta para indicar claramente que es su creencia

Respuestas (1)

Ahora bien, debes tener claras 2 cosas:

  1. Todos los paquetes flasheables están firmados. Pueden ser zips de OTA, paquetes raíz o incluso zips de recuperación o ROM personalizados.

Entonces, ¿cuál es la diferencia entre los paquetes "firmados" y supuestamente "sin firmar"?

Está en las claves criptográficas que se usan para firmar las compilaciones de implementación, o los zips en este caso.

Los zips "firmados", por ejemplo , un zip OTA estándar, utilizan una clave privada específica del OEM para firmar la compilación. Esta es una clave de "liberación", y el único tipo de clave que una recuperación de stock reconocerá usando su clave pública correspondiente cuando se le solicite "Instalar actualización desde la tarjeta SD".

Los zips "sin firmar", por ejemplo , paquetes raíz o ROM personalizadas, utilizan las claves privadas AOSP (Proyecto de código abierto de Android) conocidas públicamente para firmar la compilación de implementación. Incluso si la compilación no se ha firmado explícitamente, la firma de prueba es implícita. Cualquier dispositivo lanzado con una recuperación de stock del OEM no tiene ni reconoce la clave pública correspondiente a la clave privada de "prueba". Por lo tanto, se negará a instalar dichos zips con firma de prueba o "sin firmar".

Esto es para mantener la integridad y seguridad del dispositivo, al menos según los OEM.

Esta es la fuente oficial: The Sign Builds for Release Page en el sitio web de AOSP.

  1. Una recuperación personalizada como CWM o TWRP deshabilita o proporciona una opción de deshabilitar (que generalmente está habilitada de manera predeterminada) "Verificación de firma de archivo ZIP". Básicamente, esto implica que puede actualizar cualquier paquete, independientemente de las claves, pruebas o versiones que se usaron para firmar el paquete. Para la recuperación (stock), todo es un zip OTA.

Entonces, ¿por qué algunas recuperaciones de stock pueden mostrar un paquete raíz o zip de recuperación personalizado?

Esto probablemente se deba a 2 razones:

  1. La recuperación de stock tiene una vulnerabilidad de seguridad o un exploit, que el paquete flash utiliza cuando se carga inicialmente para eludir o eludir el procedimiento de verificación de firma.

  2. Las claves de publicación privadas de los OEM son realmente conocidas por los desarrolladores del paquete flasheable, pero no por los desarrolladores de la ROM. Personalmente, he observado esto con Mi y algunos dispositivos Samsung de gama baja.

Además, hay otra razón por la que es necesaria una recuperación personalizada para actualizar una ROM personalizada.

Para instalar la ROM, debe realizar estos pasos antes de actualizar el zip de la ROM:

  1. Limpie /datay /cache. En una recuperación de stock, esto equivale a un restablecimiento de datos de fábrica.

  2. limpiar /system_ Ninguna recuperación de stock puede hacer esto, por razones obvias (¿por qué una recuperación borraría la /systempartición si no admite recuperarla desde algún lugar, como un zip de ROM personalizado?)

  3. Limpiar dalvik-cache, generalmente hecho después de flashear el zip. Nuevamente, ninguna recuperación de stock puede hacer esto, pero en este caso no hay problema con que el dispositivo se bloquee si la recuperación de stock hizo esto.

Si su recuperación de stock no tiene ninguna de las 2 "características" anteriores, necesitará un software de actualización que muestre las imágenes de recuperación o ROM a su teléfono desde su PC. Este software de flasheo usa archivos de imagen de disco de la partición que se va a flashear, y no les importa si está firmado o no. Esto involucra el gestor de arranque del dispositivo y omite la recuperación por completo.

Las recuperaciones personalizadas generalmente se distribuyen como imágenes de disco flasheables, no como archivos ZIP flashables.

Algunos ejemplos de dicho software son fastboot (la mayoría de los dispositivos Android), Odin, Heimdall (ambos para dispositivos Samsung), Smartphone Flash Tool (para dispositivos Mediatek)

Incluso el cargador de arranque podría realizar verificaciones de seguridad en los archivos flasheados en algunos casos, pero en lo que se refiere a fastboot, el cargador de arranque tenía que tener esta verificación deshabilitada, es decir, debe estar "OEM desbloqueado" antes de que se pueda flashear algo. el dispositivo. De todos modos, las imágenes de disco no contienen ningún metadato relacionado con la firma en primer lugar.

Una respuesta muy necesaria. Muchas gracias. Sólo una cosa que me gustaría saber ahora. Supongamos que necesito rootear mi teléfono, para hacer eso tengo un paquete root.zip (sin firmar) que no será flasheado por mi recuperación de stock, por lo que ahora tendré que agregar una recuperación personalizada para que pueda flashear ese archivo root.zip. Ahora, ¿cómo instalo una recuperación personalizada porque la mayoría de los métodos en Internet usan una aplicación "Rom Manager" que necesita privilegios de root? Entonces, ¿no es esto un punto muerto ahora? Quiero flashear el archivo raíz, pero para hacerlo necesito una recuperación personalizada y para obtener una recuperación personalizada necesito la raíz. PUNTO MUERTO .
@Tamoghana Y una más, ¿las recuperaciones personalizadas realmente se pueden flashear directamente (archivo * .zip) o necesitan algún otro software de PC para instalarlo en el teléfono?
@Shivamaggarwal o tiene un "ZIP de raíz flashable" correctamente firmado, o necesitará otros medios para rootear el dispositivo. Y a tu segunda pregunta: Depende. La mayoría de las ROM personalizadas vienen como ZIP flasheable, y solo necesita obtener ese ZIP en su dispositivo: puede descargarlo directamente sin necesidad de una computadora, sí. Otros pueden requerir un software específico (como Odin/Heimdall para dispositivos Samsung).
@TamoghnaChowdhury sí, esa edición ayudó mucho y pronto aceptaré la respuesta :). Me gustaría preguntarle que, como mencionó anteriormente sobre los dispositivos Mi, entonces, ¿a qué categoría pertenecen mis dispositivos: fastboot, odin, dispositivo mediatek? ¿Qué método utilizo para instalar la recuperación en mi dispositivo mi?
Mis dispositivos usan fastboot. Las versiones antiguas de MiUI hasta v5 tenían una recuperación que permitía el seguimiento de un archivo zip que habilitaba la raíz, publicación en la que se podía usar una aplicación llamada Flashify para actualizar cualquier archivo zip o imagen de disco desde el propio teléfono. Hay guías en línea sobre cómo hacer esto, así que no me molestaré en tratarlo aquí. Espero que puedas encontrarlo.
@TamoghnaChowdhury Sí, lo busqué. De hecho, también descubrí que en los dispositivos Mi puedes, literalmente, actualizar cualquier zip simplemente yendo a su aplicación de actualización y seleccionando un paquete. Entonces, ¿no se impone esa restricción de firma en los dispositivos Mi porque casi puedo actualizar cualquier paquete como root.zip, cwm.zip y muchos más simplemente desde su recuperación de stock sin ninguna recuperación personalizada? Respuesta amable :) .
Los zips a los que te refieres están firmados. Estas firmas tienen claves privadas conocidas, ya que la ROM de MIUI es de código abierto. MI Recovery reconoce cualquier cosa firmada con estas claves y le permite actualizarlas
Ohh... Así que los archivos que descargo de miui.com están firmados por mis desarrolladores. Así que aquí surgen dos condiciones: 1. Si descargo un archivo zip de alguna otra fuente, entonces no se actualizará en un dispositivo xiaomi debido a la falta de coincidencia de la firma. 2. Si tomo un archivo zip de miui.com, no aparecerá en ningún otro dispositivo que no sea xiaomi. ¿Estoy en lo correcto en mis dos suposiciones?
Ah si seguro. De momento me quedo muy claro con vuestros comentarios. ¿Puedo molestarlo en el futuro en caso de que encuentre alguna dificultad :) (eso también en el mensaje de chat). .
Puedes ponerme a mí (o a cualquier otra persona) en la sala de chat principal de Android al mencionarme @ al comienzo de la publicación de chat que hagas.
Lo siento, pero no sé cómo llego a la sala de chat principal de Android, por favor dígame