วิธีใช้ Google Authenticator และหลักการทำงาน

วันนี้จะมาพูดถึงแอพจำพวก Authentication ซึ่งจริง ๆ ก็มีหลายตัวทั้งของ Google Microsoft หรือค่ายอื่น ๆ จะสังเกตุได้ว่าเดี่ยวนี้หลาย ๆ เว็บจะมีระบบให้เรายืนยัน 2 ขั้นตอนหรือที่เรียกว่า 2-step verification ซึ่งมีทั้งแบบรับรหัส OTP ผ่านทาง sms ซึ่งเป็นแบบเก่าบางครั้งมีปัญหาไม่ได้รับรหัสผ่าน ตอนนี้ก็มีระบบใหม่เพิ่มเข้ามาอีกก็คือ Google Authenticator จุดเด่นคือสามารถรับรหัสได้โดยไม่ใช้อินเตอร์เน็ต เจ้าแอพ Google Authenticator มีมาหลายปีแล้วบางคนอาจจะยังไม่เคยใช้ วันนี้ผมจะมาอธิบายให้ฟังและแนะนำการใช้งานพื้นฐาน

จากภาพคือตัวอย่างเว็บที่มีระบบยืนยัน 2 ขั้นตอน ซึ่งเริ่มแรกเว็บจะแนะนำให้ไปดาวโหลดแอพ Google Authenticator มาติดตั้งซะก่อน จากนั้นเปิดแอพขึ้นมาแล้วสแกนบาร์โค๊ดหรือจะพิมพ์ key เองก็ได้ เมื่อทำเรียบร้อยแล้วทางแอพ Google Authenticator ก็จะสุ่มรหัสผ่านมาให้ ก็นำมากรอกในขั้นตอนที่ 3 เพื่อยืนยันว่ารหัสผ่านถูกต้องตรงกันหรือไม่ ถ้าถูกต้องตรงกันก็เป็นอันว่าเสร็จสิ้น

มาดูในส่วนของแอพกันบ้าง จากภาพซ้ายเราสามารถเลือก “สแกนบาร์โค๊ดหรือป้อนคีย์ที่ให้ไว้” แบบไหนก็ได้ มีค่าเท่ากัน (จากในตัวอย่างผมเลือกพิมพ์ code เอง) เลือกแบบเวลาและกดเพิ่ม แค่นั้นก็เสร็จแล้วไม่มีอะไรยุ่งยากเลย ถ้าเลือกสแกนก็จะเป็นการเปิดกล้อง นำกล้องไปจ่อที่ code ก็เสร็จ

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

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

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

และสุดท้ายอย่าลืมจด key ตั้งต้นเก็บเอาไว้ด้วยเผื่อว่าทำมือถือหาย เวลาซื้อมือถือใหม่กลับมาลงแอพ Google Authenticator ก็สามารถใช้ key เดิมได้เลย ไม่ต้องเสียเวลาไปใช้ระบบกู้คืนรหัสในเว็บ และอย่าให้ใครล่วงรู้ key เด็ดขาดเพราะเขาสามารถนำไปใช้กับ Google Authenticator เพื่อรับรหัสยืนยัน 2 ขั้นตอนของเราได้นะ และทางเว็บส่วนมากจะมี backup code ให้เราจดเอาไว้กันเหนียวอีกทางหนึ่งด้วยในกรณีที่เราไม่สามารถ login ได้