Webinar: Passkeys for Super Funds

ChatGPT Atlas Passkeys Support

Explore ChatGPT Atlas passkey implementation: device-bound credentials, new AAGUID, QR code authentication. Technical breakdown & future outlook.

Vincent Delitz

Vincent

Created: October 21, 2025

Updated: October 21, 2025

Blog-Post-Header-Image

SpecialPromotion Icon

Passkeys for Super Funds and Financial Institutions
Join our Webinar on 7th November to learn how Super Funds and Financial Institutions can implement passkeys

Join now

1. Introduction: How Well Does ChatGPT Atlas Support Passkeys?#

With ChatGPT Atlas, OpenAI's new browser embedded with ChatGPT, users naturally wonder: How well does ChatGPT Atlas support passkeys? Does it support platform passkeys and access to existing credential stores and password managers?

This article examines Atlas's passkey implementation, explores its technical characteristics, and answers these critical questions about compatibility and limitations.

This article covers:

  1. Platform passkey support and technical details
  2. Atlas's unique AAGUID implementation
  3. Cross-device authentication limitations
  4. Future outlook and recommendations

2. Platform Passkey Support: Device-Bound Only#

ChatGPT Atlas supports creating platform passkeys through the WebAuthn API, but with a critical constraint: these passkeys are device-bound and cannot sync across devices or integrate with existing password managers.

2.1 Technical Implementation#

When creating a passkey in Atlas, the authentication response reveals key characteristics. View the complete passkey debugger result.

The complete attestation response structure:

{ "authenticatorAttachment": "platform", "id": "3WdZppEzL4aki7N5rYDZkN4AMebVxQKKCCw5-Nr48Kk", "rawId": "3WdZppEzL4aki7N5rYDZkN4AMebVxQKKCCw5-Nr48Kk", "response": { "attestationObject": "o2NmbXRmcGFja2VkZ2F0dFN0bXSiY2FsZyZjc2lnWEcwRQIgJqZ34SrRZDef5wwv9HivRVeBV1TbtXdSf02ZPlrFny4CIQDDp3nuUZc8iSlfjMd1U5ahTY6eFRIOn7a7H9SBg5Q-TWhhdXRoRGF0YVikPpZrl-Wqt-OFfBpyy2SraN1m7LT0GZORwGA7-6ujYkNFAAAAAMNZbku1oUftuXkLQng2jR4AIN1nWaaRMy-GpIuzea2A2ZDeADHm1cUCiggsOfja-PCppQECAyYgASFYIBvmw3MGkihD6xtMJGHGuVppqiyIBAwTceS3IZv7PtDSIlggHHerXJuTzxnMtVghblDP10UA-V9OhSGWDRsyoLfU6yE", "clientDataJSON": "eyJ0eXBlIjoid2ViYXV0aG4uY3JlYXRlIiwiY2hhbGxlbmdlIjoiVlFHME1EQkVFVEg4Q3NaZGd6ZVh5Wno4VGwwaGU0OWNKMENfYjlJQ3RGdyIsIm9yaWdpbiI6Imh0dHBzOi8vd3d3LnBhc3NrZXlzLWRlYnVnZ2VyLmlvIiwiY3Jvc3NPcmlnaW4iOmZhbHNlfQ", "transports": [ "internal" ], "authenticatorData": "PpZrl-Wqt-OFfBpyy2SraN1m7LT0GZORwGA7-6ujYkNFAAAAAMNZbku1oUftuXkLQng2jR4AIN1nWaaRMy-GpIuzea2A2ZDeADHm1cUCiggsOfja-PCppQECAyYgASFYIBvmw3MGkihD6xtMJGHGuVppqiyIBAwTceS3IZv7PtDSIlggHHerXJuTzxnMtVghblDP10UA-V9OhSGWDRsyoLfU6yE", "publicKey": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEG-bDcwaSKEPrG0wkYca5WmmqLIgEDBNx5Lchm_s-0NIcd6tcm5PPGcy1WCFuUM_XRQD5X06FIZYNGzKgt9TrIQ", "publicKeyAlgorithm": -7 }, "type": "public-key", "clientExtensionResults": {} }

Key fields from the attestation response:

Authenticator Attachment: "authenticatorAttachment": "platform" indicates the passkey uses a platform authenticator (device-bound), not a cross-platform authenticator.

Transport: "transports": ["internal"] confirms the credential is stored internally on the device, with no external synchronization mechanism.

Credential ID: "id": "3WdZppEzL4aki7N5rYDZkN4AMebVxQKKCCw5-Nr48Kk" uniquely identifies this passkey but provides no link to external credential stores.

The parsed attestation response reveals additional details:

{ "authenticatorAttachment": "platform", "id": "3WdZppEzL4aki7N5rYDZkN4AMebVxQKKCCw5-Nr48Kk", "rawId": "3WdZppEzL4aki7N5rYDZkN4AMebVxQKKCCw5-Nr48Kk", "response": { "attestationObject": { "fmt": "packed", "attStmt": { "alg": "ES256 (-7)", "sig": "MEUCICamd-Eq0WQ3n-cML_R4r0VXgVdU27V3Un9NmT5axZ8uAiEAw6d57lGXPIkpX4zHdVOWoU2OnhUSDp-2ux_UgYOUPk0" }, "authData": { "rpIdHash": "PpZrl-Wqt-OFfBpyy2SraN1m7LT0GZORwGA7-6ujYkM", "flags": { "userPresent": true, "userVerified": true, "backupEligible": false, "backupStatus": false, "attestedData": true, "extensionData": false }, "counter": 0, "aaguid": { "raw": "c3596e4b-b5a1-47ed-b979-0b4278368d1e", "name": "Unknown" }, "credentialID": "3WdZppEzL4aki7N5rYDZkN4AMebVxQKKCCw5-Nr48Kk", "credentialPublicKey": "pQECAyYgASFYIBvmw3MGkihD6xtMJGHGuVppqiyIBAwTceS3IZv7PtDSIlggHHerXJuTzxnMtVghblDP10UA-V9OhSGWDRsyoLfU6yE", "parsedCredentialPublicKey": { "keyType": "EC2 (2)", "algorithm": "ES256 (-7)", "curve": 1, "x": "G-bDcwaSKEPrG0wkYca5WmmqLIgEDBNx5Lchm_s-0NI", "y": "HHerXJuTzxnMtVghblDP10UA-V9OhSGWDRsyoLfU6yE" } } }, "clientDataJSON": { "type": "webauthn.create", "challenge": "VQG0MDBEETH8CsZdgzeXyZz8Tl0he49cJ0C_b9ICtFw", "origin": "https://www.passkeys-debugger.io", "crossOrigin": false }, "transports": [ "internal" ], "authenticatorData": "PpZrl-Wqt-OFfBpyy2SraN1m7LT0GZORwGA7-6ujYkNFAAAAAMNZbku1oUftuXkLQng2jR4AIN1nWaaRMy-GpIuzea2A2ZDeADHm1cUCiggsOfja-PCppQECAyYgASFYIBvmw3MGkihD6xtMJGHGuVppqiyIBAwTceS3IZv7PtDSIlggHHerXJuTzxnMtVghblDP10UA-V9OhSGWDRsyoLfU6yE", "publicKey": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEG-bDcwaSKEPrG0wkYca5WmmqLIgEDBNx5Lchm_s-0NIcd6tcm5PPGcy1WCFuUM_XRQD5X06FIZYNGzKgt9TrIQ", "publicKeyAlgorithm": -7 }, "type": "public-key", "clientExtensionResults": {} }

Notable parsed values: "backupEligible": false and "backupStatus": false confirm these credentials cannot be backed up or synced, and the AAGUID "raw": "c3596e4b-b5a1-47ed-b979-0b4278368d1e".

Atlas's client capabilities show broad WebAuthn feature support:

{ "conditionalCreate": true, "conditionalGet": true, "extension:appid": true, "extension:appidExclude": true, "extension:credBlob": true, "extension:credProps": true, "extension:credentialProtectionPolicy": true, "extension:enforceCredentialProtectionPolicy": true, "extension:getCredBlob": true, "extension:hmacCreateSecret": true, "extension:largeBlob": true, "extension:minPinLength": true, "extension:payment": true, "extension:prf": true, "hybridTransport": true, "passkeyPlatformAuthenticator": true, "relatedOrigins": true, "signalAllAcceptedCredentials": true, "signalCurrentUserDetails": true, "signalUnknownCredential": true, "userVerifyingPlatformAuthenticator": true }

Despite comprehensive WebAuthn capability support (including "hybridTransport": true for QR code authentication), the device-bound nature limits practical usability.

2.2 What This Means for Users#

Platform passkeys in Atlas work similarly to security keys tied to specific devices. If you create a passkey on your laptop running Atlas, that passkey exists only on that laptop. You cannot:

  • Access it from another device
  • Sync it via iCloud Keychain (even on macOS)
  • Import it into Google Password Manager
  • Transfer it to another browser

3. Atlas's Unique AAGUID: A New Authenticator Identity#

ChatGPT Atlas introduces a new Authenticator Attestation Global Unique Identifier (AAGUID): c3596e4b-b5a1-47ed-b979-0b4278368d1e.

3.1 Understanding AAGUIDs#

The AAGUID is a 128-bit identifier that indicates the authenticator model. This identifier appears in the authenticatorData (specifically in the attestationObject) during passkey creation, allowing websites to determine what type of authenticator created the credential.

For comparison, Chrome on Mac uses: adce0002-35bc-c60a-648b-0b25f1f05503

Atlas's unique AAGUID signals that this is a distinct authenticator implementation, separate from existing browser-based credential managers.

3.2 Implications of a Distinct AAGUID#

By assigning its own AAGUID, OpenAI has created an independent passkey implementation. This mirrors Google's early approach when they introduced Chrome Profile passkeys—device-bound credentials that predated Google Password Manager's synchronized passkeys.

Historical Context: Google initially launched passkeys tied to Chrome profiles without synchronization support. Only later did they enable syncing via Google Password Manager. Atlas appears to be following a similar trajectory: starting with device-bound, non-synchable passkeys that work only locally on the device where they're created, much like Chrome Profile passkeys before Google Password Manager integration.

4. Cross-Device Authentication: Expect More QR Codes#

While Atlas supports WebAuthn's cross-device authentication flow, the experience differs significantly from cloud-synced passkey ecosystems.

4.1 How Cross-Device Authentication Works#

QR Code Flow: When accessing a website that requires authentication:

  1. Atlas displays a QR code on the screen
  2. You scan it with your mobile phone
  3. Your phone (with its own passkeys stored in iCloud Keychain or Google Password Manager) completes the authentication
  4. The session is established on your Atlas browser

Practical Impact: This works but adds friction. Instead of seamlessly accessing your passkeys stored in iCloud or Google Password Manager directly within Atlas, you must use your phone as an intermediary.

4.2 Passkey Accessibility Across Devices#

Passkeys stored in iCloud Keychain or Google Password Manager: These remain accessible only via your mobile phone when using Atlas. You cannot directly access your synced passkey vault from within the Atlas browser.

Logging in to Google: Basic authentication to Google services works in Atlas, but don't expect the seamless passkey experience you get in Chrome or Safari where your credentials are readily available.

5. Future Outlook: Passkeys for OpenAI Agents?#

The current limitations suggest Atlas's passkey implementation is in its early stages. Several developments seem likely:

Synchronization: OpenAI may eventually enable passkey synchronization across Atlas installations, similar to how Google evolved Chrome Profile passkeys into the synchronized Google Password Manager system.

Password Manager Integration: Future versions might integrate with existing credential stores (iCloud Keychain, Google Password Manager, 1Password, etc.), removing the current isolation.

OpenAI Agent Access: A compelling possibility is that OpenAI could make Atlas passkeys accessible to OpenAI agents. Imagine AI assistants that can authenticate on your behalf using securely managed passkeys—a natural extension of OpenAI's broader agent vision. This could enable agents to perform authenticated actions across services while maintaining security through passkey-based authentication.

6. Conclusion: Answering the Key Questions#

ChatGPT Atlas represents OpenAI's ambitious entry into the browser space, but its passkey implementation remains limited. Let's answer the questions posed at the beginning:

How well does ChatGPT Atlas support passkeys?#

Atlas supports passkeys, but only device-bound platform passkeys. These passkeys are created locally and cannot sync across devices or integrate with external credential stores. The implementation uses WebAuthn correctly but lacks the synchronization features users expect from modern passkey systems.

Does it support platform passkeys?#

Yes, Atlas supports platform passkeys. The "authenticatorAttachment": "platform" parameter and "transports": ["internal"] confirm that passkeys are created using the device's platform authenticator. However, these are isolated to the specific device where they're created.

Does it access existing credential stores and password managers?#

No, Atlas cannot access existing credential stores like Google Password Manager or iCloud Keychain. The unique AAGUID (c3596e4b-b5a1-47ed-b979-0b4278368d1e) indicates a separate implementation that doesn't integrate with external password managers. Your existing synced passkeys remain inaccessible from within Atlas.

Recommendations#

Do:

  • Use QR code-based cross-device authentication when needed
  • Continue using your existing password manager or credential store for important accounts
  • Treat Atlas passkeys as experimental technology

Don't:

  • Create passkeys in Atlas for accounts you need to access from multiple devices
  • Rely on Atlas passkeys as your primary authentication method yet
  • Expect your existing cloud-synced passkeys to work directly in Atlas

What This Means#

For now, Atlas passkeys are best avoided for critical accounts. The infrastructure exists but lacks the polish and integration of mature passkey implementations in Chrome, Safari, or Edge. As OpenAI develops Atlas, expect these capabilities to evolve—particularly if they pursue the vision of agent-accessible authentication.

Best Approach: Continue using established browsers and password managers for critical authentication while monitoring Atlas's evolution. When (and if) OpenAI enhances passkey support, the foundation they're building today will become more useful.

Add passkeys to your app in <1 hour with our UI components, SDKs & guides.

Start Free Trial

Share this article


LinkedInTwitterFacebook