วันนี้เราจะมาทำความรู้จักกับ FIDO Standards หรือ มาตรฐานของ FIDO ซึ่งเป็น Open Standard Protocol โดยมีการออกใบอนุญาตรับรองสองประเภทคือ UAF และ U2F หากระบบใดมีการอิมพลีเม้นต์ตามมาตรฐานแล้ว จะสามารถใช้ร่วมกับระบบอื่นๆ ที่ใช้มาตรฐานเดียวกันไม่ว่าจะใช้ยี่ห้อใดก็ตาม ซึ่งเป็นอุปสรรคของการนำระบบ Biometric มาใช้ในอดีต (เพราะหากซื้อระบบของ ยี่ห้อใด ก็ต้องซื้ออุปกรณ์ของยี่ห้อนั้นตลอดไป หรือ Locked-In นั่นเอง)
1. UAF (Universal Authentication Framework) คือ Passwordless User Experience
มีหลักการง่ายๆ คือ ผู้ใช้จะต้องมีอุปกรณ์ที่มี UAF Compatible อยู่ อาจจะเป็นฮาร์ดแวร์หรือเป็นแอปพลิเคชันก็ได้ เช่น สมาร์ทโฟนระบบ iOS/Android ที่มี UAF Stack ดังเช่นรุ่นที่มี Programmable Secure Enclave เมื่อผู้ใช้ต้องการล็อกอินเข้าเว็บหรือเข้าระบบที่รองรับ UAF ผู้ใช้ยืนยันตัวตนเข้ากับอุปกรณ์ที่ตนเองถืออยู่ด้วย Biometric หรือ PIN (ในกรณีที่อุปกรณ์ไม่มี Biometric) อุปกรณ์ดังกล่าวก็จะยืนยันตัวตนเพื่อเข้าเว็บหรือระบบโดยไม่มีการส่ง Biometric หรือ PIN ไปยังระบบ (กล่าวคือ Biometric หรือ PIN นั้นจะไม่ถูกส่งออกจากอุปกรณ์ของผู้ใช้เลย ทำให้ไม่สามารถถูกขโมยได้) โดยวิธีการยืนยันตัวตนนั้นใช้ Cryptographic Protocol ที่สามารถป้องกันการโจมตีได้ (Public Key Cryptography) ซึ่งการยืนยันตัวตนแบบ UAF นั้น เทียบได้กับการมี 2-Factor Authentication คือ
– Something You Are (Biometric)
– Something You Have (อุปกรณ์ UAF)
2. U2F (Universal Second Factor) หรือ Second Factor User Experience
คือการที่ผู้ใช้ล็อกอินเข้าเว็บหรือระบบด้วย Username/Password จากนั้นระบบจะถามหา U2F Device ผู้ใช้จึงยืนยันตัวตนกับอุปกรณ์ดังกล่าว โดยระบบจะสื่อสารกับเว็บหรือระบบเองด้วย Protocol ที่ปลอดภัยเช่นเดียวกับ UAF เพื่อใช้ในการยืนยันตัวตน ซึ่งรูปแบบนี้จะเสมือนกับการทำ 3-Factor Authentication คือ
– Something You Know (Username/Password)
– Something You Are (Biometric)
– Something You Have (อุปกรณ์ U2F)
แต่การยืนยันตัวตนทั้งหมดนี้จะต้องมีการลงทะเบียนอุปกรณ์ UAF/U2F ไว้กับระบบก่อน เรียกว่า ขั้นตอน Registration เป็นการนำ Public Key ของ UAF/U2F Device ไปผูกกับ Biometric (หรือ PIN) จากนั้นฝากไว้ที่เซิร์ฟเวอร์ ผูก Identity ของผู้ใช้ (Something You Are) เข้ากับอุปกรณ์ดังกล่าว (Something You Have)
หากคนร้ายได้อุปกรณ์ดังกล่าวไปก็ไม่สามารถใช้ยืนยันตัวตนได้เนื่องจากไม่มี Biometric หรือ PIN หรือหากคนร้ายขโมย Biometric หรือ PIN ไปได้ เช่น ลอกลายนิ้วมือ อัดเสียง ก็ไม่มีอุปกรณ์ดังกล่าว และหากซื้ออุปกรณ์ชิ้นใหม่ก็จะไม่สามารถล็อกอินได้เพราะระบบผูก Biometric เข้ากับอุปกรณ์นั้นเพียงชิ้นเดียว
//////////
ทั้งนี้ W3C องค์กรมาตรฐานเว็บ ได้มีการเปิดตัวมาตรฐาน WebAuthn ที่พัฒนาต่อมาจาก FIDO2 และ Client to Authenticator Protocol (CTAP) โดยได้รับการสนับสนุนจาก Chrome, Edge, และไฟร์ฟอกซ์
มาตรฐาน CTAP คือ การสร้างมาตรฐานการเชื่อมต่อระหว่างเบราว์เซอร์ และอุปกรณ์สำหรับยืนยันตัวตน ไม่ว่าจะเป็นกุญแจอิเล็กทรอนิกส์หรือโทรศัพท์มือถือ โดยสามารถเชื่อมต่อได้ทั้ง NFC, USB, หรือ Bluetooth เพื่อการยืนยันตัวตนผู้ใช้กับบริการที่ใช้ทางอินเทอร์เน็ต
มาตรฐานนี้ทำงานร่วมกับมาตรฐาน FIDO UAF และ U2F ที่ออกมาก่อนแล้วได้
โดย WebAuthn ที่เปิดให้บริการสามารถเลือกได้ว่าจะยืนยันตัวตนผู้ใช้จากกระบวนการเข้ารหัสลับของอย่างเดียวหรือใช้งานร่วมกับรหัสผ่านแบบเดิมก็ได้ โดยมีข้อดีคือหากอุปกรณ์ยืนยันตัวตนนั้นยืนยันผู้ใช้ด้วยข้อมูลชีวภาพ เช่น ลายนิ้วมือ ผู้ใช้ก็ไม่ต้องส่งข้อมูลนั้นให้บริการแต่อย่างใด ขณะที่กุญแจอิเล็กทรอนิกส์จะสามารถตรวจสอบได้ว่าเว็บที่มาขอยืนยันตัวตนเป็นบริการเดิม ช่วยให้ป้องกันผู้ใช้จากการโจมตี phishing ได้
ที่มา:
https://www.g-able.com/c…/fido-future-online-authentication/
https://www.blognone.com/node/101421
https://fidoalliance.org