Passkey là một cách đăng nhập thay cho mật khẩu, dựa trên một cặp khoá mật mã: khoá riêng nằm trên thiết bị của bạn, khoá công khai nằm trên máy chủ của dịch vụ. Khi đăng nhập, bạn chỉ cần mở khoá thiết bị bằng vân tay, khuôn mặt hoặc mã PIN; thiết bị dùng khoá riêng ký một thử thách và gửi chữ ký lên. Không có chuỗi bí mật nào để gõ, để nhớ hay để lộ.
Ưu điểm lớn nhất không phải sự tiện lợi mà là kháng lừa đảo: mỗi passkey gắn chặt với tên miền đã tạo ra nó, nên trên một trang giả mạo dù giống hệt, thiết bị đơn giản là không có passkey nào để dùng. Máy chủ bị rò rỉ dữ liệu cũng chỉ lộ khoá công khai, thứ vô dụng với kẻ tấn công.
Passkey là cách gọi thân thiện của chuẩn FIDO2, gồm WebAuthn của W3C và giao thức CTAP của Liên minh FIDO. Bài này giải thích cơ chế, hai loại passkey, các rủi ro thật và cách chuyển dần từ mật khẩu.
Cơ chế: mật mã khoá công khai trong một lần đăng nhập
Mật mã khoá công khai dựa trên một cặp khoá liên kết toán học: thứ được ký bằng khoá riêng thì kiểm tra được bằng khoá công khai, nhưng từ khoá công khai không suy ra được khoá riêng. Passkey áp dụng điều này vào đăng nhập.
Lúc tạo passkey: thiết bị sinh một cặp khoá mới, riêng cho dịch vụ đó và tài khoản đó. Khoá công khai gửi lên máy chủ lưu cùng tài khoản. Khoá riêng ở lại trong vùng lưu trữ được bảo vệ của thiết bị, gắn với định danh của bên cung cấp dịch vụ, về thực chất là tên miền.
Lúc đăng nhập: máy chủ gửi một chuỗi ngẫu nhiên gọi là thử thách. Trình duyệt chuyển thử thách cùng tên miền đang truy cập xuống bộ xác thực. Bộ xác thực yêu cầu bạn xác minh bằng sinh trắc học hoặc PIN, tìm passkey ứng với đúng tên miền đó, ký thử thách và trả chữ ký về. Máy chủ kiểm chữ ký bằng khoá công khai đã lưu.
Hai chi tiết tạo nên sức mạnh: thử thách mới mỗi lần nên chữ ký cũ không dùng lại được; và tên miền do trình duyệt điền, không do người dùng gõ hay quyết định, nên người dùng không thể vô tình đem passkey của trang thật dùng cho trang giả. Vân tay hay khuôn mặt chỉ dùng tại chỗ để mở khoá, không gửi lên đâu cả.
Passkey khác mật khẩu và mã OTP ở đâu
So sánh theo các kiểu tấn công thường gặp giúp thấy rõ passkey giải quyết vấn đề nào và không giải quyết vấn đề nào.
| Tình huống | Mật khẩu | Mật khẩu + OTP | Passkey |
|---|---|---|---|
| Dịch vụ bị lộ cơ sở dữ liệu | Lộ giá trị băm, có thể bị bẻ | Lộ giá trị băm; OTP vẫn chặn đăng nhập | Chỉ lộ khoá công khai, vô dụng với kẻ tấn công |
| Dùng lại ở nhiều dịch vụ | Rủi ro nhồi thông tin đăng nhập | Giảm rủi ro nhờ OTP | Không thể dùng lại; mỗi dịch vụ một cặp khoá |
| Trang giả mạo | Người dùng tự gõ vào | Bị chuyển tiếp thời gian thực | Thiết bị không tìm thấy passkey cho tên miền giả |
| Bị nhìn trộm, ghi phím | Lộ | Lộ mật khẩu; OTP hết hạn nhanh | Không có gì để nhìn |
| Mã độc đã chiếm thiết bị | Lộ | Có thể bị đánh cắp phiên | Có thể bị đánh cắp phiên sau khi đăng nhập |
| Mất thiết bị | Không ảnh hưởng | Cần mã dự phòng | Cần passkey đồng bộ hoặc thiết bị dự phòng |
Dòng mã độc cho thấy giới hạn: passkey bảo vệ khoảnh khắc đăng nhập, không bảo vệ phiên làm việc trên một máy đã bị kiểm soát. Dòng mất thiết bị cho thấy bài toán khôi phục là điều cần lên kế hoạch trước.
Hai loại passkey: đồng bộ và gắn thiết bị
Passkey đồng bộ. Lưu trong trình quản lý mật khẩu của hệ điều hành hoặc của bên thứ ba, được mã hoá đầu cuối và đồng bộ sang các thiết bị khác của bạn. Đây là bước chuyển then chốt khiến passkey phổ cập: tháng 5 năm 2022, Apple, Google và Microsoft cùng công bố hỗ trợ chuẩn này trên nền tảng của mình. Mất điện thoại không mất passkey; mua máy mới đăng nhập tài khoản đồng bộ là có lại. Đánh đổi: an toàn của passkey phụ thuộc vào an toàn của tài khoản đồng bộ đó.
Passkey gắn thiết bị. Nằm trong khoá bảo mật phần cứng hoặc chip của một máy cụ thể và không thể xuất ra. Mức bảo đảm cao nhất, phù hợp tài khoản quản trị, nhà báo, người có nguy cơ bị nhắm đích. Đánh đổi: mất khoá là mất passkey, nên luôn đăng ký ít nhất hai khoá.
Đăng nhập chéo thiết bị. Muốn dùng passkey trên điện thoại để đăng nhập máy tính lạ, bạn quét mã QR trên màn hình máy tính bằng điện thoại. Hai thiết bị kiểm tra nhau ở gần qua Bluetooth, ngăn kẻ tấn công ở xa lợi dụng mã QR. Khoá riêng vẫn không rời điện thoại.
Trình quản lý mật khẩu bên thứ ba. Nhiều trình quản lý mật khẩu đã lưu và đồng bộ được passkey giữa các hệ sinh thái khác nhau, giải quyết tình trạng người dùng điện thoại một hãng, máy tính một hãng khác. Liên minh FIDO cũng đã đưa ra các đặc tả cho việc chuyển passkey giữa các nhà cung cấp.
Những lo ngại thường gặp và câu trả lời có căn cứ
"Mất điện thoại thì mất hết." Với passkey đồng bộ thì không, miễn bạn còn truy cập được tài khoản đồng bộ. Rủi ro thật nằm ở chuỗi khôi phục của chính tài khoản đó: nếu nó dựa vào số điện thoại dễ bị chiếm SIM, kẻ gian có thể đi đường vòng. Vì vậy hãy bảo vệ tài khoản Apple, Google hay trình quản lý mật khẩu bằng khoá khôi phục hoặc khoá bảo mật.
"Dịch vụ lưu lại vân tay của mình." Không. Sinh trắc học chỉ được so khớp ngay trên thiết bị để mở khoá passkey. Dịch vụ nhận chữ ký mật mã, không nhận ảnh hay mẫu vân tay. Nếu bạn ngại sinh trắc học, có thể dùng mã PIN của thiết bị.
"Người khác biết mã mở máy là vào được tài khoản." Đúng, và đây là đánh đổi thật: passkey dời điểm bảo vệ về thiết bị. Ai biết PIN và cầm được máy của bạn sẽ đăng nhập được. Vì vậy PIN điện thoại cần được giữ như một mật khẩu quan trọng, đừng dùng ngày sinh, và cẩn thận khi mở máy nơi đông người.
"Bị khoá trong một hệ sinh thái." Lo ngại này có cơ sở trong giai đoạn đầu. Tình hình đang cải thiện nhờ trình quản lý bên thứ ba và các đặc tả chuyển đổi, nhưng nên kiểm tra khả năng xuất trước khi dồn mọi thứ vào một nơi.
Passkey và quyền riêng tư: dịch vụ biết gì về bạn
Mỗi passkey là một cặp khoá riêng cho từng dịch vụ, nên hai dịch vụ khác nhau không thể so khoá công khai để nhận ra cùng một người dùng. Với mật khẩu, điều ngược lại xảy ra: cùng một email và mật khẩu ở nhiều nơi tạo thành sợi chỉ nối các tài khoản, và chính sợi chỉ ấy bị khai thác trong nhồi thông tin đăng nhập. Về mặt thiết kế, passkey không tạo ra định danh xuyên suốt.
Chuẩn WebAuthn có một tính năng gọi là attestation, cho phép bộ xác thực chứng minh nó thuộc dòng thiết bị nào. Tính năng này hữu ích cho doanh nghiệp muốn chỉ chấp nhận một loại khoá bảo mật đã được phê duyệt. Với người dùng phổ thông, các trình duyệt và nền tảng lớn thường không cung cấp attestation chi tiết cho trang web thông thường, chính để tránh việc trang web dùng nó làm dấu vân tay theo dõi thiết bị.
Dữ liệu sinh trắc học, như đã nói, không rời thiết bị. Thứ dịch vụ biết là khoá công khai, thời điểm đăng nhập và các thông tin kỹ thuật thông thường như địa chỉ IP, giống mọi lần đăng nhập khác. Nói cách khác, passkey không thu thêm dữ liệu cá nhân so với mật khẩu, và giảm bớt một loại dữ liệu nhạy cảm mà dịch vụ phải giữ: giá trị băm của mật khẩu.
Điều cần lưu ý nằm ở phía nhà cung cấp đồng bộ. Trình quản lý giữ passkey đồng bộ của bạn biết bạn có tài khoản ở những dịch vụ nào, tương tự như trình quản lý mật khẩu. Nếu đây là mối bận tâm, hãy xem sản phẩm có mã hoá cả tên dịch vụ trong kho hay không.
Chuyển dần sang passkey: kế hoạch cho cá nhân
Không cần và không nên xoá hết mật khẩu ngay. Passkey nên được thêm vào bên cạnh, rồi dần thay thế khi bạn đã quen và có phương án dự phòng.
- Bảo vệ tài khoản đồng bộ trước: tài khoản Apple, Google, Microsoft hoặc trình quản lý mật khẩu sẽ giữ passkey của bạn. Bật xác thực mạnh nhất có thể và tạo khoá khôi phục.
- Tạo passkey cho hộp thư chính, vì đây là tài khoản có giá trị khôi phục cao nhất. Vào phần bảo mật của tài khoản, chọn tạo passkey, xác minh bằng sinh trắc học.
- Thử đăng nhập bằng passkey trên thiết bị thứ hai và thử luồng quét QR trên một máy tính khác để hiểu cách nó vận hành trước khi phụ thuộc vào nó.
- Thêm passkey cho các dịch vụ lớn khác khi chúng gợi ý: mạng xã hội, thương mại điện tử, lưu trữ đám mây, dịch vụ cho nhà phát triển.
- Giữ mật khẩu mạnh trong trình quản lý cho các dịch vụ chưa hỗ trợ, và giữ mã dự phòng cho mọi tài khoản đã chuyển.
- Khi dịch vụ cho phép, tắt phương thức khôi phục yếu như SMS sau khi đã có hai passkey hoặc một passkey cùng khoá bảo mật.
Passkey trong doanh nghiệp và giới hạn hiện nay
Với tổ chức, passkey giải quyết một bài toán tốn kém: lừa đảo nhắm vào nhân viên để lấy thông tin đăng nhập hệ thống nội bộ. Các hướng dẫn bảo mật của nhiều cơ quan quốc tế xếp xác thực FIDO vào nhóm phương thức kháng lừa đảo, mức nên dùng cho tài khoản quản trị. Doanh nghiệp có thể chọn passkey gắn thiết bị cho quản trị viên và passkey đồng bộ cho nhân viên thông thường.
Giới hạn hiện nay chủ yếu nằm ở hệ sinh thái chưa đồng đều. Không phải dịch vụ nào cũng hỗ trợ, trải nghiệm giữa các nền tảng còn khác nhau, và nhiều dịch vụ vẫn giữ mật khẩu làm phương án dự phòng, tức là cánh cửa cũ chưa đóng hẳn. Một tài khoản có passkey nhưng vẫn cho đăng nhập bằng mật khẩu cộng SMS thì chỉ mạnh bằng con đường yếu nhất.
Một giới hạn khác là người dùng lớn tuổi hoặc ít dùng công nghệ có thể bối rối khi hộp thoại hệ điều hành hiện lên giữa luồng đăng nhập quen thuộc. Khi triển khai cho gia đình hay nhân viên, nên làm mẫu một lần, giải thích rằng việc chạm vân tay để đăng nhập là bình thường, và nhấn mạnh rằng không có mã nào cần đọc cho ai.
Câu hỏi thường gặp
Passkey có thay thế hoàn toàn mật khẩu được chưa?
Với các dịch vụ lớn đã hỗ trợ, bạn có thể đăng nhập hằng ngày chỉ bằng passkey. Nhưng nhiều nơi vẫn yêu cầu mật khẩu làm phương án dự phòng, và không phải dịch vụ nào cũng hỗ trợ. Trong vài năm tới, người dùng sẽ sống song song với cả hai, nên vẫn cần trình quản lý mật khẩu.
Một tài khoản có thể có nhiều passkey không?
Có. Bạn có thể tạo passkey trên điện thoại, trên khoá bảo mật và trong trình quản lý mật khẩu cho cùng một tài khoản. Nên có ít nhất hai passkey ở hai nơi độc lập để mất một nơi vẫn vào được. Phần cài đặt bảo mật của dịch vụ thường liệt kê và cho xoá từng passkey.
Passkey có dùng được trên máy tính dùng chung không?
Được, qua luồng quét mã QR bằng điện thoại: khoá riêng nằm trên điện thoại, máy tính chỉ nhận phiên đăng nhập. Đừng chọn lưu passkey vào máy tính dùng chung. Sau khi dùng xong, đăng xuất phiên trên máy đó như với mọi cách đăng nhập khác.
Nếu tài khoản đồng bộ bị chiếm thì passkey có bị lộ không?
Kẻ chiếm được tài khoản đồng bộ và mở được kho trên thiết bị của họ có thể dùng các passkey đồng bộ trong đó. Các nhà cung cấp lớn thường đòi thêm mã khoá của một thiết bị cũ để mở kho trên máy mới, tạo thêm một lớp, nhưng tài khoản đồng bộ vẫn là thứ cần bảo vệ kỹ nhất.
Ngân hàng ở Việt Nam đã dùng passkey chưa?
Phần lớn ngân hàng Việt Nam hiện dùng mô hình riêng: ứng dụng gắn với một thiết bị đã đăng ký, Smart OTP và xác thực sinh trắc học đối chiếu với dữ liệu căn cước. Về nguyên lý gần với passkey gắn thiết bị nhưng không theo chuẩn FIDO chung. Hãy theo hướng dẫn chính thức của từng ngân hàng.
Passkey có chống được kẻ lừa đảo gọi điện thao túng không?
Passkey chặn được việc lấy thông tin đăng nhập qua trang giả, nhưng không ngăn được bạn tự tay chuyển tiền theo lời kẻ gian hay cài ứng dụng điều khiển từ xa. Kỹ thuật thao túng tâm lý nhắm vào hành động của người dùng, không nhắm vào mật khẩu.