# FIDO Authentication

Inkey supports multi-factor authentication (MFA) through FIDO hardware keys – one of the most secure ways to protect a digital account. This means that users can opt to require the presentation of their hardware key(s) when a dApp wants to authenticate a user or propose a transaction for approval.

Hardware keys may be plugged into the device via USB or read wirelessly over NFC – different models have different features and compatibility. FIDO (Fast IDentity Online) is the prevailing software protocol installed on most hardware keys and is rigorously tested thanks to its open-source codebase. FIDO also enables facial, fingerprint and voice recognition authentication methods which Inkey will support in the future.

# Managing Hardware Keys

From the list of registered hardware keys you can add, test or delete each entry.

# Add a Hardware Key

  1. Login to Inkey
  2. In the "Hardware Keys" section, tap the "+ Add New" button
  3. A new window will popup, authenticate into Inkey again
    • the new window ensures that the dApp cannot access your new FIDO registration
  4. Enter a nickname you want to identify this key as (such as "the purple yubikey"), then tap "Register"
  5. Follow the browser's instructions for connecting the key to the device
    • FYI there is a 60 second timeout for this operation
  6. Upon successful saving, the new window will close and the key will be listed in the "Hardware Keys" section

# Test a Hardware Key

  1. Tap the test button next to the key entry's nickname
  2. Follow the browser's instructions regarding connecting the key
  3. Upon success, an alert will popup saying hooray

# Delete a Hardware Key

  1. Tap the trash can button 🗑 for the key in the list.

# Enable or Disable FIDO

To require the presentation a user's hardware key when a dApp submits a transaction, toggle the "require fido for all txns" checkbox in the "Hardware Keys" section.

In the future, Inkey will support hardware key presentation for login AND more granular control for dApp specific settings (ie, requiring a specific key or only if a transaction transfers above a certain amount).