Boot Flow

ขั้นตอนการบูตที่แนะนำสำหรับอุปกรณ์มีดังนี้:

ขั้นตอนการบูตที่ตรวจสอบแล้ว
รูปที่ 1 . ขั้นตอนการบูตที่ตรวจสอบแล้ว

โฟลว์สำหรับอุปกรณ์ A/B

หากอุปกรณ์ใช้ A/B ขั้นตอนการบูตจะแตกต่างออกไปเล็กน้อย ช่องที่จะบูตจะต้องทำเครื่องหมายว่า SUCCESSFUL ก่อนโดยใช้ Boot Control HAL ก่อนที่ จะอัปเดตข้อมูลเมตาการป้องกันการย้อนกลับ

หากมีการอัปเดตแพลตฟอร์มที่ล้มเหลว (ไม่ได้ทำเครื่องหมายว่า SUCCESSFUL ) สแตก A/B จะกลับไปอยู่ที่ช่องอื่น ซึ่งยังคงมี Android เวอร์ชันก่อนหน้าอยู่ อย่างไรก็ตาม หากมีการตั้งค่าข้อมูลเมตาการป้องกันการย้อนกลับ เวอร์ชันก่อนหน้าจะไม่สามารถบูตได้เนื่องจากการป้องกันการย้อนกลับ

แจ้งสถานะ Verified Boot ให้กับผู้ใช้

หลังจากกำหนดสถานะการบูตของอุปกรณ์แล้ว คุณต้องสื่อสารสถานะนั้นกับผู้ใช้ หากอุปกรณ์ไม่มีปัญหาใดๆ ให้ดำเนินการต่อโดยไม่แสดงอะไรเลย ปัญหาการบูตที่ตรวจสอบแล้วจัดอยู่ในหมวดหมู่เหล่านี้:

  • สีเหลือง: หน้าจอคำเตือนสำหรับอุปกรณ์ที่ถูกล็อคพร้อมชุดรูทความน่าเชื่อถือที่กำหนดเอง
  • สีส้ม: หน้าจอคำเตือนสำหรับอุปกรณ์ที่ปลดล็อค
  • RED (eio): หน้าจอคำเตือนสำหรับความเสียหายของ dm-verity
  • สีแดง (ไม่พบระบบปฏิบัติการ): ไม่พบระบบปฏิบัติการที่ถูกต้อง

อุปกรณ์ที่ถูกล็อคพร้อมรากฐานของความไว้วางใจแบบกำหนดเอง

ตัวอย่างหน้าจอสีเหลือง:

หน้าจอเตือนอุปกรณ์สีเหลือง

แสดงหน้าจอสีเหลืองในทุกการบูตหากอุปกรณ์ถูกล็อค มีการตั้งค่ารูทความน่าเชื่อถือแบบกำหนดเอง และอิมเมจถูกเซ็นชื่อด้วยรูทความน่าเชื่อถือแบบกำหนดเองนี้ หน้าจอสีเหลืองจะหายไปหลังจากผ่านไปสิบวินาที และอุปกรณ์ยังคงบู๊ตต่อไป หากผู้ใช้กดปุ่มเปิด/ปิด ข้อความ "กดปุ่มเปิด/ปิดเพื่อหยุดชั่วคราว" จะเปลี่ยนเป็น "กดปุ่มเปิด/ปิดเพื่อดำเนินการต่อ" และหน้าจอจะไม่ถูกปิด แม้ว่าอุปกรณ์อาจหรี่แสงหรือปิดหน้าจอเพื่อป้องกันการเบิร์นอิน) หากกดอีกครั้ง หน้าจอจะปิดลงและโทรศัพท์จะทำการบูทต่อ

สำหรับ hex-number ให้ใช้ตัวเลข 8 หลักแรกของ sha256 ของการแสดง libavb ของคีย์สาธารณะที่ใช้สำหรับการตรวจสอบ เช่น d14a028c

ข้อความที่แนะนำ:

อุปกรณ์ของคุณโหลดระบบปฏิบัติการอื่น

ไปที่ลิงก์นี้บนอุปกรณ์อื่นเพื่อเรียนรู้เพิ่มเติม:

g.co/ABH

รหัส: hex-number

กดปุ่มเปิด/ปิดเพื่อหยุดชั่วคราว

อุปกรณ์ที่ปลดล็อค

ตัวอย่างหน้าจอสีส้ม:

หน้าจอเตือนอุปกรณ์สีส้ม

