FIDO U2F&UAF Tutorial
How Secure is Authentication?
How Secure is Authentication?
How Secure is Authentication?
Cloud Authentication
Password might be entered
into untrusted App / Web-site
(“phishing”)
Password could be stolen
from the server
Too many passwords to
remember
 re-use / cart
abandonment
Inconvenient to type
password on phone
Password Issues
Classifying Threats
Remotely attacking central servers
steal data for impersonation
1
Physically attacking user
devices
misuse them for
impersonation
6
Physically attacking user
devices
steal data for impersonation
5
Remotely
attacking lots of
user devices
steal data for
impersonation
Remotely
attacking lots of
user devices
misuse them for
impersonation
Remotely
attacking lots of
user devices
misuse
authenticated
sessions
2 3 4
Scalable attacks
Physical attacks
possible on lost or
stolen devices
(3% in the US in 2013)
How does FIDO work?
Device
How does FIDO work?
Private key
dedicated to one App
Public key
challenge
(signed)
response
Require user gesture
before private key
can be used
How does FIDO work?
… …SE
How does FIDO work?
Can recognize the user
(i.e. user verification), but
doesn’t know its identity
attributes.
Same Authenticator
as registered before?
Same User as
enrolled before?
How does FIDO work?
Identity binding to be done
outside FIDO: This this
“John Doe with customer
ID X”.
Can recognize the user
(i.e. user verification), but
doesn’t know its identity
attributes.
Same Authenticator
as registered before?
Same User as
enrolled before?
How does FIDO work?
… …SE
How is the key protected (TPM,
SE, TEE, …)?
Which user verification method is
used?
Attestation & Metadata
Metadata
Signed Attestation Object
Verify using trust anchor
included in Metadata
Understand Authenticator security
characteristic by looking into
Metadata from mds.fidoalliance.org
(or other sources)
Private attestation key
Passwordless Experience (UAF Standards)
Second Factor Experience (U2F Standards)
Authenticated
Online
3
Biometric User
Verification*
2
Authentication Challenge
1
?
Authenticated
Online
3
Second Factor Challenge
1
Insert Dongle* / Press Button
2
*There are other types of authenticators
Relying
Party
AppID, challenge
a; challenge, origin, channel id, etc.
a
generate:
key kpub
key kpriv
handle h kpub, h, attestation cert, signature(a,fc,kpub,h)
fc, kpub, h, attestation cert, s
cookie store:
key kpub
handle h
s
FIDO Client /
BrowserU2F Authenticator
check AppID
fc
U2F Registration
U2F Authenticator
FIDO Client /
Browser
Relying
Party
h, a; challenge, origin, channel id, etc.
retrieve:
key kpriv
from
handle h;
cntr++
cntr, signature(a,fc,cntr)
cntr, fc, s
check
signature
using
key kpub
s
fc
a
handle, AppID, challenge
U2F Authentication
hcheck AppID
set cookie
retrieve
key kpub
from
handle h
Passwordless Experience (UAF Standards)
Second Factor Experience (U2F Standards)
Authenticated
Online
3
Biometric User
Verification*
2
Authentication Challenge
1
?
Authenticated
Online
3
Second Factor Challenge
1
Insert Dongle* / Press Button
2
*There are other types of authenticators
Registration Overview
FIDO AUTHENTICATOR
FIDO SERVER
FIDO CLIENT
Send Registration Request:
- Policy
- Random Challenge
Start
registration
Verify user
Generate key pair
Sign attestation object:
• Public key
• AAID
• Hash(FinalChallenge)
• Name of relying party
Signed by attestation key
Verify signature
Check AAID against policy
Store public key
AAID = Authenticator Attestation ID, i.e. model ID
FinalChallenge=AppID | FacetID | channelBinding
| serveChallenge
Perform legacy authentication first, in order to bind authenticator to an electronic identity,
then perform FIDO registration.
Authentication Overview
FIDO AUTHENTICATOR
FIDO SERVER
FIDO CLIENT
Send Authentication Request:
- Policy
- Random Challenge
- Opt: TransactionText
Start
authentication
Verify user
Opt: Display TransactionText
Sign signData object:
• Signature alg
• Hash(FinalChallenge)
• Opt: Hash(TransactionText)
• Signature counter
• Authenticator random
Signature (Uauth key)
Verify signature
Check AAID against policy
FinalChallenge=AppID | FacetID | channelBinding
| serveChallenge
Convenience & Security
Convenience
Security
Password
Password + OTP
Convenience & Security
Convenience
Security
Password
Password + OTP
FIDO
In FIDO:
• Same user verification
method for all servers
In FIDO: Arbitrary user
verification methods are
supported (+ they are
interoperable)
Convenience & Security
Convenience
Security
Password
Password + OTP
FIDO
In FIDO:
• Only public keys on server
• Not phishable
In FIDO: Scalable security
depending on Authenticator
implementation
Conclusion
• Different authentication use-cases lead to different
authentication requirements
• FIDO separates user verification from authentication
and hence supports all user verification methods
• FIDO supports scalable convenience & security
• User verification data is known to Authenticator only
• FIDO complements federation
Rolf Lindemann, Nok Nok Labs, rolf@noknok.com

