Khóa bí mật 2FA là gì? Giải thích Base32, TOTP và URI otpauth

Digital Account Market

· Cập nhật lần cuối:

Khóa bí mật 2FA là chuỗi chữ và số ngắn mà ứng dụng xác thực biến thành mã sáu chữ số bạn nhập khi đăng nhập. Nếu đơn hàng của bạn có kèm khóa này, đó là trường quan trọng nhất trong dòng sau mật khẩu, nhưng cũng là trường người mua hay gõ sai hoặc nhầm với thứ khác nhất. Bài hướng dẫn này giải thích chuỗi đó là gì, Base32 trông ra sao, và khóa bí mật khác mã dự phòng cũng như nội dung mã QR ở điểm nào.

Bạn cũng sẽ biết cách tìm khóa trong một dòng giao hàng và xác nhận chỉ trong vài giây rằng nó dùng được, để với bất kỳ chuỗi nào trong tệp, bạn phân biệt được đó là khóa bí mật, mã dự phòng hay thứ gì khác.

Khóa bí mật 2FA là gì và nó tạo mã sáu chữ số như thế nào

Mật khẩu dùng một lần theo thời gian (TOTP, được định nghĩa trong RFC 6238) được tạo từ hai thành phần: một bí mật dùng chung và thời gian hiện tại. Khi thiết lập 2FA, nền tảng tạo ra khóa bí mật và giữ một bản sao, còn ứng dụng xác thực của bạn giữ bản sao còn lại. Cứ 30 giây, cả hai bên chạy cùng một phép tính trên khóa và đồng hồ, rồi cho ra cùng sáu chữ số.

Điều này kéo theo ba hệ quả thực tế:

  • Khóa bí mật là chiếc chìa khóa thứ hai của tài khoản. Ai nắm giữ nó đều có thể tạo mã hợp lệ từ bất kỳ thiết bị nào, miễn là thiết lập 2FA đó còn hiệu lực.
  • Mã không được lưu ở đâu cả. Mỗi mã được tính lại sau mỗi 30 giây, nên ảnh chụp màn hình một mã cũ là vô dụng.
  • Đồng hồ rất quan trọng. Nếu thiết bị tạo mã lệch giờ thật một phút trở lên, ngay cả khóa đúng cũng cho ra mã bị từ chối.

Base32: các ký tự trông thế nào và những lỗi gõ thường gặp

Khóa bí mật được viết bằng Base32, bảng ký tự gồm 26 chữ cái in hoa từ A đến Z và các chữ số từ 2 đến 7. Toàn bộ bảng ký tự chỉ có vậy. Các chữ số 0, 1, 8, 9 không bao giờ xuất hiện, dấu câu cũng không. Một ví dụ minh họa (không phải khóa của tài khoản thật) trông như sau: JBSWY3DPEHPK3PXP. Khóa thật thường dài từ 16 đến 32 ký tự.

Vì chỉ có 32 ký tự hợp lệ, phần lớn lỗi gõ đều dễ phát hiện:

  • Số 0, 1 hoặc 8 ở giữa khóa cho thấy một ký tự đã bị đọc nhầm. Số 0 thường là chữ O, số 1 thường là chữ I hoặc L, còn số 8 thường là chữ B.
  • Chữ thường thường không sao, vì hầu hết ứng dụng sẽ tự chuyển sang chữ hoa.
  • Một hoặc nhiều dấu "=" ở cuối là ký tự đệm (padding). Nhiều ứng dụng chấp nhận khóa có hoặc không có chúng.
  • Ký tự thừa vô hình, chẳng hạn khoảng trắng hoặc dấu xuống dòng ở cuối bị sao chép từ tệp văn bản, thường gây ra thông báo "khóa không hợp lệ".

URI otpauth, mã QR và khóa dạng văn bản thuần

