TOTP คือตัวย่อของ "time-based one-time password" (รหัสผ่านครั้งเดียวตามเวลา) ซึ่งเป็นเทคโนโลยีที่อยู่เบื้องหลังรหัส 6 หลักที่แสดงโดยแอปยืนยันตัวตน รหัส TOTP ถูกคำนวณจากกุญแจส่วนตัวที่ใช้ในการตั้งค่าและเวลาปัจจุบัน แล้วจะหมดอายุหลังจากช่วงเวลาสั้นๆ
TOTP มักถูกใช้เป็นขั้นตอนที่สองในกระบวนการยืนยันตัวตนสองขั้นตอน (two-factor authentication) มันสามารถทำงานได้แม้ไม่มีสัญญาณมือถือ เนื่องจากแอปยืนยันตัวตนจะคำนวณรหัสแบบท้องถิ่นแทนที่จะรอรับข้อความ
ข้อมูลใดที่ใช้สร้างรหัส TOTP?
มีข้อมูลสองอย่างที่สำคัญ: รหัสลับที่ใช้ร่วมกัน และตัวนับเวลา ผู้ให้บริการบัญชีจะสร้างรหัสลับนี้ในขั้นตอนการตั้งค่า และส่งให้คุณผ่านแอปยืนยันตัวตนด้วย QR code หรือรหัสที่ตั้งด้วยตนเอง หลังจากนั้น ทั้งสองฝ่ายจะแบ่งเวลาออกเป็นช่วงเวลาที่เท่ากัน และดำเนินการคำนวณทางเข้ารหัสแบบเดียวกัน
หากรหัสลับ อัลกอริทึม และช่วงเวลาตรงกัน ทั้งสองฝ่ายจะสร้างรหัสสั้นที่เหมือนกัน รหัสลับเองไม่จำเป็นต้องส่งผ่านทุกครั้งที่เข้าสู่ระบบ