More Related Content

PDF
FIDO2 Specifications Overview
PDF
Web Authentication API
PDF
FIDO UAF Specifications: Overview & Tutorial
PDF
Securing a Web App with Passwordless Web Authentication
PPTX
FIDO Workshop-Demo Breakdown.pptx
PPTX
Getting Started With WebAuthn
PPTX
FIDO Alliance: Welcome and FIDO Update.pptx
PDF
FIDO U2F Specifications: Overview & Tutorial
FIDO2 Specifications Overview
Web Authentication API
FIDO UAF Specifications: Overview & Tutorial
Securing a Web App with Passwordless Web Authentication
FIDO Workshop-Demo Breakdown.pptx
Getting Started With WebAuthn
FIDO Alliance: Welcome and FIDO Update.pptx
FIDO U2F Specifications: Overview & Tutorial

What's hot (20)

PDF
WebAuthn and Security Keys
PPTX
IBM: Hey FIDO, Meet Passkey!.pptx
PDF
Webauthn Tutorial
PDF
Introduction to FIDO2 (Korean Language)
PDF
Integrating FIDO Authentication & Federation Protocols
PDF
FIDO U2F & UAF Tutorial
PDF
FIDO UAF 1.0 Specs: Overview and Insights
PPTX
Fido Technical Overview
PPTX
FIDO Authentication: Unphishable MFA for All
PDF
Getting Started with FIDO2
PDF
FIDO2 & Microsoft
PPTX
OpenID Connect: An Overview
PDF
The Value of FIDO Certification
PDF
Implementing OAuth
PPTX
New FIDO Specifications Overview -FIDO Alliance -Tokyo Seminar -Nadalin
PDF
Introduction to OpenID Connect
PDF
SAML VS OAuth 2.0 VS OpenID Connect
PPTX
An Introduction to OAuth 2
PPTX
Why Assertion-based Access Token is preferred to Handle-based one?
PDF
俺が考えた最強のID連携デザインパターン
WebAuthn and Security Keys
IBM: Hey FIDO, Meet Passkey!.pptx
Webauthn Tutorial
Introduction to FIDO2 (Korean Language)
Integrating FIDO Authentication & Federation Protocols
FIDO U2F & UAF Tutorial
FIDO UAF 1.0 Specs: Overview and Insights
Fido Technical Overview
FIDO Authentication: Unphishable MFA for All
Getting Started with FIDO2
FIDO2 & Microsoft
OpenID Connect: An Overview
The Value of FIDO Certification
Implementing OAuth
New FIDO Specifications Overview -FIDO Alliance -Tokyo Seminar -Nadalin
Introduction to OpenID Connect
SAML VS OAuth 2.0 VS OpenID Connect
An Introduction to OAuth 2
Why Assertion-based Access Token is preferred to Handle-based one?
俺が考えた最強のID連携デザインパターン
Ad

Similar to FIDO Specifications Overview: UAF & U2F (20)

