Getting Started with iOS
Native support for WebAuthn and FIDO is finally here on iPhones and iPads. Yubico now offers two great user experiences on iOS using a simple tap or a physical connection. Authentication via NFC is supported by the
YubiKey 5 NFC
or
Security Key NFC
by Yubico by just tapping the YubiKey at the top of an iPhone (7 and above). Authentication via physical connection is supported by the
YubiKey 5Ci
by plugging the YubiKey into the Lightning or USB-C port of an iPhone or iPad.
For developers currently supporting FIDO2 security keys using the WebAuthn standard on desktop browsers, checkout this guide
Supporting U2F or FIDO2 Security Keys on iOS and iPadOS
The above article covers two paths that developers can take for supporting YubiKeys on mobile.
1.
Using the native iOS/iPadOS libraries and mobile Safari browser as of iOS 13.3 or
2.
Use the Yubico iOS SDK integrated into a native app to support other features available on a YubiKey.
For path #2, get started with the Yubico iOS SDK below.
If you run into any issues during the development process, fill out a
developer support ticket
and our team will be happy to assist you.
Yubico iOS SDK
The Yubico Mobile iOS SDK is an iOS library provided by Yubico to interact with YubiKeys on iOS devices.
Download iOS SDK
The library supports NFC-enabled YubiKeys and the Lightning connector YubiKey 5Ci. This library provides the APIs to interact with the following features of a YubiKey:
FIDO
- Provides FIDO2 operations accessible via the YKFKeyFIDO2Service.
U2F
- Provides U2F operations accessible via the YKFKeyU2FService.
OATH
- Allows applications, such as an authenticator app to store OATH TOTP and HOTP secrets on a YubiKey and generate one-time passwords.
OTP
- Provides implementation classes to obtain YubiKey OTP via accessory (5Ci) or NFC.
RAW
- Allows sending raw commands to YubiKeys over two channels: YKFKeyRawCommandService or over a PC/SC like interface.
In addition, the library provides a
demo application
which shows a complete example of how to integrate and use all the features of the library in an iOS project.
Get Started