El flujo de inicio recomendado para un dispositivo es el siguiente:
![Flujo de inicio verificado](https://source.android.google.cn/static/docs/security/images/verified-boot-flow.png?authuser=7&hl=es-419)
Flujo para dispositivos A/B
Si el dispositivo usa A/B, el flujo de inicio es ligeramente diferente. La ranura para
el inicio debe marcarse como SUCCESSFUL
con la HAL de control de inicio antes de actualizar la
Metadatos de protección contra reversión.
Si hay una actualización de la plataforma que falla (no está marcada
SUCCESSFUL
), la pila A/B recurre a la otra ranura,
que aún tiene la versión anterior de Android. Sin embargo, si
se configuraron los metadatos
de protección contra reversiones,
debido a la protección contra reversiones.
Comunicación del inicio verificado estado a los usuarios
Después de determinar el estado de inicio de un dispositivo, debes comunicar que al usuario. Si el dispositivo no tiene ningún problema, continúa sin mostrando algo. Los problemas del inicio verificado se dividen en las siguientes categorías:
- AMARILLO: Pantalla de advertencia para dispositivos BLOQUEADOS con raíz de confianza personalizada establecida
- NARANJA: Pantalla de advertencia para dispositivos DESBLOQUEADOS
- RED (eio): Pantalla de advertencia para daños en dm-verity
- ROJO (no se encontró ningún SO): No se encontró ningún SO válido.
Dispositivos BLOQUEADOS con raíz de confianza
Ejemplo de pantalla AMARILLA:
![Pantalla de advertencia de dispositivo amarilla](https://source.android.google.cn/static/docs/security/images/boot_yellow1.png?authuser=7&hl=es-419)
Mostrar una pantalla AMARILLA en cada inicio si el dispositivo está BLOQUEADO, una raíz personalizada de se configuró la confianza y se firmó la imagen con esta raíz de confianza personalizada. La pantalla AMARILLA se cierra luego de diez segundos y el dispositivo continúa. durante el inicio. Si el usuario presiona el botón de encendido, se muestra "Presiona el botón de encendido para pausar" el texto cambia a "Presiona el botón de encendido para continuar" y la pantalla nunca está (aunque el dispositivo puede atenuar o apagar la pantalla para protegerte contra efecto quemado). Si se vuelve a presionar, la pantalla se cierra y el teléfono continúa. durante el inicio.
Para hex-number, usa los primeros 8 dígitos del sha256 de
la representación en libavb de la clave pública que se usa para la verificación, por ejemplo
d14a028c
Texto sugerido:
Tu dispositivo cargó un sistema operativo diferente.
Visita este vínculo en otro dispositivo para obtener más información:
g.co/ABH
ID: hex-number
Presiona el botón de encendido para pausar
Dispositivos DESBLOQUEADOS
Ejemplo de pantalla NARANJA:
![Pantalla de advertencia del dispositivo naranja](https://source.android.google.cn/static/docs/security/images/boot_orange.png?authuser=7&hl=es-419)
Mostrar una pantalla NARANJA en cada inicio si el dispositivo está DESBLOQUEADO. La pantalla de ORANGE se descarta después de diez segundos y el dispositivo continúa iniciándose. Si el usuario presiona el botón de encendido, "Presiona el botón de encendido para pausar" texto cambia a "Presiona botón de encendido para continuar y la pantalla nunca se descarta (el dispositivo puede atenuar o apaga la pantalla si es necesario para protegerte contra el efecto quemado o similar). Si nuevamente, la pantalla se cierra y el teléfono continúa iniciándose.
Para hex-number, usa los primeros 8 dígitos del sha256 de libavb.
representación de la clave pública que se usa para la verificación, por ejemplo,
d14a028c
Texto sugerido:
El cargador de inicio está desbloqueado, y no se puede garantizar la integridad del software. Cualquiera los datos almacenados en el dispositivo estén disponibles para los atacantes. No almacenar datos sensibles en el dispositivo.
Visita este vínculo en otro dispositivo para obtener más información:
g.co/ABH
ID: hex-number
Presiona el botón de encendido para pausar.
corrupción de dm-verity
Ejemplo de pantalla RED eio:
![Pantalla de advertencia del dispositivo eio roja](https://source.android.google.cn/static/docs/security/images/boot_red1.png?authuser=7&hl=es-419)
Mostrar una pantalla eio
ROJA si se encuentra una versión válida de Android
el dispositivo se encuentra en el modo dm-verity eio
. El usuario necesita
haz clic en el botón de encendido para continuar. Si el usuario no aceptó el evento,
pantalla de advertencia en un plazo de 30 segundos, el dispositivo se apaga (para proteger la pantalla
contra el efecto quemado y ahorrar energía).
Texto sugerido:
Tu dispositivo está dañado. No es de confianza y es posible que no funcione correctamente.
Visita este vínculo en otro dispositivo para obtener más información:
g.co/ABH
Presiona el botón de encendido para continuar.
No se encontró ningún SO válido
Ejemplo de pantalla ROJA:
![Pantalla de advertencia de dispositivo dañado de color rojo](https://source.android.google.cn/static/docs/security/images/boot_red2.png?authuser=7&hl=es-419)
Si no se encuentra una versión válida de Android, aparecerá una pantalla ROJA. El El dispositivo no puede seguir iniciando. Si el usuario no aceptó la advertencia pantalla en 30 segundos, el dispositivo se apaga para protegerla contra el efecto quemado y ahorrar energía).
Para hex-number, usa los primeros 8 dígitos del sha256 de
la representación en libavb de la clave pública que se usa para la verificación, por ejemplo
d14a028c
Texto sugerido:
No se encontró ningún sistema operativo válido. El dispositivo no se iniciará.
Visita este vínculo en otro dispositivo para obtener más información:
g.co/ABH
ID: hex-number
Presiona el botón de encendido para apagar el dispositivo.
Confirmación de desbloqueo
Pantalla de ejemplo:
![Pantalla de advertencia DESBLOQUEAR dispositivo](https://source.android.google.cn/static/docs/security/images/unlock-confirmation.png?authuser=7&hl=es-419)
Mostrar una pantalla de confirmación de desbloqueo en respuesta al
Comando fastboot flashing unlock
que se ejecuta mediante fastboot
interfaz de usuario. Inicialmente, el enfoque está en No desbloquear. Si el usuario no ha
interactuaste con la pantalla de advertencia en 30 segundos, la pantalla desaparece y
el comando falla.
Texto sugerido:
Si desbloqueas el bootloader, podrás instalar operaciones personalizadas software de sistema de este teléfono. Un SO personalizado no está sujeto al mismo nivel de prueba que el SO original, y puede hacer que el teléfono y las aplicaciones instaladas para dejar de funcionar correctamente. No se puede garantizar la integridad del software con una regla por lo que los datos almacenados en el teléfono mientras el bootloader está desbloqueado pueden encontrarse en riesgo.
Para evitar el acceso no autorizado a tus datos personales, desbloquea el bootloader también borrará todos los datos personales del teléfono.
Presiona el botón para subir o bajar el volumen para seleccionar si quieres desbloquear el bootloader y, luego, el botón de encendido para continuar.
Destrabar
Desbloquea el bootloader.
No desbloquear
No desbloquear el bootloader ni reiniciar el teléfono
Confirmación del bloqueo
Muestra una pantalla de confirmación de bloqueo en respuesta al comando fastboot flashing
lock
que se ejecuta a través de la interfaz de fastboot. El enfoque es
inicialmente en Don't lock. Si el usuario no interactuó con el
dentro de 30 segundos, la pantalla desaparece y el comando falla.
Texto:
Si bloqueas el bootloader, no podrás instalar operaciones software de sistema de este teléfono. Para evitar el acceso no autorizado a tu si bloqueas el bootloader, también se borrarán todos los datos personales del teléfono.
Presiona el botón para subir o bajar el volumen para seleccionar si quieres bloquear el bootloader y, luego, el botón de encendido para continuar.
Bloquear
Bloquear el bootloader
No bloquear
No bloquear el bootloader ni reiniciar el teléfono.
Comunicación de Verificada Estado de inicio en Android
Pantalla de ejemplo:
![Pantalla de advertencia del dispositivo de confirmación de BLOQUEO](https://source.android.google.cn/static/docs/security/images/lock-confirmation.png?authuser=7&hl=es-419)
El bootloader comunica el estado de inicio verificado a Android a través de
kernel-command o mediante bootconfig a partir de Android 12.
Establece la opción androidboot.verifiedbootstate
en uno de los siguientes valores:
green
: Si el dispositivo esLOCKED
y el usuario puede configurarlo la raíz de confianza no se usayellow
: Si el dispositivo esLOCKED
y el usuario puede configurarlo se usa la raíz de confianzaorange
: si el dispositivo esUNLOCKED
.
La opción androidboot.veritymode
se establece en eio
.
restart
, según el estado en el que se encuentre el cargador de inicio
hasta la administración de errores de dm-verity. Para obtener más detalles, consulta Administración
errores de verificación.