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.
Instances of this class can be obtained from SecurityKey objects for Security Key types that support it. For Security Keys that contain more than possible key for authentication operations, each instance of this class is already associated with a specific key.
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:hwsecurity-fido:, :de.cotech:hwsecurity-piv:, and :de.cotech:hwsecurity-openpgp:. 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.