Trình tạo TOTP

Biến khóa bí mật base32 thành mã TOTP trực tiếp ngay trong trình duyệt, kèm mã QR để quét, nhập otpauth:// và trình kiểm tra mã.

Đang tải công cụ…

Trình tạo TOTPDán một khóa bí mật base32 — hoặc cả một URI thiết lập otpauth:// — và xem mã xác thực hai yếu tố TOTP tương ứng cập nhật mỗi giây, hệt như Google Authenticator hay Authy. Chọn SHA-1, SHA-256 hoặc SHA-512, 6 hoặc 8 chữ số và khoảng thời gian tùy chỉnh, thêm nhãn nhà phát hành và tài khoản, quét mã QR được tạo vào ứng dụng của bạn, và kiểm tra mã đã nhập với cửa sổ một bước. Mọi thứ được tính toán cục bộ bằng Web Crypto API, nên khóa bí mật của bạn không bao giờ rời khỏi trình duyệt.

Trình tạo TOTP là gì?

Trình tạo TOTP là một công cụ trực tuyến miễn phí biến một khóa bí mật chia sẻ base32 thành cùng một mật khẩu dùng một lần dựa trên thời gian (TOTP) mà các ứng dụng như Google Authenticator, Authy hay Microsoft Authenticator tạo ra, và có thể xử lý qua lại một URI thiết lập otpauth:// đầy đủ. Các lập trình viên và kỹ sư QA dùng nó để kiểm thử các luồng hai yếu tố, đăng ký một tài khoản thử nghiệm bằng cách quét mã QR của nó, hoặc xác nhận một mã đã nhập là hợp lệ. Nó triển khai RFC 6238 dựa trên HOTP của RFC 4226, tính HMAC với hàm băm SHA-1, SHA-256 hoặc SHA-512 bạn chọn và áp dụng cắt ngắn động thành mã 6 hoặc 8 chữ số đổi sau mỗi khoảng thời gian. Dán một URI otpauth:// để tự động điền khóa bí mật, nhà phát hành, tài khoản, thuật toán, số chữ số và khoảng thời gian; mã trực tiếp, bộ đếm ngược, mã QR có thể quét và trình kiểm tra mã với cửa sổ cộng/trừ một bước đều tự cập nhật.

Cách sử dụng Trình tạo TOTP

  1. Dán khóa bí mật base32 vào ô Khóa bí mật, nhấp Tạo khóa bí mật để có một khóa ngẫu nhiên mới, hoặc dán một URI otpauth:// rồi nhấp Điền từ URI để tự động điền mọi trường.
  2. Mở phần cài đặt để chọn thuật toán băm (SHA-1, SHA-256 hoặc SHA-512), 6 hoặc 8 chữ số và khoảng thời gian theo giây — mã được tính lại đúng theo các lựa chọn đó.
  3. Thêm nhãn nhà phát hành và tài khoản để URI otpauth:// và mã QR được tạo nhận diện tài khoản.
  4. Đọc mã hiện tại ở ô Mã rồi sao chép, hoặc quét mã QR vào ứng dụng xác thực của bạn để đăng ký tài khoản.
  5. Nhập một mã vào Kiểm tra mã để đối chiếu với mã hiện tại và một bước trước hoặc sau.

Ví dụ

Thêm tài khoản thử nghiệm bằng mã QR

Nhập một khóa bí mật, đặt nhà phát hành như Example Corp và tài khoản như alice@example.com, rồi quét mã QR được tạo bằng Google Authenticator hoặc Authy. Vì mã QR mã hóa cùng khóa bí mật, thuật toán, số chữ số và khoảng thời gian, cả hai bên tạo ra các mã giống hệt nhau.

Nhập một URI otpauth:// có sẵn

Dán một chuỗi như otpauth://totp/Example:alice@example.com?secret=JBSWY3DPEHPK3PXP&issuer=Example&algorithm=SHA256&digits=8&period=30 và nhấp Điền từ URI; khóa bí mật, nhà phát hành, tài khoản, thuật toán SHA-256, 8 chữ số và khoảng thời gian 30 giây được điền tự động và mã trực tiếp xuất hiện.

Kiểm tra một mã với cửa sổ bước

Dán mã mà ứng dụng của bạn đang hiển thị vào Kiểm tra mã. Nó được đánh dấu hợp lệ dù khớp với bước 30 giây hiện tại hay bước ngay trước hoặc sau, điều này bao phủ độ lệch đồng hồ nhỏ giữa các thiết bị.

Câu hỏi thường gặp

Khóa bí mật của tôi có được tải lên đâu không?
Không. Khóa bí mật base32, URI otpauth:// và mã QR đều ở trong trình duyệt của bạn. Mã được tính cục bộ bằng Web Crypto API và QR được vẽ trên thiết bị, nên không có gì được gửi đến hay lưu trên bất kỳ máy chủ nào và công cụ hoạt động ngoại tuyến.
Những thuật toán nào được hỗ trợ?
SHA-1, SHA-256 và SHA-512. Thuật toán được chọn dùng cho HMAC thực tế, nên mã khớp với dịch vụ được cấu hình cho bất kỳ thuật toán nào trong số đó. SHA-1 là mặc định mà hầu như mọi ứng dụng xác thực đều dùng.
Làm sao để thêm tài khoản vào ứng dụng xác thực của tôi?
Điền khóa bí mật cùng nhà phát hành và tài khoản, rồi quét mã QR được tạo — mã hóa một URI otpauth://totp — bằng Google Authenticator, Authy hoặc ứng dụng tương tự, hoặc tải QR dưới dạng PNG. Bạn cũng có thể sao chép URI otpauth:// trực tiếp.
Trình kiểm tra mã kiểm tra điều gì?
Nó so sánh mã bạn nhập với mã của khoảng thời gian hiện tại và các mã một bước trước và sau (cửa sổ cộng/trừ một), nên một mã vừa hết hạn hoặc hơi sớm vẫn được chấp nhận. Điều này phản ánh mức dung sai nhỏ mà hầu hết máy chủ cho phép đối với độ lệch đồng hồ.
Vì sao mã của tôi không khớp với ứng dụng xác thực?
TOTP phụ thuộc vào thời gian hiện tại cùng khóa bí mật, thuật toán, độ dài chữ số và khoảng thời gian chính xác. Hãy kiểm tra thuật toán (SHA-1/256/512), số chữ số (6 hay 8) và khoảng thời gian (thường 30 giây) có khớp với dịch vụ của bạn không, bạn đã dán đầy đủ khóa bí mật chưa, và đồng hồ thiết bị có chính xác không.

Công cụ liên quan