An article I read recently suggested that storing passkeys with Google, Apple, and M$ didn’t have interoperability. Like you need a Mac/iPhone or PC/Android to make it work. Is this true? Can I store a passkey in a platform agnostic way?
If by “platform” you mean OS, then yes - and the best way to do that is to use a dedicated password manager instead of something that’s tightly integrated with an OS.
That said, iCloud keychain is available on Windows, but not Android. Likewise with Google Password Manager - it supports Macs, but not yet support iPhones or iPads.
However you can also use a password manager like one of these and use it across every platform:
Based on my experience (with Bitwarden) or research, all support passkeys in browser extensions for Firefox and Chromium browsers and/or desktop apps on Linux, Mac, and Windows, as well as in apps for iOS and Android.
Keepass also might be an option, as KeePassXC supports passkeys and is available on Mac, Windows, and Linux, but I didn’t see any mobile clients that advertise support for passkeys.
Even with the more open password managers, there isn’t a built-in way to transfer passkeys from one password manager to another. However, the FIDO Alliance is working on a spec for securely transferring passkeys so hopefully that’ll change soon and you’ll be able to transfer passkeys from one ecosystem to another.
Also, you can generally still log in on a device that your passkey service doesn’t support by scanning a QR code displayed on the target device on your phone, so long as both devices have Bluetooth (used for confirming physical proximity). I’ve only done that once and it wasn’t super streamlined, but it also wasn’t terrible. You can also save passkeys to your phone or security key (like a Yubikey) though be aware that a YubiKey 5 can only store 100 passkeys. And you can have multiple passkeys to a given service, so if you use a Mac but use an Android phone, you can save a passkey to iCloud Keychain on your Mac and to Google Password Manager on your phone.
EDIT: Looked up and added the correct limit for YubiKey passkeys
Aside from platform agnostic password managers having support for it as a commenter below pointed out you can also save it on a physical “hardware security key” (e.g. yubikey). Technically this should be the best option as there is no way for anyone to steal your passkeys unless they physically take apart your hardware key (and there’s even keys that have additional protections that make it impossible to take apart without destroying it).
However every single platform really pushes people towards using their own solution. So only their solution is neatly integrated in their platform and also preselected when you save a passkey. But all in all those are rather small hurdles for the security a hardware key gives.
An article I read recently suggested that storing passkeys with Google, Apple, and M$ didn’t have interoperability. Like you need a Mac/iPhone or PC/Android to make it work. Is this true? Can I store a passkey in a platform agnostic way?
Yes, if you use a platform agnostic password manager that supports passkeys such as Bitwarden.
If by “platform” you mean OS, then yes - and the best way to do that is to use a dedicated password manager instead of something that’s tightly integrated with an OS.
That said, iCloud keychain is available on Windows, but not Android. Likewise with Google Password Manager - it supports Macs, but not yet support iPhones or iPads.
However you can also use a password manager like one of these and use it across every platform:
Based on my experience (with Bitwarden) or research, all support passkeys in browser extensions for Firefox and Chromium browsers and/or desktop apps on Linux, Mac, and Windows, as well as in apps for iOS and Android.
Keepass also might be an option, as KeePassXC supports passkeys and is available on Mac, Windows, and Linux, but I didn’t see any mobile clients that advertise support for passkeys.
Even with the more open password managers, there isn’t a built-in way to transfer passkeys from one password manager to another. However, the FIDO Alliance is working on a spec for securely transferring passkeys so hopefully that’ll change soon and you’ll be able to transfer passkeys from one ecosystem to another.
Also, you can generally still log in on a device that your passkey service doesn’t support by scanning a QR code displayed on the target device on your phone, so long as both devices have Bluetooth (used for confirming physical proximity). I’ve only done that once and it wasn’t super streamlined, but it also wasn’t terrible. You can also save passkeys to your phone or security key (like a Yubikey) though be aware that a YubiKey 5 can only store 100 passkeys. And you can have multiple passkeys to a given service, so if you use a Mac but use an Android phone, you can save a passkey to iCloud Keychain on your Mac and to Google Password Manager on your phone.
EDIT: Looked up and added the correct limit for YubiKey passkeys
Aside from platform agnostic password managers having support for it as a commenter below pointed out you can also save it on a physical “hardware security key” (e.g. yubikey). Technically this should be the best option as there is no way for anyone to steal your passkeys unless they physically take apart your hardware key (and there’s even keys that have additional protections that make it impossible to take apart without destroying it).
However every single platform really pushes people towards using their own solution. So only their solution is neatly integrated in their platform and also preselected when you save a passkey. But all in all those are rather small hurdles for the security a hardware key gives.