สถานะของอุปกรณ์

สถานะอุปกรณ์จะระบุว่าสามารถแฟลชซอฟต์แวร์ในอุปกรณ์ได้อย่างอิสระเพียงใด และ ว่ามีการบังคับใช้การยืนยันหรือไม่ สถานะของอุปกรณ์คือLOCKEDและ UNLOCKED อุปกรณ์ LOCKED เครื่องป้องกันไม่ให้คุณกะพริบ กับอุปกรณ์ ในขณะที่ UNLOCKED อุปกรณ์ การแก้ไข

เมื่อเปิดอุปกรณ์ Bootloader จะตรวจสอบก่อนว่าอุปกรณ์ LOCKED หรือ UNLOCKED หากอุปกรณ์คือ UNLOCKED แล้ว Bootloader จะแสดงคำเตือนแก่ผู้ใช้แล้วจึงดำเนินการต่อ ในการเปิดเครื่องแม้ว่าระบบปฏิบัติการที่โหลดจะไม่ได้ลงชื่อโดย Root of Trust

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

การเปลี่ยนสถานะอุปกรณ์

หากต้องการเปลี่ยนสถานะของอุปกรณ์ ให้ใช้ คำสั่ง fastboot flashing [unlock | lock] เพื่อปกป้องผู้ใช้ ข้อมูล การเปลี่ยนสถานะทั้งหมดจะล้างพาร์ติชันข้อมูลและถามหาผู้ใช้ การยืนยันก่อนที่ข้อมูลจะถูกลบ

คาดว่าจะเปลี่ยน UNLOCKED เป็น LOCKED ได้เมื่อ ผู้ใช้ซื้ออุปกรณ์การพัฒนามือสอง เนื่องจากการล็อกอุปกรณ์ ผู้ใช้ควรมั่นใจได้ว่าอุปกรณ์อยู่ในสถานะที่อุปกรณ์สร้างขึ้น แต่ไม่มีคำเตือน LOCKED ไปยัง คาดว่าการเปลี่ยน UNLOCKED จะเกิดขึ้นเมื่อนักพัฒนาซอฟต์แวร์ต้องการปิดใช้ ในอุปกรณ์เพื่อการพัฒนา

รูทของความน่าเชื่อถือ

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

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

รูทของความน่าเชื่อถือที่ผู้ใช้ตั้งค่าได้

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

หากมีการใช้รูทความน่าเชื่อถือที่ผู้ใช้กำหนดได้ ก็ควรดำเนินการในลักษณะที่ ซึ่ง:

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

วิธีหนึ่งในการติดตั้งใช้งานรูทของความน่าเชื่อถือที่ผู้ใช้ตั้งค่าได้คือการมี พาร์ติชันที่จะกะพริบหรือล้างได้ก็ต่อเมื่ออุปกรณ์อยู่ใน รัฐUNLOCKED อุปกรณ์ Google Pixel 2 ใช้แนวทางนี้และ พาร์ติชันเสมือนมีชื่อว่า avb_custom_key รูปแบบของ ในพาร์ติชันนี้คือเอาต์พุตของ คำสั่ง avbtool extract_public_key ต่อไปนี้เป็นตัวอย่างวิธีการตั้งค่า ระดับรูทของความน่าเชื่อถือที่ผู้ใช้กำหนดได้ ได้แก่

avbtool extract_public_key --key key.pem --output pkmd.bin
fastboot flash avb_custom_key pkmd.bin

คุณสามารถล้างรูทของความน่าเชื่อถือที่ผู้ใช้กำหนดได้โดยการออกรายการต่อไปนี้

fastboot erase avb_custom_key