รักษาความปลอดภัยของ NFC

Android รองรับการจำลองบัตรแบบออฟโฮสต์ ซึ่งหมายถึง การจำลองบัตร NFC ด้วยองค์ประกอบที่ปลอดภัย ดูข้อมูลเพิ่มเติมได้ที่ภาพรวมโปรแกรมจำลองการ์ดแบบโฮสต์

ในกรณีการใช้งานบางอย่าง เช่น การใช้ FeliCa สำหรับการเดินทาง จะอนุญาตให้ใช้การจำลองบัตรนอกโฮสต์ได้เมื่อหน้าจอของอุปกรณ์ล็อกหรือปิดอยู่ หรือเมื่ออุปกรณ์ปิดอยู่

NFC ที่ปลอดภัยเป็นฟีเจอร์ที่เปิดตัวใน Android 10 ซึ่งอนุญาตให้เปิดใช้การจำลองบัตร NFC นอกโฮสต์ ได้เฉพาะเมื่อหน้าจอของอุปกรณ์ไม่ได้ล็อกอยู่เท่านั้น การใช้ฟีเจอร์นี้จะช่วยให้ผู้ใช้มีตัวเลือกในการเปิดใช้ NFC ที่ปลอดภัยเพื่อเพิ่มความปลอดภัย

การใช้งาน

หากต้องการใช้ฟีเจอร์ NFC ที่ปลอดภัย อุปกรณ์ต้องมีตัวควบคุม NFC ที่ รองรับมาตรฐาน NCI 2.0 และต้องใช้เฟรมเวิร์ก NFC ของ Android Open Source Project (AOSP) เพิ่มฮาร์ดแวร์ (ro.boot.hardware.sku) ที่รองรับ ฟีเจอร์ NFC ที่ปลอดภัยใน ไฟล์ XML ของทรัพยากร NFC ด้วยแอตทริบิวต์ config_skuSupportsSecureNfc

Framework API

หากต้องการใช้ NFC ที่ปลอดภัย ให้ใช้ API ของเฟรมเวิร์กต่อไปนี้ซึ่งอยู่ใน โปรเจ็กต์โอเพนซอร์สของ Android

  • isSecureNfcSupported(): ตรวจสอบว่าอุปกรณ์รองรับฟีเจอร์ NFC ที่ปลอดภัยหรือไม่
  • isSecureNfcEnabled(): ตรวจสอบว่าได้เปิดใช้ฟีเจอร์ NFC ที่ปลอดภัยหรือไม่
  • enableSecureNfc(boolean enable): เปิดใช้ฟีเจอร์ NFC ที่ปลอดภัย

UI การตั้งค่า

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

รูปที่ 1 แสดงตัวอย่างสวิตช์เปิด/ปิดเพื่อเปิดและปิดใช้ NFC ที่ปลอดภัย ในแอปการตั้งค่าที่การตั้งค่า > อุปกรณ์ที่เชื่อมต่อ > ค่ากำหนดการเชื่อมต่อ > NFC > ต้องปลดล็อกอุปกรณ์เพื่อใช้งาน NFC

ขั้นตอน UI ของ NFC ที่ปลอดภัย

รูปที่ 1 ตัวอย่างสวิตช์เปิด/ปิดเพื่อเปิดและปิดใช้ NFC ที่ปลอดภัย

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

การแจ้งเตือน NFC ที่ปลอดภัย

รูปที่ 2 ปลดล็อกเพื่อใช้การแจ้งเตือน NFC บนหน้าจอล็อก

การตรวจสอบความถูกต้อง

หากต้องการตรวจสอบการติดตั้งใช้งาน ให้เปิดใช้ฟีเจอร์ NFC ที่ปลอดภัยและตรวจสอบว่า การจำลองบัตร NFC ปิดอยู่เมื่อหน้าจอของอุปกรณ์ปิดหรือล็อกอยู่ และ เมื่ออุปกรณ์ปิดอยู่