Cùng một khóa bí mật có thể đến với bạn dưới ba dạng, và nhầm lẫn giữa chúng gây ra rất nhiều rắc rối:

  • Khóa dạng văn bản thuần. Chỉ riêng chuỗi Base32. Các ứng dụng xác thực gọi nó là khóa thiết lập hoặc khóa nhập thủ công.
  • Mã QR. Một hình ảnh mã hóa URI otpauth để điện thoại quét thay vì bạn phải gõ khóa.
  • URI otpauth. Một dòng văn bản như otpauth://totp/Example:user?secret=JBSWY3DPEHPK3PXP&issuer=Example. Giá trị sau secret= chính là khóa Base32. Phần còn lại là nhãn và các cài đặt như issuer, algorithm, digits và period.

Nếu bạn chỉ có ảnh mã QR hoặc liên kết otpauth, khóa bí mật là đoạn văn bản sau secret= và trước dấu & kế tiếp. Thiết lập tiêu chuẩn dùng SHA-1, sáu chữ số và chu kỳ 30 giây, và ứng dụng sẽ mặc định như vậy khi bạn chỉ nhập khóa. Quét mã QR hoặc nhập toàn bộ URI cũng sẽ áp dụng các cài đặt khác mặc định mà nó chứa.

Khóa bí mật 2FA, mã dự phòng và email khôi phục

Ba thứ này bảo vệ cùng một tài khoản nhưng làm những việc hoàn toàn khác nhau:

  • Khóa bí mật 2FA. Chuỗi Base32 dùng lâu dài, tạo mã mới mỗi 30 giây. Chỉ thay đổi khi 2FA được đặt lại hoặc thiết lập lại.
  • Mã dự phòng. Các mã dùng một lần mà nền tảng có thể cung cấp cho ngày bạn không truy cập được ứng dụng xác thực. Mỗi mã chỉ dùng được một lần. Chúng không phải khóa Base32, nên ứng dụng xác thực hay công cụ TOTP không dùng được.
  • Email khôi phục. Là một hộp thư, không phải mã. Nó nhận xác nhận đăng nhập và liên kết đặt lại. Trong dòng giao hàng, nó xuất hiện dưới dạng địa chỉ email, thường kèm theo mật khẩu riêng của hộp thư đó.

Khóa bí mật tạo mã dùng hằng ngày, mã dự phòng là bánh xe dự phòng, còn email khôi phục là đường quay lại khi có thứ khác trục trặc. Hãy ghi nhãn riêng từng loại trong sổ ghi chép của bạn.

Tìm khóa bí mật trong dòng giao hàng và kiểm tra nó

Hàng giao đến dưới dạng tệp TXT với các dòng như username:password:email:email_password:auth_token, và các trường cụ thể thay đổi theo danh mục. Khi một danh mục có kèm khóa 2FA, nó là thêm một trường trong dòng đó. Đừng đếm vị trí một cách mù quáng: hãy đọc mô tả danh mục rồi so với dòng đầu tiên của tệp.

Bạn cũng có thể nhận ra các trường qua hình dạng của chúng:

  • Khóa bí mật dài từ 16 ký tự trở lên, gồm chữ cái in hoa và chữ số từ 2 đến 7, không có dấu câu.
  • auth_token là một chuỗi thập lục phân dài. Nó là token phiên, không phải bộ tạo mã, và không thể thay thế khóa bí mật. Về quy trình này, xem cách đăng nhập Twitter bằng auth token.
  • Mật khẩu có thể chứa dấu hai chấm, vì vậy tách dòng một cách qua loa theo ":" đôi khi làm hỏng dòng.

Để kiểm tra mọi dòng có cùng bố cục, hãy dán một đoạn mẫu vào công cụ nhận diện định dạng. Để chỉ lấy cột chứa các khóa bí mật, dùng công cụ tách theo dấu phân cách.

