An abstract connected Security Key. Concrete instances of this class, such as FidoSecurityKey, PivSecurityKey, or OpenPgpSecurityKey, offer methods to interact with the connected Security Key and applet.
This use case class performs an “authenticate” operation on a challenge.
This class performs the authenticate operation with whatever security key it is passed, doing no checks to ensure it matches an some expected key. This is useful for workflows where the security key isn’t set up on the same device that uses it.
A callback interface when a security key is discovered. This interface is parametrized with a type of SecurityKey, and is typically passed to [
The SecurityKeyManager is a singleton class for high-level management operations of security keys.
To use security keys in your App, you must first initialize it using
Once initialized, this class will dispatch newly connected security keys to all currently registered listeners. Listeners can be registered with [
A callback is registered together with a SecurityKeyConnectionMode, which establishes a connection to a particular type of Security Token, such as FIDO, PIV, or OpenPGP. Implementations for different SecurityKeyConnectionModes are shipped as modules, such as :de.cotech, :de.cotech, and :de.cotech. Apps will typically use only a single type of Security Key.
To receive callbacks in an Activity, register for a callback bound to the Activity’s lifecycle:
Advanced applications that want to work with different applets on the same connected Security Key can do so using de.cotech.hw.raw.RawSecurityKeyConnectionMode.
This class holds configuration options for SecurityKeyManager.
Base exception of the Hardware Security SDK.