Đăng nhập không cần mật khẩu bằng mật khẩu

Mã xác thực

Giới thiệu

Mã xác thực là lựa chọn an toàn và dễ dàng hơn để thay thế mật khẩu. Với mã xác thực, người dùng có thể đăng nhập vào các ứng dụng và trang web bằng cảm biến sinh trắc học (chẳng hạn như vân tay số hoặc tính năng nhận dạng khuôn mặt), mã PIN hoặc hình mở khoá, giúp người dùng không phải nhớ và quản lý mật khẩu.

Cả nhà phát triển và người dùng đều ghét mật khẩu: họ cung cấp trải nghiệm người dùng kém, thêm phiền toái cho chuyển đổi và tạo trách nhiệm bảo mật cho cả người dùng và nhà phát triển.

Mã xác thực có thể đáp ứng các yêu cầu xác thực đa yếu tố chỉ trong một bước, thay thế cả mật khẩu và OTP (ví dụ: mã SMS 6 chữ số) để bảo vệ mạnh mẽ trước các cuộc tấn công lừa đảo và tránh sự đau đớn của trải nghiệm người dùng đối với SMS hoặc mật khẩu một lần dựa trên ứng dụng. Vì mã xác thực được chuẩn hoá, nên một lượt triển khai sẽ cho phép trải nghiệm không cần mật khẩu trên mọi thiết bị của người dùng, trên nhiều trình duyệt và hệ điều hành.

Mã xác thực dễ dàng hơn:

  • Người dùng có thể chọn một tài khoản để đăng nhập. Bạn không cần phải nhập tên người dùng.
  • Người dùng có thể xác thực bằng phương thức khóa màn hình của thiết bị, chẳng hạn như cảm biến vân tay, nhận dạng khuôn mặt hoặc mã PIN.
  • Sau khi mã xác thực được tạo và đăng ký, người dùng có thể chuyển đổi liền mạch sang thiết bị mới và sử dụng ngay thiết bị mà không cần đăng ký lại (không giống như tính năng xác thực sinh trắc học truyền thống yêu cầu thiết lập trên từng thiết bị).

Mã xác thực an toàn hơn:

  • Nhà phát triển chỉ lưu khóa công khai vào máy chủ thay vì mật khẩu, nghĩa là kẻ xấu sẽ bị xâm nhập vào máy chủ và sẽ ít bị xóa hơn trong trường hợp vi phạm.
  • Mã xác thực bảo vệ người dùng khỏi các cuộc tấn công lừa đảo. Mã xác thực chỉ hoạt động trên các trang web và ứng dụng đã đăng ký. Người dùng không thể bị lừa xác thực trên một trang web lừa đảo vì trình duyệt hoặc hệ điều hành này xử lý quy trình xác minh.
  • Mã xác thực giúp giảm chi phí gửi tin nhắn SMS, giúp phương thức này an toàn hơn và tiết kiệm chi phí hơn cho việc xác thực hai yếu tố.

Mã xác thực là gì?

Mã xác thực là một thông tin xác thực kỹ thuật số, liên kết với một tài khoản người dùng và một trang web hoặc ứng dụng. Mã xác thực cho phép người dùng xác thực mà không cần nhập tên người dùng hoặc mật khẩu hoặc cung cấp thêm bất kỳ yếu tố xác thực nào. Công nghệ này nhằm thay thế các cơ chế xác thực cũ như mật khẩu.

Khi người dùng muốn đăng nhập vào một dịch vụ sử dụng mã xác thực, trình duyệt hoặc hệ điều hành của họ sẽ giúp họ chọn và sử dụng đúng mã xác thực. Trải nghiệm này tương tự như cách hoạt động hiện nay của các mật khẩu đã lưu. Để đảm bảo chỉ chủ sở hữu hợp pháp mới có thể sử dụng mã xác thực, hệ thống sẽ yêu cầu họ mở khoá thiết bị. Bạn có thể thực hiện việc này bằng một cảm biến sinh trắc học (chẳng hạn như nhận dạng vân tay hoặc khuôn mặt), mã PIN hoặc hình mở khóa.

Để tạo mã xác thực cho một trang web hoặc ứng dụng, trước tiên, người dùng phải đăng ký bằng trang web hoặc ứng dụng đó.

  1. Đi tới ứng dụng và đăng nhập bằng phương thức đăng nhập hiện có.
  2. Nhấp vào nút Tạo mã xác thực.
  3. Kiểm tra thông tin được lưu trữ bằng mã xác thực mới.
  4. Sử dụng tính năng mở khoá màn hình của thiết bị để tạo mã xác thực.

Khi quay lại trang web hoặc ứng dụng này để đăng nhập, họ có thể thực hiện các bước sau:

  1. Đi đến ứng dụng.
  2. Nhấn vào trường tên tài khoản để hiển thị danh sách mã xác thực trong hộp thoại tự động điền.
  3. Chọn mã xác thực của họ.
  4. Sử dụng tính năng mở khóa màn hình của thiết bị để hoàn tất quá trình đăng nhập.

Thiết bị của người dùng tạo chữ ký dựa trên mã xác thực. Chữ ký này được sử dụng để xác minh thông tin đăng nhập giữa mã gốc và mã xác thực.

Người dùng có thể đăng nhập vào các dịch vụ trên bất kỳ thiết bị nào bằng mã xác thực, bất kể nơi lưu trữ mã xác thực là gì. Ví dụ: mã xác thực được tạo trên điện thoại di động có thể dùng để đăng nhập vào một trang web trên máy tính xách tay riêng.

