ฟีเจอร์ด้านความปลอดภัยของ Android

ใช้ฟีเจอร์ที่อธิบายไว้ในส่วนนี้เพื่อทำให้อุปกรณ์ Android ที่คุณพัฒนาปลอดภัยที่สุด

แซนด์บ็อกซ์ของแอปพลิเคชัน

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

การลงนามแอป

การลงนามในแอปช่วยให้นักพัฒนาแอปสามารถระบุผู้เขียนแอป และอัปเดตแอปได้โดยไม่ต้องสร้างอินเทอร์เฟซและ สิทธิ์ที่ซับซ้อน แอปทุกแอปที่ทำงานบนแพลตฟอร์ม Android ต้องได้รับการลงนามโดยนักพัฒนาแอป

การตรวจสอบสิทธิ์

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

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

นอกจากนี้ Android ยังรองรับคีย์การเข้ารหัสที่สนับสนุนด้วยฮาร์ดแวร์ซึ่งจะใช้ได้ก็ต่อเมื่อมีการตรวจสอบสิทธิ์ผู้ใช้ด้วยกลไกใดกลไกหนึ่งเหล่านี้

ข้อมูลไบโอเมตริก

Android 9 ขึ้นไปมีBiometricPrompt คลาส ที่นักพัฒนาแอปสามารถใช้เพื่อผสานรวมการตรวจสอบสิทธิ์ด้วยข้อมูลไบโอเมตริกเข้ากับแอปของตน ในลักษณะที่ไม่ขึ้นกับอุปกรณ์และรูปแบบ เฉพาะข้อมูลไบโอเมตริกที่รัดกุมเท่านั้นที่ ผสานรวมกับ BiometricPrompt ได้

การเข้ารหัส

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

คีย์สโตร์

Android มีที่เก็บคีย์ที่สนับสนุนด้วยฮาร์ดแวร์ซึ่งมีฟังก์ชันการเข้ารหัส ที่เก็บเนื้อหาคีย์ไว้ในสภาพแวดล้อมที่ปลอดภัย ที่เก็บคีย์ของ Android รองรับการสร้างและนำเข้าทั้งคีย์แบบสมมาตรและแบบอสมมาตร รวมถึงการเข้ารหัส การถอดรหัส การลงนาม และการตกลงคีย์

Security-Enhanced Linux

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

Trusty TEE

Trusty TEE

Trusty เป็นระบบปฏิบัติการ (OS) ที่ปลอดภัยซึ่ง มี TEE สำหรับ Android ระบบปฏิบัติการ Trusty ทำงานบนโปรเซสเซอร์เดียวกับระบบปฏิบัติการ Android แต่ Trusty จะแยกออกจากส่วนอื่นๆ ของระบบทั้งโดยฮาร์ดแวร์และซอฟต์แวร์

การเปิดเครื่องที่ได้รับการยืนยัน

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