How to prevent the insecure data storage – Android Keyboard Caching

บทนำ (Overview)

ในช่องกรอกข้อมูลสำคัญนั้น เช่น รหัสผ่าน ข้อมูลส่วนบุคคล สิ่งหนึ่งที่สำคัญคือไม่อยากให้เครื่อง Android จดจำข้อความเหล่านั้นไว้ โดยเฉพาะกรณีผู้ใช้เปิดใช้งาน Predictive Text  (สามารถติดตามเพิ่มเติมได้ที่บทความ  How to disable/enable Android predictive text) ดังต่อไปนี้

ขั้นตอน (Steps)

  1. ในการเขียนโปรแกรมเราสามารถตั้งค่า Text Box ให้เป็นลักษณะการ Masked ของ Password ข้อความเหล่านั้นจะไม่ถูกจัดเก็บสำหรับ Predictive Text ดังนี้
    android:inputType="txtPassword"
    
  2. ผลจากการใช้คำสั่งเป็นดังนี้
  3. หรืออีกในรูปแบบสำหรับแสดงข้อมูลที่พิมพ์ลงไป แต่ไม่ Masked และไม่จัดเก็บสำหรับ Predictive Text ดังนี้
    android:inputType="textVisiblePassword"
    
  4. ผลจากการใช้คำสั่งเป็นดังนี้
  5. จากผลลัพธ์ข้างต้นจะพบว่าเครื่อง Android จะไม่จดจำ Predictive Text เอาไว้ ที่นี้ทดสอบกับ Text Box ที่ไม่ได้ตั้งค่าดังกล่าว เราจะพบว่าช่องที่ตั้งใจให้รับค่าเฉพาะที่เป็นตัวเลข จะไม่ทำนาย Text ที่เป็นตัวเลขให้เรา
  6. นอกเหนือจากนั้นจะถูกจดจำหมดดังนี้

 

ใส่ความเห็น