PDF
FIDO Specifications Tutorial
PPTX
Getting to Know the FIDO Specifications - Technical Tutorial
PDF
FIDO UAF 1.0 Specs: Overview and Insights
PDF
U2F Case Study: Examining the U2F Paradox
PPTX
FIDO Specifications Overview
PPTX
FIDO-U2F-Case-Study_Hanson.pptx
PDF
CIS14: An Overview of FIDO's Universal Factor (UAF) Specifications
PPTX
UAF Tutorial: Passwordless, Biometric Authentication for Native Apps
PPTX
FIDOAlliance
PDF
FIDO Technical Specifications Overview
PDF
FIDO Technical Specifications Overview
PDF
apidays London 2023 - Building Multi-Factor Authentication into your applicat...
PDF
U2F in Dashlane
PDF
FIDO Authentication Technical Overview
PDF
FIDO Authentication Technical Overview
PPTX
Technical Considerations for Deploying FIDO Authentication
PPTX
U2F/FIDO2 implementation of YubiKey
PPTX
"Bypassing two factor authentication", Shahmeer Amir
PPT
Street conf overview
PPTX
FIDO & Strong Authentication Technology Landscape
FIDO Specifications Tutorial
Getting to Know the FIDO Specifications - Technical Tutorial
FIDO UAF 1.0 Specs: Overview and Insights
U2F Case Study: Examining the U2F Paradox
FIDO Specifications Overview
FIDO-U2F-Case-Study_Hanson.pptx
CIS14: An Overview of FIDO's Universal Factor (UAF) Specifications
UAF Tutorial: Passwordless, Biometric Authentication for Native Apps
FIDOAlliance
FIDO Technical Specifications Overview
FIDO Technical Specifications Overview
apidays London 2023 - Building Multi-Factor Authentication into your applicat...
U2F in Dashlane
FIDO Authentication Technical Overview
FIDO Authentication Technical Overview
Technical Considerations for Deploying FIDO Authentication
U2F/FIDO2 implementation of YubiKey
"Bypassing two factor authentication", Shahmeer Amir
Street conf overview
FIDO & Strong Authentication Technology Landscape
Ad

More from FIDO Alliance (20)

PPTX
Securing Account Lifecycles in the Age of Deepfakes.pptx
PPTX
FIDO Seminar: Perspectives on Passkeys & Consumer Adoption.pptx
PPTX
FIDO Seminar: Evolving Landscape of Post-Quantum Cryptography.pptx
PPTX
FIDO Seminar: Targeting Trust: The Future of Identity in the Workforce.pptx
PPTX
FIDO Seminar: New Data: Passkey Adoption in the Workforce.pptx
PPTX
FIDO Seminar: Authentication for a Billion Consumers - Amazon.pptx
PPTX
FIDO Alliance Seminar State of Passkeys.pptx
PPTX
FIDO Munich Seminar: FIDO Tech Principles.pptx
PPTX
FIDO Munich Seminar: Securing Smart Car.pptx
PPTX
FIDO Munich Seminar: Strong Workforce Authn Push & Pull Factors.pptx
PPTX
FIDO Munich Seminar: Biometrics and Passkeys for In-Vehicle Apps.pptx
PPTX
FIDO Munich Seminar Workforce Authentication Case Study.pptx
PPTX
FIDO Munich Seminar In-Vehicle Payment Trends.pptx
PPTX
FIDO Munich Seminar FIDO Automotive Apps.pptx
PPTX
FIDO Munich Seminar Blueprint for In-Vehicle Payment Standard.pptx
PPTX
FIDO Munich Seminar Introduction to FIDO.pptx
PPTX
UX Webinar Series: Essentials for Adopting Passkeys as the Foundation of your...
PPTX
UX Webinar Series: Drive Revenue and Decrease Costs with Passkeys for Consume...
PPTX
UX Webinar Series: Aligning Authentication Experiences with Business Goals
PDF
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
Securing Account Lifecycles in the Age of Deepfakes.pptx
FIDO Seminar: Perspectives on Passkeys & Consumer Adoption.pptx
FIDO Seminar: Evolving Landscape of Post-Quantum Cryptography.pptx
FIDO Seminar: Targeting Trust: The Future of Identity in the Workforce.pptx
FIDO Seminar: New Data: Passkey Adoption in the Workforce.pptx
FIDO Seminar: Authentication for a Billion Consumers - Amazon.pptx
FIDO Alliance Seminar State of Passkeys.pptx
FIDO Munich Seminar: FIDO Tech Principles.pptx
FIDO Munich Seminar: Securing Smart Car.pptx
FIDO Munich Seminar: Strong Workforce Authn Push & Pull Factors.pptx
FIDO Munich Seminar: Biometrics and Passkeys for In-Vehicle Apps.pptx
FIDO Munich Seminar Workforce Authentication Case Study.pptx
FIDO Munich Seminar In-Vehicle Payment Trends.pptx
FIDO Munich Seminar FIDO Automotive Apps.pptx
FIDO Munich Seminar Blueprint for In-Vehicle Payment Standard.pptx
FIDO Munich Seminar Introduction to FIDO.pptx
UX Webinar Series: Essentials for Adopting Passkeys as the Foundation of your...
UX Webinar Series: Drive Revenue and Decrease Costs with Passkeys for Consume...
UX Webinar Series: Aligning Authentication Experiences with Business Goals
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf

