ใช้ฟีเจอร์ที่อธิบายไว้ในส่วนนี้เพื่อทำให้อุปกรณ์ 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 ไปยังพาร์ติชันการเปิดเครื่อง และพาร์ติชันอื่นๆ ที่ได้รับการยืนยัน