Mã xác thực hoạt động như thế nào?

Mã xác thực được dùng thông qua cơ sở hạ tầng hệ điều hành cho phép người quản lý mã xác thực tạo, sao lưu và cung cấp mã xác thực cho các ứng dụng chạy trên hệ điều hành đó. Trên Android, mã xác thực có thể được lưu trữ trong Trình quản lý mật khẩu của Google, giúp đồng bộ hoá mã xác thực giữa các thiết bị Android của người dùng đã đăng nhập vào cùng một Tài khoản Google. Mã xác thực được mã hoá an toàn trên thiết bị trước khi đồng bộ hoá và cần phải giải mã mã trên thiết bị mới. Người dùng Android OS 14 trở lên có thể chọn lưu trữ mã xác thực của họ trong trình quản lý mật khẩu của bên thứ ba tương thích.

Người dùng không bị giới hạn chỉ sử dụng mã xác thực trên thiết bị có sẵn mã xác thực. Bạn có thể sử dụng mã xác thực có trên điện thoại khi đăng nhập vào máy tính xách tay, ngay cả khi mã xác thực không đồng bộ hóa với máy tính xách tay, miễn là điện thoại ở gần máy tính xách tay và người dùng phê duyệt đăng nhập trên điện thoại. Vì mã xác thực được xây dựng dựa trên tiêu chuẩn FIDO nên tất cả trình duyệt đều có thể sử dụng mã xác thực đó.

Ví dụ: người dùng truy cập vào example.com trên trình duyệt Chrome trên máy Windows. Người dùng này trước đây đã đăng nhập vào example.com trên thiết bị Android của họ và tạo một mã xác thực. Trên máy Windows, người dùng chọn đăng nhập bằng mã xác thực từ một thiết bị khác. Hai thiết bị sẽ kết nối và người dùng sẽ được nhắc phê duyệt việc sử dụng mã xác thực của họ trên thiết bị Android, chẳng hạn như bằng cảm biến vân tay. Sau khi làm như vậy, con bạn sẽ đăng nhập vào máy chạy Windows. Lưu ý rằng mã xác thực sẽ không được chuyển sang máy Windows, vì vậy, thông thường example.com sẽ đề xuất tạo một mã xác thực mới tại đó. Nhờ đó, bạn không cần nhập số điện thoại khi đăng nhập lần tiếp theo. Hãy đọc bài viết Đăng nhập bằng điện thoại để tìm hiểu thêm.

Ai đang sử dụng mã xác thực?

Một số dịch vụ đã sử dụng mã xác thực trong hệ thống của họ.

Hãy tự mình trải nghiệm

Bạn có thể thử mã xác thực trong bản minh hoạ này: https://passkeys-demo.appspot.com/

Những điều cần cân nhắc về quyền riêng tư

  • Vì việc đăng nhập bằng hệ thống nhận dạng sinh trắc học có thể cung cấp cho người dùng một ấn tượng sai lầm rằng tính năng này đang gửi thông tin nhạy cảm đến máy chủ. Trên thực tế, tài liệu sinh trắc học không bao giờ rời khỏi thiết bị cá nhân của người dùng.
  • Riêng mã xác thực không cho phép theo dõi người dùng hoặc thiết bị giữa các trang web. Không bao giờ sử dụng cùng một mã xác thực với nhiều trang web. Giao thức mã xác thực được thiết kế cẩn thận để không có thông tin nào được chia sẻ với các trang web có thể được sử dụng làm vectơ theo dõi.
  • Trình quản lý mã xác thực bảo vệ mã xác thực khỏi hoạt động truy cập và sử dụng trái phép. Ví dụ: Trình quản lý mật khẩu của Google mã hoá mã bí mật mã xác thực hai đầu. Chỉ người dùng mới có thể truy cập và sử dụng các ứng dụng này và ngay cả khi chúng được sao lưu vào máy chủ của Google, Google cũng không thể sử dụng chúng để mạo danh người dùng.

Lưu ý về bảo mật

  • Mã xác thực sử dụng mật mã khoá công khai. Phương thức mật mã khóa công khai giúp giảm nguy cơ rò rỉ dữ liệu tiềm ẩn. Khi người dùng tạo một mã xác thực với một trang web hoặc ứng dụng, thao tác này sẽ tạo một cặp khoá công khai – riêng tư trên thiết bị của người dùng. Trang web chỉ lưu trữ khóa công khai, nhưng chỉ kẻ tấn công mới sử dụng được khóa này. Kẻ tấn công không thể lấy khóa cá nhân của người dùng từ dữ liệu được lưu trữ trên máy chủ. Khóa này cần có để hoàn tất quá trình xác thực.
  • Vì mã xác thực được liên kết với danh tính của một trang web hoặc ứng dụng nên các khoá này sẽ an toàn trước các cuộc tấn công lừa đảo. Trình duyệt và hệ điều hành đảm bảo rằng chỉ có thể sử dụng mã xác thực với trang web hoặc ứng dụng đã tạo mã xác thực đó. Điều này giúp người dùng không phải chịu trách nhiệm đăng nhập vào trang web hoặc ứng dụng thực sự.

Nhận thông báo

Đăng ký nhận bản tin dành cho nhà phát triển mã xác thực của Google để nhận thông báo về thông tin cập nhật về mã xác thực.

Các bước tiếp theo