Recently uploaded (20)

PPTX
AI-driven Assurance Across Your End-to-end Network With ThousandEyes
PPTX
Internet of Everything -Basic concepts details
PDF
Lung cancer patients survival prediction using outlier detection and optimize...
PDF
“A New Era of 3D Sensing: Transforming Industries and Creating Opportunities,...
DOCX
Basics of Cloud Computing - Cloud Ecosystem
PDF
Flame analysis and combustion estimation using large language and vision assi...
PPTX
Microsoft User Copilot Training Slide Deck
PDF
sbt 2.0: go big (Scala Days 2025 edition)
PDF
Advancing precision in air quality forecasting through machine learning integ...
PDF
Accessing-Finance-in-Jordan-MENA 2024 2025.pdf
PPTX
Configure Apache Mutual Authentication
PDF
Data Virtualization in Action: Scaling APIs and Apps with FME
PDF
Convolutional neural network based encoder-decoder for efficient real-time ob...
PDF
Statistics on Ai - sourced from AIPRM.pdf
PDF
Transform-Quality-Engineering-with-AI-A-60-Day-Blueprint-for-Digital-Success.pdf
PPTX
Module 1 Introduction to Web Programming .pptx
PDF
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
PPTX
GROUP4NURSINGINFORMATICSREPORT-2 PRESENTATION
PDF
Transform-Your-Supply-Chain-with-AI-Driven-Quality-Engineering.pdf
PDF
Consumable AI The What, Why & How for Small Teams.pdf
AI-driven Assurance Across Your End-to-end Network With ThousandEyes
Internet of Everything -Basic concepts details
Lung cancer patients survival prediction using outlier detection and optimize...
“A New Era of 3D Sensing: Transforming Industries and Creating Opportunities,...
Basics of Cloud Computing - Cloud Ecosystem
Flame analysis and combustion estimation using large language and vision assi...
Microsoft User Copilot Training Slide Deck
sbt 2.0: go big (Scala Days 2025 edition)
Advancing precision in air quality forecasting through machine learning integ...
Accessing-Finance-in-Jordan-MENA 2024 2025.pdf
Configure Apache Mutual Authentication
Data Virtualization in Action: Scaling APIs and Apps with FME
Convolutional neural network based encoder-decoder for efficient real-time ob...
Statistics on Ai - sourced from AIPRM.pdf
Transform-Quality-Engineering-with-AI-A-60-Day-Blueprint-for-Digital-Success.pdf
Module 1 Introduction to Web Programming .pptx
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
GROUP4NURSINGINFORMATICSREPORT-2 PRESENTATION
Transform-Your-Supply-Chain-with-AI-Driven-Quality-Engineering.pdf
Consumable AI The What, Why & How for Small Teams.pdf