แสดงหน้าจอสีส้มในการบู๊ตทุกครั้งหากอุปกรณ์ถูกปลดล็อค หน้าจอสีส้มจะปิดลงหลังจากผ่านไปสิบวินาที และอุปกรณ์ยังคงบู๊ตต่อไป หากผู้ใช้กดปุ่มเปิด/ปิด ข้อความ "กดปุ่มเปิด/ปิดเพื่อหยุดชั่วคราว" จะเปลี่ยนเป็น "กดปุ่มเปิด/ปิดเพื่อดำเนินการต่อ" และหน้าจอจะไม่ถูกปิด (อุปกรณ์อาจหรี่ลงและ/หรือปิดหน้าจอหากจำเป็นเพื่อป้องกันการไหม้- ในหรือคล้ายกัน) หากกดอีกครั้ง หน้าจอจะปิดลงและโทรศัพท์จะทำการบูทต่อไป

สำหรับ hex-number ให้ใช้ตัวเลข 8 หลักแรกของ sha256 ของการแสดง libavb ของคีย์สาธารณะที่ใช้สำหรับการตรวจสอบ เช่น d14a028c

ข้อความที่แนะนำ:

บูตโหลดเดอร์ถูกปลดล็อค และไม่สามารถรับประกันความสมบูรณ์ของซอฟต์แวร์ได้ ข้อมูลใด ๆ ที่เก็บไว้ในอุปกรณ์อาจเข้าถึงได้สำหรับผู้โจมตี อย่าจัดเก็บข้อมูลที่ละเอียดอ่อนใด ๆ ไว้ในอุปกรณ์

ไปที่ลิงก์นี้บนอุปกรณ์อื่นเพื่อเรียนรู้เพิ่มเติม:

g.co/ABH

รหัส: hex-number

กดปุ่มเปิด/ปิดเพื่อหยุดชั่วคราว

dm-ความจริงทุจริต

ตัวอย่างหน้าจอ eio สีแดง:

หน้าจอเตือนอุปกรณ์ eio สีแดง

แสดงหน้าจอ eio สีแดงหากพบ Android เวอร์ชันที่ถูกต้องและอุปกรณ์อยู่ในโหมด eio dm-verity ผู้ใช้ต้องคลิกปุ่มเปิด/ปิดเพื่อดำเนินการต่อ หากผู้ใช้ไม่รับทราบหน้าจอคำเตือนภายใน 30 วินาที อุปกรณ์จะปิด (เพื่อป้องกันหน้าจอจากการเบิร์นอินและประหยัดพลังงาน)

ข้อความที่แนะนำ:

อุปกรณ์ของคุณเสียหาย ไม่สามารถเชื่อถือได้และอาจทำงานไม่ถูกต้อง

ไปที่ลิงก์นี้บนอุปกรณ์อื่นเพื่อเรียนรู้เพิ่มเติม:

g.co/ABH

กดปุ่มเปิด/ปิดเพื่อดำเนินการต่อ

ไม่พบระบบปฏิบัติการที่ถูกต้อง

ตัวอย่างหน้าจอสีแดง:

หน้าจอเตือนอุปกรณ์เสียหายสีแดง

แสดงหน้าจอสีแดงหากไม่พบ Android เวอร์ชันที่ถูกต้อง อุปกรณ์ไม่สามารถบู๊ตต่อได้ หากผู้ใช้ไม่ยอมรับหน้าจอคำเตือนภายใน 30 วินาที อุปกรณ์จะปิดเพื่อป้องกันหน้าจอจากการเบิร์นอินและประหยัดพลังงาน)

สำหรับ hex-number ให้ใช้ตัวเลข 8 หลักแรกของ sha256 ของการแสดง libavb ของคีย์สาธารณะที่ใช้สำหรับการตรวจสอบ เช่น d14a028c

ข้อความที่แนะนำ:

ไม่พบระบบปฏิบัติการที่ถูกต้อง อุปกรณ์จะไม่บู๊ต

ไปที่ลิงก์นี้บนอุปกรณ์อื่นเพื่อเรียนรู้เพิ่มเติม:

g.co/ABH

รหัส: hex-number

กดปุ่มเปิด/ปิดเพื่อปิดเครื่อง

ยืนยันการปลดล็อค

หน้าจอตัวอย่าง:

ปลดล็อคหน้าจอคำเตือนอุปกรณ์

แสดงหน้าจอยืนยันการปลดล็อคเพื่อตอบสนองต่อคำสั่ง fastboot flashing unlock ที่กำลังดำเนินการผ่านอินเทอร์เฟซ fastboot โฟกัสเริ่มต้นที่ อย่าปลดล็อค หากผู้ใช้ไม่ได้โต้ตอบกับหน้าจอคำเตือนภายใน 30 วินาที หน้าจอจะหายไปและคำสั่งจะล้มเหลว

