Trang này được dịch tự động. Đọc phiên bản gốc bằng tiếng Anh tại đây.

Cheatsheet Passkeys. Hướng dẫn thực tế, mẫu triển khai và KPI cho chương trình passkeys.
Khi sử dụng passkey hoặc làm việc trong lĩnh vực triển khai passkey, một thành phần trở nên khá quan trọng: nhà cung cấp passkey. Tuy nhiên, mặc dù đây là một phần quan trọng trong hệ sinh thái passkey, nhiều người chỉ có hiểu biết sơ sài về các nhà cung cấp passkey hoặc không biết sự khác biệt giữa nhà cung cấp passkey của bên thứ nhất, nhà cung cấp passkey của bên thứ ba và nhà cung cấp xác thực passkey.
Nhận assessment passkey miễn phí trong 15 phút.
Bài đăng blog này nhằm mục đích làm sáng tỏ điều đó. Cho dù bạn là nhà phát triển phần mềm, giám đốc sản phẩm hay chỉ đơn giản là tò mò về những tính năng bảo mật web mới nhất, thì việc hiểu vai trò và các loại nhà cung cấp passkey là điều cần thiết. Bằng cách làm sáng tỏ chủ đề này, chúng tôi muốn trang bị cho mọi người kiến thức để tự tin hiểu về passkey.
Bài viết gần đây
♟️
Các vấn đề Passkey Ngày 2: 5 rủi ro sau khi ra mắt
🔑
Điều gì làm cho việc Xử lý Tài liệu bảo mật trở nên thiết yếu đối với các Doanh nghiệp hiện đại?
♟️
Tại sao ngay cả mật khẩu phức tạp nhất của bạn cũng sẽ sớm bị bẻ khóa
♟️
Tái sử dụng mật khẩu tại Nhật Bản: vẫn ở mức 84% [2026]
♟️
Vai trò của AI trong việc phát hiện mối đe dọa mạng
Nhà cung cấp passkey đóng vai trò cơ bản trong hệ sinh thái xác thực dựa trên passkey, hoạt động như cầu nối giữa thiết bị của người dùng và quyền truy cập an toàn, liền mạch vào các bên dựa vào (dịch vụ trực tuyến). Nhưng chính xác thì nhà cung cấp passkey là gì, đặc biệt là khi không có định nghĩa chính thức và bạn sẽ tìm thấy các cách hiểu khác nhau trên mạng?
Định nghĩa sau đây phản ánh sự hiểu biết của chúng tôi và không được khẳng định là định nghĩa chính xác duy nhất.
Nhà cung cấp passkey về cơ bản là bất kỳ thực thể nào cho phép tạo, quản lý và sử dụng passkey. Thông qua nghiên cứu của mình, chúng tôi đã xác định hai danh mục chính để có thể phân loại các nhà cung cấp passkey: nhà cung cấp passkey của bên thứ nhất / thứ ba và nhà cung cấp xác thực passkey.
Danh mục này bao gồm các thực thể có khả năng tạo passkey ở phía máy khách (trên thiết bị của người dùng). Khi một passkey được tạo thông qua các nền tảng này, nó được quản lý và lưu trữ an toàn, thường là trên đám mây của nhà sản xuất hệ điều hành (ví dụ: iCloud Keychain, Google Password Manager) hoặc trong trình quản lý mật khẩu của bên thứ ba (ví dụ: KeePassXC, 1Password, Dashlane - xem thêm bên dưới).
Các hệ điều hành cho phép tạo và quản lý passkey nguyên bản được coi là nhà cung cấp passkey của bên thứ nhất. Ngược lại, các trình quản lý mật khẩu của bên thứ ba tích hợp với nền tảng thông qua API được gọi là nhà cung cấp passkey của bên thứ ba.
Một nhà cung cấp passkey của bên thứ nhất hoặc bên thứ ba có cùng một Authenticator Attestation Globally Unique Identifiers (AAGUID), giúp cải thiện trải nghiệm người dùng (ví dụ: trong cài đặt tài khoản để phân biệt passkey dễ dàng hơn). Đôi khi, họ có thể có nhiều AAGUID, tất cả đều thuộc về cùng một nhà cung cấp passkey của bên thứ nhất hoặc thứ ba.
Các nhà cung cấp passkey trên thiết bị iOS 17.4
Các nhà cung cấp passkey trên thiết bị Android 14
Credential Manager API của Android
Danh mục thứ hai bao gồm các nhà cung cấp xác thực mà các nhà phát triển có thể tích hợp vào ứng dụng của họ để xử lý mọi khía cạnh của việc quản lý passkey. Vì vậy, đây là những nhà cung cấp hoạt động nhiều hơn ở phía máy chủ (so với phía máy khách từ phía trên). Định nghĩa này cũng sẽ bao gồm các giải pháp như Corbado, cung cấp các giải pháp xác thực tập trung vào passkey cho các trang web và ứng dụng. Do đó, các nhà cung cấp passkey này nên được mô tả chính xác hơn là nhà cung cấp xác thực passkey, phân biệt họ với các nhà cung cấp passkey của bên thứ nhất và thứ ba đã đề cập ở trên.
Trong các phần tiếp theo của bài đăng blog này, chúng tôi sẽ sử dụng thuật ngữ "nhà cung cấp passkey" để chỉ các nhà cung cấp passkey của bên thứ nhất và thứ ba, theo định nghĩa của chúng tôi.
Khi người dùng bắt đầu áp dụng passkey cho nhiều bên dựa vào khác nhau, việc quản lý chúng một cách hiệu quả nổi lên như một thách thức đáng kể. Điều này cũng đúng đối với người dùng sử dụng nhiều passkey cho một tài khoản duy nhất, vì việc phân biệt các passkey này để chỉnh sửa hoặc xóa có thể phức tạp đối với bên dựa vào. Mặc dù passkey mang lại sự tiện lợi và bảo mật, nhưng có một vấn đề tiềm ẩn nếu người dùng mất một trong các passkey của họ. May mắn thay, họ vẫn có thể truy cập vào tài khoản của mình trên bên dựa vào bằng các passkey thay thế. Để hỗ trợ người dùng xác định các passkey cụ thể, một số tài nguyên đề xuất sử dụng siêu dữ liệu, chẳng hạn như ngày tạo và ngày sử dụng cuối cùng cho một passkey trong cài đặt tài khoản. Ngoài ra, nên sử dụng tác nhân người dùng (user agents) hoặc gợi ý máy khách (client hints) để tự động đặt tên và phân loại passkey khi tạo. Tuy nhiên, các ứng dụng gốc của Android hoặc iOS cũng như các nhà cung cấp passkey của bên thứ ba có thể không sử dụng tác nhân người dùng hoặc họ không thêm thông tin cho biết rằng một passkey đã được tạo bởi một nhà cung cấp passkey của bên thứ ba. Hạn chế này làm nổi bật nhu cầu về các phương pháp cải tiến để giúp người dùng quản lý passkey của họ một cách hiệu quả, bất kể nền tảng hay nhà cung cấp.
Lấy từ Thông số kỹ thuật WebAuthn của W3C
Để tạo điều kiện thuận lợi cho việc quản lý passkey này, các nhà phát triển có thể sử dụng Authenticator Attestation Globally Unique Identifier (AAGUID). AAGUID là một định danh duy nhất được gán cho kiểu của bộ xác thực, không phải cho thể hiện (instance) cụ thể của nó. Nó được nhúng trong dữ liệu bộ xác thực của thông tin xác thực khóa công khai, cung cấp một cách để các bên dựa vào xác định nhà cung cấp passkey. Khả năng này rất quan trọng trong việc giúp người dùng và các bên dựa vào điều hướng bối cảnh passkey, đảm bảo rằng mỗi passkey có thể được liên kết chính xác với nguồn tạo ra nó.
Ví dụ: nếu passkey được tạo bằng Google Password Manager trên thiết bị Android, bên dựa vào có thể nhận được một AAGUID cụ thể cho Google Password Manager. Bằng cách tham chiếu AAGUID này, bên dựa vào sau đó có thể đánh dấu passkey một cách tương ứng, đơn giản hóa việc quản lý và nhận dạng cho người dùng. Hơn nữa, các bên dựa vào có thể ngăn chặn việc tạo nhiều passkey cho cùng một nhà cung cấp passkey bằng cách sử dụng tùy chọn máy chủ WebAuthn excludeCredentials. Điều này giúp cải thiện hơn nữa UX của passkey vì mỗi nhà cung cấp passkey sẽ chỉ có một passkey, do đó tránh nhầm lẫn cho người dùng.
{ "attestation": "none", "authenticatorSelection": { "residentKey": "preferred", "userVerification": "preferred" }, "challenge": "6V61d0VM5bNTPxWSsrv7YKz0o4awe0ryoDh1V44RPRn6-mBQwv98BTRws6nMrBhEggGn7-tk1bl3YNSwc0oZpA", "excludeCredentials": [ { "id": "1kBn2dmhv5JhuFxqeco1khCBCUBLlWYqZmFtdDujH5pM", "transports": ["internal"], "type": "public-key" } ], "extensions": { "credProps": true }, "pubKeyCredParams": [ { "alg": -7, "type": "public-key" }, { "alg": -257, "type": "public-key" } ], "rp": { "id": "Passkey Demo", "name": "passkeys.eu" }, "user": { "displayName": "Test Name", "id": "ZG1sdVkyVnxe3SFJsYzNR", "name": "Test Name" } }
Để xác định nhà cung cấp passkey bằng AAGUID, các bên dựa vào có thể tham khảo kho lưu trữ AAGUID từ cộng đồng. Kho lưu trữ này cung cấp các ánh xạ cần thiết để xác định nhà cung cấp passkey bằng tên và, có khả năng là bằng biểu tượng, giúp cung cấp giao diện người dùng trực quan hơn để quản lý passkey. Tuy nhiên, điều quan trọng cần lưu ý là một số nhà cung cấp passkey có thể cố tình sử dụng AAGUID chung ("00000000-0000-0000-0000-0000000000000"), đại diện cho một nhà cung cấp không xác định hoặc chung chung.
Việc truy xuất AAGUID rất đơn giản với hầu hết các thư viện WebAuthn. Ví dụ: khi sử dụng SimpleWebAuthn ở phía máy chủ, các nhà phát triển có thể trích xuất AAGUID từ thông tin đăng ký để khớp nó với một nhà cung cấp đã biết, nâng cao khả năng quản lý passkey của người dùng một cách dễ dàng hơn (lấy từ "Xác định nhà cung cấp passkey bằng AAGUID" của Google).
// Import a list of AAGUIDs from a JSON file import aaguids from "./aaguids.json" with { type: "json" }; // ... // Use SimpleWebAuthn handy function to verify the registration request. const { verified, registrationInfo } = await verifyRegistrationResponse({ response: credential, expectedChallenge, expectedOrigin, expectedRPID, requireUserVerification: false, }); // ... const { aaguid } = registrationInfo; const provider_name = aaguids[aaguid]?.name || "Unknown";
Mặc dù AAGUID cung cấp một công cụ mạnh mẽ để quản lý passkey, nhưng chúng nên được sử dụng thận trọng. Tính toàn vẹn của AAGUID phụ thuộc vào quy trình chứng thực, quy trình này xác thực tính xác thực của nhà cung cấp passkey. Nếu không có chữ ký chứng thực hợp lệ, AAGUID có thể bị thao túng. Tính đến tháng 3 năm 2024, đáng chú ý là passkey trên một số nền tảng không hỗ trợ chứng thực, làm nổi bật sự cần thiết phải xem xét cẩn thận khi sử dụng chúng.
Sau đây, bạn sẽ tìm thấy một danh sách không đầy đủ về các nhà cung cấp passkey của bên thứ nhất và thứ ba cho các ứng dụng Android, ứng dụng iOS và ứng dụng web sử dụng các phiên bản hệ điều hành passkey và trình duyệt rất phổ biến:
Sau đây, bạn sẽ tìm thấy một số cửa sổ bật lên của nhà cung cấp passkey của bên thứ ba để tạo / lưu passkey:
Xem toàn bộ phân tích về 1Password tại đây.
Xem toàn bộ phân tích về Dashlane tại đây.
Xem toàn bộ phân tích về KeePassXC tại đây.
Trọng tâm của việc triển khai và quản lý passkey là vai trò của các nhà cung cấp passkey, các thực thể không chỉ tạo điều kiện thuận lợi cho việc tạo và quản lý passkey mà còn đảm bảo sự tích hợp liền mạch của chúng trên các nền tảng và thiết bị khác nhau.
Việc hiểu nhà cung cấp passkey là gì, bao gồm sự khác biệt giữa nhà cung cấp của bên thứ nhất và bên thứ ba, cũng như vai trò quan trọng của Authenticator Attestation Globally Unique Identifier (AAGUID) là mục tiêu của bài đăng blog này. Việc sử dụng AAGUID, như đã thảo luận, cung cấp một giải pháp đầy hứa hẹn, cho phép xác định và quản lý passkey đơn giản hơn.
Bên cạnh đó, chúng tôi đã phân tích các nhà cung cấp passkey của bên thứ nhất và thứ ba nào hiện có cho Android, iOS và Windows giúp người dùng cũng tìm thấy một nhà cung cấp passkey của bên thứ ba phù hợp hoặc thiết bị mà họ lựa chọn.
Đối với các nhà phát triển và giám đốc sản phẩm, những hiểu biết sâu sắc về các nhà cung cấp passkey và việc quản lý chúng không chỉ hướng dẫn việc triển khai kỹ thuật xác thực passkey mà còn phù hợp với mục tiêu rộng lớn hơn là nâng cao trải nghiệm người dùng và bảo mật.
Corbado là Passkey Intelligence Platform dành cho các đội CIAM vận hành xác thực consumer ở quy mô lớn. Chúng tôi giúp bạn nhìn thấy điều mà log IDP và các công cụ analytics thông thường không thấy: những thiết bị, phiên bản OS, trình duyệt và trình quản lý credential nào hỗ trợ passkey, tại sao quá trình đăng ký không chuyển thành đăng nhập, luồng WebAuthn fail ở đâu, và khi nào một bản cập nhật OS hay trình duyệt làm hỏng đăng nhập một cách âm thầm — tất cả mà không cần thay thế Okta, Auth0, Ping, Cognito hay IDP nội bộ của bạn. Hai sản phẩm: Corbado Observe bổ sung observability cho passkey và mọi phương thức đăng nhập khác. Corbado Connect mang đến managed passkey với analytics tích hợp (song hành cùng IDP của bạn). VicRoads vận hành passkey cho hơn 5M người dùng với Corbado (kích hoạt passkey +80%). Trao đổi với chuyên gia Passkey →
Bài viết liên quan
Mục lục