TOTP ทำงานอย่างไร?
- ผู้ให้บริการจะสร้างรหัสลับที่ไม่ซ้ำกันสำหรับการลงทะเบียนอุปกรณ์ยืนยันตัวตน
- คุณสแกนรหัส QR สำหรับการตั้งค่า หรือป้อนรหัสลับด้วยตนเองบนอุปกรณ์ที่เชื่อถือได้
- อุปกรณ์ยืนยันตัวตนจะรวมรหัสลับกับช่วงเวลาปัจจุบัน
- ผลลัพธ์จะถูกแปลงเป็นรหัสตัวเลขสั้นๆ โดยทั่วไปมีหกหลัก
- ผู้ให้บริการจะคำนวณรหัสที่คาดไว้และเปรียบเทียบกับรหัสที่คุณป้อนRFC 6238 กำหนดให้ TOTP เป็นรูปแบบที่อิงตามเวลาของ HOTP การตั้งค่าทั่วไปใช้ช่วงเวลา 30 วินาที รหัส 6 หลัก และ HMAC-SHA-1 แม้ว่าจะมีอัลกอริทึมและการตั้งค่าอื่นๆ ที่รองรับ
RFC 6238 กำหนด TOTP เป็นรูปแบบของ HOTP ที่อิงตามเวลา การตั้งค่าทั่วไปใช้ช่วงเวลา 30 วินาที ตัวเลข 6 หลัก และ HMAC-SHA-1 แม้ว่าจะมีอัลกอริทึมและการตั้งค่าอื่น ๆ ที่ได้รับการสนับสนุนด้วย
ทำไมรหัส TOTP จึงหมดอายุ?
ระยะเวลาความถูกต้องที่สั้นจะจำกัดระยะเวลาที่รหัสที่ถูกคัดลอกสามารถใช้ซ้ำได้ เมื่อช่วงเวลาเปลี่ยนไป เครื่องยืนยันตัวตนจะสร้างค่าใหม่ขึ้นมา บริการอาจยอมรับช่วงเวลาที่ใกล้เคียงกันเพื่อชดเชยความล่าช้าของเครือข่ายและความแตกต่างของนาฬิกาเล็กน้อย แต่การยอมรับช่วงเวลาที่กว้างขึ้นก็จะทำให้ช่วงเวลาที่ยอมรับได้เพิ่มขึ้นด้วย
ป้อนรหัสใหม่เมื่อใกล้ถึงจุดเริ่มต้นของการนับถอยหลัง หากรหัสถูกปฏิเสธอย่างต่อเนื่อง ให้ทำตามคู่มือของเราเพื่อแก้ไขรหัส 2FA ที่ไม่ทำงาน
TOTP เทียบกับ HOTP
TOTP และ HOTP ใช้การคำนวณที่คล้ายกัน แต่ทำงานแตกต่างกัน:
- TOTP เปลี่ยนแปลงตามช่วงเวลา ดังนั้นนาฬิกาของอุปกรณ์ยืนยันตัวตนต้องถูกซิงโครไนซ์
- HOTP เปลี่ยนแปลงเมื่อตัวนับเพิ่มขึ้น เช่น หลังจากกดปุ่มหรือการใช้งานสำเร็จ
TOTP เป็นที่นิยมในแอปยืนยันตัวตนแบบซอฟต์แวร์ เนื่องจากเวลาเป็นปัจจัยที่เปลี่ยนแปลงอัตโนมัติ ส่วน HOTP ยังคงถูกใช้โดยโทเค็นฮาร์ดแวร์บางชนิดและระบบเฉพาะทาง
TOTP เทียบกับรหัส SMS
แอป TOTP คำนวณรหัสบนอุปกรณ์และทำงานแบบออฟไลน์ได้ปกติ ส่วน SMS ต้องพึ่งพาเครือข่ายโทรศัพท์เพื่อส่งรหัส SMS สะดวกแต่อาจได้รับผลกระทบจากการสลับซิม การเปลี่ยนหมายเลข การดักจับข้อมูล และความล้มเหลวในการส่ง
ทั้ง TOTP ทั่วไปและ SMS ล้วนไม่สามารถต้านทานการฟิชชิ่งได้อย่างสมบูรณ์: หน้าลงชื่อเข้าใช้ปลอมที่ดูน่าเชื่อถือสามารถจับและส่งต่อรหัสปัจจุบันได้ สำหรับบัญชีสำคัญ การใช้ passkey หรือ FIDO security key มักจะมีความปลอดภัยสูงกว่าหากระบบรองรับ ดูการเปรียบเทียบอย่างละเอียดระหว่างแอปยืนยันตัวตนกับ SMS ได้ที่นี่
TOTP secret คืออะไร?
รหัสลับคือข้อมูลรับรองที่มีอายุการใช้งานยาวนาน ซึ่งเป็นพื้นฐานของรหัสทั้งหมดในอนาคตสำหรับการลงทะเบียนนั้น ผู้ใดก็ตามที่มีรหัสลับนี้สามารถตั้งค่าแอปยืนยันตัวตนอื่นและสร้างค่าที่ตรงกันได้ ภาพหน้าจอของรหัส QR ในการตั้งค่าถือเป็นข้อมูลที่ละเอียดอ่อน เนื่องจากโดยปกติแล้วจะมีรหัสลับนั้นอยู่
คู่มือของเราอธิบายว่าสามารถหาคีย์การตั้งค่า 2FA แบบแมนนวลได้ที่ไหน และวิธีแยกแยะมันออกจากรหัสผ่านหรือรหัสกู้คืน
TOTP สามารถทำงานแบบออฟไลน์ได้หรือไม่?
ได้ครับ เมื่อตั้งค่าเสร็จแล้ว แอปยืนยันตัวตนต้องการเพียงรหัสลับและนาฬิกาที่แม่นยำเท่านั้น ไม่จำเป็นต้องมีการเชื่อมต่ออินเทอร์เน็ตที่ใช้งานอยู่ แต่บริการที่ตรวจสอบการเข้าสู่ระบบยังคงต้องเข้าถึงข้อมูลการลงทะเบียนที่เก็บไว้ได้
วิธีใช้เครื่องสร้าง TOTP อย่างปลอดภัย
- ใช้เฉพาะรหัสลับที่属于บัญชีที่คุณมีสิทธิ์จัดการเท่านั้น
- ตรวจสอบที่อยู่เว็บไซต์และอุปกรณ์ก่อนป้อนรหัสลับ
- อย่าส่งรหัสลับหรือรหัส QR สำหรับการตั้งค่าผ่านแชทหรือแบบฟอร์มสนับสนุนเด็ดขาด
- เก็บรหัสกู้คืนไว้แยกต่างหากจากอุปกรณ์ยืนยันตัวตนที่ใช้ประจำวัน
- สร้างรหัสใหม่ทันทีหากรหัสลับอาจถูกเปิดเผย
สำหรับการทดสอบที่ได้รับอนุญาต เครื่องสร้างรหัส TOTP ของ Get2FA.dev จะคำนวณรหัสมาตรฐานในเบราว์เซอร์ของคุณ สำหรับการใช้งานประจำวันในบัญชีสำคัญ ควรเลือกใช้แอปยืนยันตัวตนที่มีชื่อเสียงหรือวิธีการที่รองรับด้วยฮาร์ดแวร์
คำถามที่มักถูกถาม
รหัส TOTP มีอายุการใช้งานนานเท่าใด?
30 วินาทีเป็นค่าเริ่มต้นทั่วไป แต่ผู้ให้บริการสามารถกำหนดช่วงเวลาอื่นได้ การนับถอยหลังอยู่ในช่วงเวลาที่กำหนด และจะไม่เริ่มต้นใหม่เมื่อคุณดูหรือคัดลอกรหัส
ทำไมรหัส TOTP มักมี 6 หลัก?
6 หลักช่วยสร้างสมดุลระหว่างความสะดวกในการใช้งานกับจำนวนค่าที่เป็นไปได้ที่จำกัด การจำกัดอัตราการใช้และช่วงเวลาที่มีผลบังคับใช้ที่สั้นเป็นสิ่งสำคัญ เนื่องจากพื้นที่รหัสเองมีขนาดไม่ใหญ่
อุปกรณ์สองเครื่องสามารถแสดงรหัส TOTP ที่เดียวกันได้หรือไม่?
ได้ครับ หากทั้งสองอุปกรณ์เก็บรหัสลับเดียวกัน ใช้การตั้งค่าเดียวกัน และนาฬิกาถูกซิงโครไนซ์กัน การทำซ้ำการลงทะเบียนว่าเหมาะสมหรือไม่ ขึ้นอยู่กับนโยบายความปลอดภัยของคุณ
TOTP เหมือนกับ 2FA หรือไม่?
ไม่ TOTP เป็นหนึ่งในวิธีการยืนยันตัวตนที่เป็นไปได้ อ่านเพิ่มเติมเกี่ยวกับความหมายของ 2FA และวิธีการทำงานของวิธีการอื่นๆ ของระบบนี้
