คุณลักษณะด้านความปลอดภัยของ Android

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

แซนด์บ็อกซ์แอป

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

การลงนามแอป

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

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

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

บนอุปกรณ์ที่มีเซ็นเซอร์ลายนิ้วมือ ผู้ใช้สามารถลงทะเบียนลายนิ้วมือได้ตั้งแต่หนึ่งลายนิ้วมือขึ้นไป และใช้ลายนิ้วมือเหล่านั้นเพื่อปลดล็อกอุปกรณ์และทำงานอื่นๆ ระบบย่อย Gatekeeper ดำเนินการตรวจสอบรูปแบบอุปกรณ์/รหัสผ่านใน Trusted Execution Environment (TEE)

Android 9 ขึ้นไปมี Protected Confirmation ซึ่งช่วยให้ผู้ใช้สามารถยืนยันธุรกรรมที่สำคัญอย่างเป็นทางการ เช่น การชำระเงิน

ไบโอเมตริกซ์

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

การเข้ารหัส

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

ที่เก็บคีย์

Android นำเสนอ Keystore ที่สนับสนุนด้วยฮาร์ดแวร์ซึ่งให้การสร้างคีย์ นำเข้าและส่งออกคีย์ที่ไม่สมมาตร นำเข้าคีย์ดิบสมมาตร การเข้ารหัสและการถอดรหัสแบบไม่สมมาตรด้วยโหมดการเติมที่เหมาะสม และอื่นๆ

Linux ที่ปรับปรุงความปลอดภัย

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

สภาพแวดล้อมการดำเนินการที่เชื่อถือได้ที่เชื่อถือได้ (TEE)

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

ยืนยันการบูต

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