ข้อความที่แนะนำ:

หากคุณปลดล็อคโปรแกรมโหลดบูต คุณจะสามารถติดตั้งซอฟต์แวร์ระบบปฏิบัติการที่กำหนดเองบนโทรศัพท์เครื่องนี้ได้ ระบบปฏิบัติการที่กำหนดเองไม่อยู่ภายใต้การทดสอบในระดับเดียวกับระบบปฏิบัติการดั้งเดิม และอาจทำให้โทรศัพท์และแอปพลิเคชันที่ติดตั้งของคุณหยุดทำงานอย่างถูกต้อง ไม่สามารถรับประกันความสมบูรณ์ของซอฟต์แวร์ได้ด้วยระบบปฏิบัติการที่กำหนดเอง ดังนั้นข้อมูลใด ๆ ที่จัดเก็บไว้ในโทรศัพท์ในขณะที่ปลดล็อคโปรแกรมโหลดบูตอาจมีความเสี่ยง

เพื่อป้องกันการเข้าถึงข้อมูลส่วนบุคคลของคุณโดยไม่ได้รับอนุญาต การปลดล็อกโปรแกรมโหลดบูตจะลบข้อมูลส่วนบุคคลทั้งหมดในโทรศัพท์ของคุณด้วย

กดปุ่มเพิ่มระดับเสียง/ลดระดับเสียงเพื่อเลือกว่าจะปลดล็อคโปรแกรมโหลดบูตหรือไม่ จากนั้นกดปุ่มเปิด/ปิดเพื่อดำเนินการต่อ

ปลดล็อค

ปลดล็อคโปรแกรมโหลดบูต

อย่าปลดล็อค

อย่าปลดล็อค bootloader และรีสตาร์ทโทรศัพท์

ยืนยันการล็อค

แสดงหน้าจอยืนยันการล็อคเพื่อตอบสนองต่อคำสั่ง fastboot flashing lock ที่กำลังดำเนินการผ่านอินเทอร์เฟซของ fastboot โฟกัสเริ่มต้นที่ อย่าล็อค หากผู้ใช้ไม่ได้โต้ตอบกับหน้าจอคำเตือนภายใน 30 วินาที หน้าจอจะหายไปและคำสั่งจะล้มเหลว

ข้อความ:

หากคุณล็อค Bootloader คุณจะไม่สามารถติดตั้งซอฟต์แวร์ระบบปฏิบัติการแบบกำหนดเองบนโทรศัพท์เครื่องนี้ได้ เพื่อป้องกันการเข้าถึงข้อมูลส่วนบุคคลของคุณโดยไม่ได้รับอนุญาต การล็อคโปรแกรมโหลดบูตจะลบข้อมูลส่วนบุคคลทั้งหมดในโทรศัพท์ของคุณด้วย

กดปุ่มเพิ่มระดับเสียง/ลดระดับเสียงเพื่อเลือกว่าจะล็อคบูตโหลดเดอร์หรือไม่ จากนั้นกดปุ่มเปิด/ปิดเพื่อดำเนินการต่อ

ล็อค

ล็อคบูตโหลดเดอร์

อย่าล็อค

อย่าล็อค bootloader และรีสตาร์ทโทรศัพท์

การสื่อสารสถานะ Verified Boot ไปยัง Android

หน้าจอตัวอย่าง:

หน้าจอเตือนอุปกรณ์ยืนยัน LOCK

Bootloader สื่อสารสถานะ Verified Boot กับ Android ผ่านพารามิเตอร์คำสั่งเคอร์เนล หรือผ่าน bootconfig ที่เริ่มต้นด้วย Android 12 โดยจะตั้งค่าตัวเลือก androidboot.verifiedbootstate ให้เป็นค่าใดค่าหนึ่งต่อไปนี้

  • green : หากอุปกรณ์ LOCKED และไม่ได้ใช้รูทความน่าเชื่อถือที่ผู้ใช้กำหนดได้
  • yellow : หากอุปกรณ์ LOCKED และใช้รูทความน่าเชื่อถือที่ผู้ใช้กำหนดได้
  • orange : หากอุปกรณ์ถูก UNLOCKED

ตัวเลือก androidboot.veritymode ถูกตั้งค่าเป็น eio หรือ restart อยู่กับสถานะที่บูตโหลดเดอร์เกี่ยวข้องกับการจัดการข้อผิดพลาด dm-verity สำหรับรายละเอียดเพิ่มเติม โปรดดูที่ การจัดการข้อผิดพลาดในการยืนยัน