Sau đó kiểm tra khóa trong vài giây. Mở công cụ tạo mã 2FA miễn phí, dán khóa bí mật và một mã sáu chữ số sẽ hiện ra cùng bộ đếm ngược. Nếu công cụ báo khóa không hợp lệ, hãy quay lại danh sách lỗi gõ ở trên. Nếu mã hiện ra nhưng đăng nhập từ chối, hãy kiểm tra đồng hồ thiết bị và làm theo hướng dẫn phải làm gì khi mã 2FA không hoạt động.

Lưu khóa bí mật an toàn khi bạn quản lý nhiều tài khoản

Một dòng giao hàng thường chứa cả mật khẩu và khóa bí mật 2FA, nên ai mở được tệp sẽ có cả hai lớp xác thực. Hãy bảo vệ toàn bộ tệp thay vì từng trường riêng lẻ:

  • Giữ tệp trong một thư mục riêng tư với quyền truy cập hạn chế, và tránh ứng dụng nhắn tin, tài liệu chia sẻ hay ảnh chụp màn hình.
  • Kiểm tra từng khóa ngay sau khi nhận hàng và ghi lại ngày bên cạnh tài khoản, để sự cố lộ ra sớm.
  • Ghi nhãn từng chuỗi là gì, để một mã dự phòng dùng một lần không bao giờ bị nhập nhầm vào ứng dụng xác thực.
  • Đếm số bản sao. Nạp cùng một khóa vào ứng dụng xác thực thứ hai là cách dự phòng hợp lý, nhưng mỗi bản sao lại là thêm một nơi có thể làm rò rỉ khóa.

Để có kế hoạch rộng hơn, hãy đọc xác thực hai yếu tố và lập kế hoạch khôi phục, còn về thuật ngữ trong tin đăng bán, xem bảng thuật ngữ tài khoản. Khi so sánh các danh mục như Tài khoản cổ xác minh số điện thoại, hãy đọc mô tả để biết tệp giao hàng gồm những gì. Nếu bạn cần dựa vào khóa 2FA, hãy xác nhận điều đó trước khi đặt hàng, hoặc hỏi bộ phận hỗ trợ trên Telegram.

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

Khóa bí mật 2FA trông như thế nào?

Đó là một chuỗi chữ cái in hoa từ A đến Z và chữ số từ 2 đến 7, thường dài từ 16 đến 32 ký tự, ví dụ JBSWY3DPEHPK3PXP trong các ví dụ tài liệu. Một số nền tảng hiển thị nó theo từng nhóm cách nhau bằng dấu cách hoặc dấu gạch ngang.

Khóa bí mật 2FA có giống mã dự phòng không?

Không. Khóa bí mật tạo ra mã mới mỗi 30 giây miễn là thiết lập 2FA đó còn hiệu lực. Mã dự phòng là mã dùng một lần: chỉ có tác dụng một lần và không dùng được trong ứng dụng xác thực.

Tôi có thể chuyển mã QR thành khóa bí mật không?

Có. Mã QR thiết lập mã hóa một URI otpauth, và khóa bí mật là giá trị sau secret= trong đoạn văn bản đó. Hãy giữ kín đoạn văn bản này, vì nó nhạy cảm không kém chính khóa.

Vì sao một số khóa bí mật có dấu cách hoặc dấu gạch ngang?

Việc ngắt nhóm chỉ để dễ đọc, thường mỗi nhóm bốn ký tự. Nếu ứng dụng từ chối khóa, hãy xóa dấu cách và dấu gạch ngang; công cụ tạo mã 2FA miễn phí chấp nhận khóa nguyên dạng.

Có thể dùng cùng một khóa bí mật trong hai ứng dụng cùng lúc không?

Có. Bất kỳ ứng dụng hay thiết bị nào giữ cùng khóa và có đồng hồ chính xác đều hiển thị cùng một mã. Điều này tiện làm bản dự phòng, nhưng mỗi bản sao lại là thêm một nơi khóa có thể bị lộ.

Công cụ

Danh mục phổ biến

Hỗ trợKênh