FIDO Specifications Overview: UAF & U2F

  • 2. How Secure is Authentication?
  • 3. How Secure is Authentication?
  • 4. How Secure is Authentication?
  • 6. Password might be entered into untrusted App / Web-site (“phishing”) Password could be stolen from the server Too many passwords to remember  re-use / cart abandonment Inconvenient to type password on phone Password Issues
  • 7. Classifying Threats Remotely attacking central servers steal data for impersonation 1 Physically attacking user devices misuse them for impersonation 6 Physically attacking user devices steal data for impersonation 5 Remotely attacking lots of user devices steal data for impersonation Remotely attacking lots of user devices misuse them for impersonation Remotely attacking lots of user devices misuse authenticated sessions 2 3 4 Scalable attacks Physical attacks possible on lost or stolen devices (3% in the US in 2013)
  • 8. How does FIDO work? Device
  • 9. How does FIDO work? Private key dedicated to one App Public key challenge (signed) response Require user gesture before private key can be used
  • 10. How does FIDO work? … …SE
  • 11. How does FIDO work? Can recognize the user (i.e. user verification), but doesn’t know its identity attributes. Same Authenticator as registered before? Same User as enrolled before?
  • 12. How does FIDO work? Identity binding to be done outside FIDO: This this “John Doe with customer ID X”. Can recognize the user (i.e. user verification), but doesn’t know its identity attributes. Same Authenticator as registered before? Same User as enrolled before?
  • 13. How does FIDO work? … …SE How is the key protected (TPM, SE, TEE, …)? Which user verification method is used?
  • 14. Attestation & Metadata Metadata Signed Attestation Object Verify using trust anchor included in Metadata Understand Authenticator security characteristic by looking into Metadata from mds.fidoalliance.org (or other sources) Private attestation key
  • 15. Passwordless Experience (UAF Standards) Second Factor Experience (U2F Standards) Authenticated Online 3 Biometric User Verification* 2 Authentication Challenge 1 ? Authenticated Online 3 Second Factor Challenge 1 Insert Dongle* / Press Button 2 *There are other types of authenticators
  • 16. Relying Party AppID, challenge a; challenge, origin, channel id, etc. a generate: key kpub key kpriv handle h kpub, h, attestation cert, signature(a,fc,kpub,h) fc, kpub, h, attestation cert, s cookie store: key kpub handle h s FIDO Client / BrowserU2F Authenticator check AppID fc U2F Registration
  • 17. U2F Authenticator FIDO Client / Browser Relying Party h, a; challenge, origin, channel id, etc. retrieve: key kpriv from handle h; cntr++ cntr, signature(a,fc,cntr) cntr, fc, s check signature using key kpub s fc a handle, AppID, challenge U2F Authentication hcheck AppID set cookie retrieve key kpub from handle h
  • 18. Passwordless Experience (UAF Standards) Second Factor Experience (U2F Standards) Authenticated Online 3 Biometric User Verification* 2 Authentication Challenge 1 ? Authenticated Online 3 Second Factor Challenge 1 Insert Dongle* / Press Button 2 *There are other types of authenticators
  • 19. Registration Overview FIDO AUTHENTICATOR FIDO SERVER FIDO CLIENT Send Registration Request: - Policy - Random Challenge Start registration Verify user Generate key pair Sign attestation object: • Public key • AAID • Hash(FinalChallenge) • Name of relying party Signed by attestation key Verify signature Check AAID against policy Store public key AAID = Authenticator Attestation ID, i.e. model ID FinalChallenge=AppID | FacetID | channelBinding | serveChallenge Perform legacy authentication first, in order to bind authenticator to an electronic identity, then perform FIDO registration.
  • 20. Authentication Overview FIDO AUTHENTICATOR FIDO SERVER FIDO CLIENT Send Authentication Request: - Policy - Random Challenge - Opt: TransactionText Start authentication Verify user Opt: Display TransactionText Sign signData object: • Signature alg • Hash(FinalChallenge) • Opt: Hash(TransactionText) • Signature counter • Authenticator random Signature (Uauth key) Verify signature Check AAID against policy FinalChallenge=AppID | FacetID | channelBinding | serveChallenge
  • 22. Convenience & Security Convenience Security Password Password + OTP FIDO In FIDO: • Same user verification method for all servers In FIDO: Arbitrary user verification methods are supported (+ they are interoperable)
  • 23. Convenience & Security Convenience Security Password Password + OTP FIDO In FIDO: • Only public keys on server • Not phishable In FIDO: Scalable security depending on Authenticator implementation
  • 24. Conclusion • Different authentication use-cases lead to different authentication requirements • FIDO separates user verification from authentication and hence supports all user verification methods • FIDO supports scalable convenience & security • User verification data is known to Authenticator only • FIDO complements federation Rolf Lindemann, Nok Nok Labs, [email protected]