SlideShare a Scribd company logo
Everything you
want to know about
WebAuthn
Kelley Robinson
Everything you
want to know about
WebAuthn
Kelley Robinson
© 2020 TWILIO INC. ALL RIGHTS RESERVED.
krobinson@twilio.com
👋👩💻🔐
Kelley Robinson
@kelleyrobinson
TABLE OF CONTENTS
1. What is WebAuthn?
2. How WebAuthn works
3. Advantages
4. Obstacles
5. How to get started with
WebAuthn
© 2019 TWILIO INC. ALL RIGHTS RESERVED.
What is WebAuthn?
What is WebAuthn?
"Web Authentication"
• Browser API for passwordless authentication
• Strong authentication using public key cryptography
• Specification developed by W3C and FIDO Alliance
• Scoped, site specific credentials
image source: https:/
/webauthn.guide/
Authenticator types
WebAuthn Spec Name Authenticator Examples
"Platform Authenticator"
Built into the
computer/phone
Windows Hello, fingerprint
reader, Face ID
"Roaming Authenticator" External security keys Yubikey, Titan Security Key
https://www.w3.org/TR/webauthn/#table-authenticatorTypes
FIDO Alliance
• Develops technical specifications for non-password
based authentication
• Certifies technology that meets specs
Relying party (RP) - business /
organization / website
CTAP - Client to Authenticator Protocol
U2F (=CTAP1) - Universal second factor
FIDO2 - WebAuthn + CTAP2
Terminology
© 2019 TWILIO INC. ALL RIGHTS RESERVED.
HOW WEBAUTHN WORKS
Registration
User initiates new account registration
Server sends data to connect website + user to the credential
WebAuthn API prompts user to create a key pair, user chooses authenticator
Authenticator generates key pair bound to website + user data,
sends public key to the server
Server confirms registration, stores public key
© 2019 TWILIO INC. ALL RIGHTS RESERVED.
REGISTRATION DEMO
Registration security
• Private key never leaves authenticator
• Biometric data never leaves authenticator
• Only public key and attestation are sent to server
What is attestation?
• Information about the authenticator being used
• Options: none, indirect, direct, enterprise
• Not required by default
Enables:
• allow-list of approved authenticators
• deny-list of known flawed authenticators
https:/
/www.w3.org/TR/webauthn/#enum-attestation-convey
https:/
/developers.yubico.com/WebAuthn/Concepts/Securing_WebAuthn_with_Attestation.html
https:/
/www.chromium.org/security-keys
Authentication
User initiates login
Server initiates challenge
Authenticator signs challenge with private key and sends to the server
Server verifies signature with the public key
Login approved or denied
© 2019 TWILIO INC. ALL RIGHTS RESERVED.
AUTHENTICATION DEMO
© 2019 TWILIO INC. ALL RIGHTS RESERVED.
ADVANTAGES
FEWER PASSWORDS
Phishing resistant
© 2019 TWILIO INC. ALL RIGHTS RESERVED.
Scoped credentials protect phishing targets
"Databases are no longer targets
because public keys are useless without
the corresponding private keys."
Yubico
Push 0.029 -0.204 113 (-0.374, -0.020)
U2F <0.003 -0.269 118 (-0.429, -0.093)
Codes 0.426 -0.076 110 (-0.260, 0.113)
understand their background and feelings about online secu-
rity. With the consent of each participant, we recorded the
audio of each interview. Two coders listened to the record-
ings and coded each interview, discussing each response until
reaching agreement. Common themes identified from the
recordings are discussed in section 5.2.
4.8 Compensation
Participants were compensated a maximum of 25 USD after
their participation in the study according to a tiered compen-
sation structure based on the total number of tasks completed
through the banking interface.
5 Two-week Study Results
5.1 Quantitative Results
5.1.1 Timing Data
We measured both the time for the password login and the time
Figure 2: Time to authenticate for five 2FA methods
https://www.usenix.org/system/files/soups2019-reese.pdf
Duo 2019 State of the Auth Report
Speedy
• U2F has fastest median
authentication time
• Compared to SMS, U2F saves a user
18.2 minutes annually
© 2019 TWILIO INC. ALL RIGHTS RESERVED.
OBSTACLES
Incomplete browser support
87.39% support
https://caniuse.com/?search=webauthn
Limited authenticator
availability
• Roaming authenticators are expensive
• Platform authenticators are not ubiquitous
Check your browser &
device compatibility:
twil.io/webauthn
© 2019 TWILIO INC. ALL RIGHTS RESERVED.
COMPATIBILITY DEMO
https:/
/www.okta.com/businesses-at-work/2021/#developers-at-work
https://github.com/duo-labs/py_webauthn/blob/master/webauthn/webauthn.py
New technology
• Limited documentation and sample apps
• Nascent library support
• Cryptography can be scary
N=31 %
Google
Success 26 83%
Correctly identified completion 22 70%
Failure 5 16%
Facebook
Success 10 32%
Correctly identified completion 6 19%
Failure 21 67%
Registered YubiKey without enabling 2FA 12 38%
Windows 10
Success 12 38%
Set up the Windows Logon Authorization Tool 5 16%
Set up YubiKey for Windows Hello 7 22%
Failure 19 61%
Failed to set up the Windows Logon Authorization Tool 9 29%
Failed to set up YubiKey for Windows Hello 5 16%
Locked out of the computer 6 19%
TABLE I
LABORATORY STUDY SUCCESS RATES
F
k
th
t
l
r
a
t
p
t
n
https://isrl.byu.edu/pubs/sp2018.pdf
Factor registration
Onboarding UX impacts users' success
https://www.usenix.org/system/files/soups2019-reese.pdf Figure 3: SUS scores for five 2FA methods.
"Faster authentication does not
necessarily mean higher usability"
Factor usability
Account Recovery
https:/
/twitter.com/p1nt1nh0/status/1369637197394153474
© 2019 TWILIO INC. ALL RIGHTS RESERVED.
HOW TO GET STARTED
webauthn.guide
codelabs.developers.google.com/codelabs/webauthn-reauth
© 2019 TWILIO INC. ALL RIGHTS RESERVED.
BEST PRACTICES
Embrace fallback options
Prepare for:
• Lost/unavailable authenticator
• Biometric authenticator not working
when a user's finger is wet or wearing
a mask
https:/
/github.com/settings/two_factor_authentication/configure
https:/
/codelabs.developers.google.com/codelabs/webauthn-reauth#5
Account recovery
• Encourage adding multiple
authenticators
• Don't force users to fallback to less
secure channels, but offer fallback
options to TOTP, security codes, or
(gasp) even SMS
Cloudflare 2FA onboarding
© 2019 TWILIO INC. ALL RIGHTS RESERVED.
🦄 WebAuthn is both a secure and usable account security option
👩💻 Network effects will help bolster adoption
✍ Passwords aren't going away overnight
☀ ...but there's reason for hope
Takeaways
@kelleyrobinson
THANK YOU
© 2019 TWILIO INC. ALL RIGHTS RESERVED.
Resources
• https:/
/caniuse.com/?search=webauthn
• webauthn.guide
• webauthn.io
• Guide to FIDO2 and WebAuthn Terminology
• What is FIDO2
• Beyond Passwords: Simpler, Stronger Authentication
with FIDO2 [Video]
• fidoalliance.org/
• WebAuthn Spec
• CTAP Spec
• https:/
/developers.yubico.com/WebAuthn/
• https:/
/codelabs.developers.google.com/codelabs/
webauthn-reauth#0
• https:/
/blog.cloudflare.com/cloudflare-now-
supports-security-keys-with-web-authentication-
webauthn/
• https:/
/github.com/OWASP/SSO_Project
• https:/
/www.twilio.com/blog/detect-browser-
support-webauthn
• https:/
/github.com/robinske/webauthn-support-
check

More Related Content

What's hot

Cryptography 101 for Java Developers - Devoxx 2019
Cryptography 101 for Java Developers - Devoxx 2019Cryptography 101 for Java Developers - Devoxx 2019
Cryptography 101 for Java Developers - Devoxx 2019
Michel Schudel
 
Future of password less Authentication
Future of password less AuthenticationFuture of password less Authentication
Future of password less Authentication
Dhineshsunder ganapathi
 
WebAuthn and Security Keys
WebAuthn and Security KeysWebAuthn and Security Keys
WebAuthn and Security Keys
FIDO Alliance
 
Verifiable Credentials_Kristina_Identiverse2022_vFIN.pdf
Verifiable Credentials_Kristina_Identiverse2022_vFIN.pdfVerifiable Credentials_Kristina_Identiverse2022_vFIN.pdf
Verifiable Credentials_Kristina_Identiverse2022_vFIN.pdf
Kristina Yasuda
 
2019 FIDO Tokyo Seminar - LINE PayへのFIDO2実装
2019 FIDO Tokyo Seminar - LINE PayへのFIDO2実装2019 FIDO Tokyo Seminar - LINE PayへのFIDO2実装
2019 FIDO Tokyo Seminar - LINE PayへのFIDO2実装
FIDO Alliance
 
FIDO UAF Specifications: Overview & Tutorial
FIDO UAF Specifications: Overview & Tutorial FIDO UAF Specifications: Overview & Tutorial
FIDO UAF Specifications: Overview & Tutorial
FIDO Alliance
 
FIDO2 Specifications Overview
FIDO2 Specifications OverviewFIDO2 Specifications Overview
FIDO2 Specifications Overview
FIDO Alliance
 
OpenID 4 Verifiable Credentials + HAIP (Update)
OpenID 4 Verifiable Credentials + HAIP (Update)OpenID 4 Verifiable Credentials + HAIP (Update)
OpenID 4 Verifiable Credentials + HAIP (Update)
Torsten Lodderstedt
 
Protecting your phone verification flow from fraud & abuse
Protecting your phone verification flow from fraud & abuseProtecting your phone verification flow from fraud & abuse
Protecting your phone verification flow from fraud & abuse
Kelley Robinson
 
Getting Started With WebAuthn
Getting Started With WebAuthnGetting Started With WebAuthn
Getting Started With WebAuthn
FIDO Alliance
 
Web Authn & Security Keys: Unlocking the Key to Authentication
Web Authn & Security Keys: Unlocking the Key to AuthenticationWeb Authn & Security Keys: Unlocking the Key to Authentication
Web Authn & Security Keys: Unlocking the Key to Authentication
FIDO Alliance
 
FIDO2 & Microsoft
FIDO2 & MicrosoftFIDO2 & Microsoft
FIDO2 & Microsoft
FIDO Alliance
 
PSConfEU - Offensive Active Directory (With PowerShell!)
PSConfEU - Offensive Active Directory (With PowerShell!)PSConfEU - Offensive Active Directory (With PowerShell!)
PSConfEU - Offensive Active Directory (With PowerShell!)
Will Schroeder
 
Getting Started with FIDO2
Getting Started with FIDO2Getting Started with FIDO2
Getting Started with FIDO2
FIDO Alliance
 
Identiverse 2020 - Account Recovery with 2FA
Identiverse 2020 - Account Recovery with 2FAIdentiverse 2020 - Account Recovery with 2FA
Identiverse 2020 - Account Recovery with 2FA
Kelley Robinson
 
FIDO and the Future of User Authentication
FIDO and the Future of User AuthenticationFIDO and the Future of User Authentication
FIDO and the Future of User Authentication
FIDO Alliance
 
Bug Bounty - Hackers Job
Bug Bounty - Hackers JobBug Bounty - Hackers Job
Bug Bounty - Hackers Job
Arbin Godar
 
Secure coding in C#
Secure coding in C#Secure coding in C#
Secure coding in C#
Siddharth Bezalwar
 
OpenID for Verifiable Credentials (IIW 35)
OpenID for Verifiable Credentials (IIW 35)OpenID for Verifiable Credentials (IIW 35)
OpenID for Verifiable Credentials (IIW 35)
Torsten Lodderstedt
 
Securing a Web App with Security Keys
Securing a Web App with Security KeysSecuring a Web App with Security Keys
Securing a Web App with Security Keys
FIDO Alliance
 

What's hot (20)

Cryptography 101 for Java Developers - Devoxx 2019
Cryptography 101 for Java Developers - Devoxx 2019Cryptography 101 for Java Developers - Devoxx 2019
Cryptography 101 for Java Developers - Devoxx 2019
 
Future of password less Authentication
Future of password less AuthenticationFuture of password less Authentication
Future of password less Authentication
 
WebAuthn and Security Keys
WebAuthn and Security KeysWebAuthn and Security Keys
WebAuthn and Security Keys
 
Verifiable Credentials_Kristina_Identiverse2022_vFIN.pdf
Verifiable Credentials_Kristina_Identiverse2022_vFIN.pdfVerifiable Credentials_Kristina_Identiverse2022_vFIN.pdf
Verifiable Credentials_Kristina_Identiverse2022_vFIN.pdf
 
2019 FIDO Tokyo Seminar - LINE PayへのFIDO2実装
2019 FIDO Tokyo Seminar - LINE PayへのFIDO2実装2019 FIDO Tokyo Seminar - LINE PayへのFIDO2実装
2019 FIDO Tokyo Seminar - LINE PayへのFIDO2実装
 
FIDO UAF Specifications: Overview & Tutorial
FIDO UAF Specifications: Overview & Tutorial FIDO UAF Specifications: Overview & Tutorial
FIDO UAF Specifications: Overview & Tutorial
 
FIDO2 Specifications Overview
FIDO2 Specifications OverviewFIDO2 Specifications Overview
FIDO2 Specifications Overview
 
OpenID 4 Verifiable Credentials + HAIP (Update)
OpenID 4 Verifiable Credentials + HAIP (Update)OpenID 4 Verifiable Credentials + HAIP (Update)
OpenID 4 Verifiable Credentials + HAIP (Update)
 
Protecting your phone verification flow from fraud & abuse
Protecting your phone verification flow from fraud & abuseProtecting your phone verification flow from fraud & abuse
Protecting your phone verification flow from fraud & abuse
 
Getting Started With WebAuthn
Getting Started With WebAuthnGetting Started With WebAuthn
Getting Started With WebAuthn
 
Web Authn & Security Keys: Unlocking the Key to Authentication
Web Authn & Security Keys: Unlocking the Key to AuthenticationWeb Authn & Security Keys: Unlocking the Key to Authentication
Web Authn & Security Keys: Unlocking the Key to Authentication
 
FIDO2 & Microsoft
FIDO2 & MicrosoftFIDO2 & Microsoft
FIDO2 & Microsoft
 
PSConfEU - Offensive Active Directory (With PowerShell!)
PSConfEU - Offensive Active Directory (With PowerShell!)PSConfEU - Offensive Active Directory (With PowerShell!)
PSConfEU - Offensive Active Directory (With PowerShell!)
 
Getting Started with FIDO2
Getting Started with FIDO2Getting Started with FIDO2
Getting Started with FIDO2
 
Identiverse 2020 - Account Recovery with 2FA
Identiverse 2020 - Account Recovery with 2FAIdentiverse 2020 - Account Recovery with 2FA
Identiverse 2020 - Account Recovery with 2FA
 
FIDO and the Future of User Authentication
FIDO and the Future of User AuthenticationFIDO and the Future of User Authentication
FIDO and the Future of User Authentication
 
Bug Bounty - Hackers Job
Bug Bounty - Hackers JobBug Bounty - Hackers Job
Bug Bounty - Hackers Job
 
Secure coding in C#
Secure coding in C#Secure coding in C#
Secure coding in C#
 
OpenID for Verifiable Credentials (IIW 35)
OpenID for Verifiable Credentials (IIW 35)OpenID for Verifiable Credentials (IIW 35)
OpenID for Verifiable Credentials (IIW 35)
 
Securing a Web App with Security Keys
Securing a Web App with Security KeysSecuring a Web App with Security Keys
Securing a Web App with Security Keys
 

Similar to WebAuthn

2FA in 2020 and Beyond
2FA in 2020 and Beyond2FA in 2020 and Beyond
2FA in 2020 and Beyond
Kelley Robinson
 
FIDO Alliance: Year in Review Webinar slides from January 20 2016
FIDO Alliance: Year in Review Webinar slides from January 20 2016FIDO Alliance: Year in Review Webinar slides from January 20 2016
FIDO Alliance: Year in Review Webinar slides from January 20 2016
FIDO Alliance
 
Auth on the web: better authentication
Auth on the web: better authenticationAuth on the web: better authentication
Auth on the web: better authentication
Kelley Robinson
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
FIDO Alliance
 
WSO2 Guest Webinar: FIDO Universal Second Factor (U2F) for WSO2 Identity Server
WSO2 Guest Webinar: FIDO Universal Second Factor (U2F) for WSO2 Identity ServerWSO2 Guest Webinar: FIDO Universal Second Factor (U2F) for WSO2 Identity Server
WSO2 Guest Webinar: FIDO Universal Second Factor (U2F) for WSO2 Identity Server
WSO2
 
Consumer Attitudes Toward Strong Authentication & LoginWithFIDO.com
Consumer Attitudes Toward Strong Authentication & LoginWithFIDO.comConsumer Attitudes Toward Strong Authentication & LoginWithFIDO.com
Consumer Attitudes Toward Strong Authentication & LoginWithFIDO.com
FIDO Alliance
 
Introduction to FIDO Alliance
Introduction to FIDO AllianceIntroduction to FIDO Alliance
Introduction to FIDO Alliance
FIDO Alliance
 
Universal login
Universal loginUniversal login
Universal login
Zx MYS
 
Designing customer account recovery in a 2FA world
Designing customer account recovery in a 2FA worldDesigning customer account recovery in a 2FA world
Designing customer account recovery in a 2FA world
Kelley Robinson
 
CyberSecurity Update Slides
CyberSecurity Update SlidesCyberSecurity Update Slides
CyberSecurity Update Slides
Jim Kaplan CIA CFE
 
Securing a Web App with Passwordless Web Authentication
Securing a Web App with Passwordless Web AuthenticationSecuring a Web App with Passwordless Web Authentication
Securing a Web App with Passwordless Web Authentication
FIDO Alliance
 
CIS14: Filling the “authentication goes here” Hole in Identity
CIS14: Filling the “authentication goes here” Hole in IdentityCIS14: Filling the “authentication goes here” Hole in Identity
CIS14: Filling the “authentication goes here” Hole in Identity
CloudIDSummit
 
FIDO2 : vers la fin des mots de passe ? - Par Arnaud Jumelet
FIDO2 : vers la fin des mots de passe ? - Par Arnaud JumeletFIDO2 : vers la fin des mots de passe ? - Par Arnaud Jumelet
FIDO2 : vers la fin des mots de passe ? - Par Arnaud Jumelet
Identity Days
 
TrustBearer - Virginia Security Summit - Web Authentication Strategies - Apri...
TrustBearer - Virginia Security Summit - Web Authentication Strategies - Apri...TrustBearer - Virginia Security Summit - Web Authentication Strategies - Apri...
TrustBearer - Virginia Security Summit - Web Authentication Strategies - Apri...
TrustBearer
 
DOCOMO Joins FIDO Alliance Board of Directors
DOCOMO Joins FIDO Alliance Board of DirectorsDOCOMO Joins FIDO Alliance Board of Directors
DOCOMO Joins FIDO Alliance Board of Directors
FIDO Alliance
 
Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptx
FIDO Alliance
 
Cybersecurity Slides
Cybersecurity  SlidesCybersecurity  Slides
Cybersecurity Slides
Jim Kaplan CIA CFE
 
End to End Security with MVC and Web API
End to End Security with MVC and Web APIEnd to End Security with MVC and Web API
End to End Security with MVC and Web API
Michele Leroux Bustamante
 
Smartphone Platform Security - What can we learn from Symbian?
Smartphone Platform Security - What can we learn from Symbian?Smartphone Platform Security - What can we learn from Symbian?
Smartphone Platform Security - What can we learn from Symbian?
Craig Heath
 
Getting to Know the FIDO Specifications - Technical Tutorial
Getting to Know the FIDO Specifications - Technical TutorialGetting to Know the FIDO Specifications - Technical Tutorial
Getting to Know the FIDO Specifications - Technical Tutorial
FIDO Alliance
 

Similar to WebAuthn (20)

2FA in 2020 and Beyond
2FA in 2020 and Beyond2FA in 2020 and Beyond
2FA in 2020 and Beyond
 
FIDO Alliance: Year in Review Webinar slides from January 20 2016
FIDO Alliance: Year in Review Webinar slides from January 20 2016FIDO Alliance: Year in Review Webinar slides from January 20 2016
FIDO Alliance: Year in Review Webinar slides from January 20 2016
 
Auth on the web: better authentication
Auth on the web: better authenticationAuth on the web: better authentication
Auth on the web: better authentication
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
WSO2 Guest Webinar: FIDO Universal Second Factor (U2F) for WSO2 Identity Server
WSO2 Guest Webinar: FIDO Universal Second Factor (U2F) for WSO2 Identity ServerWSO2 Guest Webinar: FIDO Universal Second Factor (U2F) for WSO2 Identity Server
WSO2 Guest Webinar: FIDO Universal Second Factor (U2F) for WSO2 Identity Server
 
Consumer Attitudes Toward Strong Authentication & LoginWithFIDO.com
Consumer Attitudes Toward Strong Authentication & LoginWithFIDO.comConsumer Attitudes Toward Strong Authentication & LoginWithFIDO.com
Consumer Attitudes Toward Strong Authentication & LoginWithFIDO.com
 
Introduction to FIDO Alliance
Introduction to FIDO AllianceIntroduction to FIDO Alliance
Introduction to FIDO Alliance
 
Universal login
Universal loginUniversal login
Universal login
 
Designing customer account recovery in a 2FA world
Designing customer account recovery in a 2FA worldDesigning customer account recovery in a 2FA world
Designing customer account recovery in a 2FA world
 
CyberSecurity Update Slides
CyberSecurity Update SlidesCyberSecurity Update Slides
CyberSecurity Update Slides
 
Securing a Web App with Passwordless Web Authentication
Securing a Web App with Passwordless Web AuthenticationSecuring a Web App with Passwordless Web Authentication
Securing a Web App with Passwordless Web Authentication
 
CIS14: Filling the “authentication goes here” Hole in Identity
CIS14: Filling the “authentication goes here” Hole in IdentityCIS14: Filling the “authentication goes here” Hole in Identity
CIS14: Filling the “authentication goes here” Hole in Identity
 
FIDO2 : vers la fin des mots de passe ? - Par Arnaud Jumelet
FIDO2 : vers la fin des mots de passe ? - Par Arnaud JumeletFIDO2 : vers la fin des mots de passe ? - Par Arnaud Jumelet
FIDO2 : vers la fin des mots de passe ? - Par Arnaud Jumelet
 
TrustBearer - Virginia Security Summit - Web Authentication Strategies - Apri...
TrustBearer - Virginia Security Summit - Web Authentication Strategies - Apri...TrustBearer - Virginia Security Summit - Web Authentication Strategies - Apri...
TrustBearer - Virginia Security Summit - Web Authentication Strategies - Apri...
 
DOCOMO Joins FIDO Alliance Board of Directors
DOCOMO Joins FIDO Alliance Board of DirectorsDOCOMO Joins FIDO Alliance Board of Directors
DOCOMO Joins FIDO Alliance Board of Directors
 
Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptx
 
Cybersecurity Slides
Cybersecurity  SlidesCybersecurity  Slides
Cybersecurity Slides
 
End to End Security with MVC and Web API
End to End Security with MVC and Web APIEnd to End Security with MVC and Web API
End to End Security with MVC and Web API
 
Smartphone Platform Security - What can we learn from Symbian?
Smartphone Platform Security - What can we learn from Symbian?Smartphone Platform Security - What can we learn from Symbian?
Smartphone Platform Security - What can we learn from Symbian?
 
Getting to Know the FIDO Specifications - Technical Tutorial
Getting to Know the FIDO Specifications - Technical TutorialGetting to Know the FIDO Specifications - Technical Tutorial
Getting to Know the FIDO Specifications - Technical Tutorial
 

More from Kelley Robinson

Preventing phone verification fraud (SMS pumping)
Preventing phone verification fraud (SMS pumping)Preventing phone verification fraud (SMS pumping)
Preventing phone verification fraud (SMS pumping)
Kelley Robinson
 
Introduction to Public Key Cryptography
Introduction to Public Key CryptographyIntroduction to Public Key Cryptography
Introduction to Public Key Cryptography
Kelley Robinson
 
Introduction to SHAKEN/STIR
Introduction to SHAKEN/STIRIntroduction to SHAKEN/STIR
Introduction to SHAKEN/STIR
Kelley Robinson
 
Intro to SHAKEN/STIR
Intro to SHAKEN/STIRIntro to SHAKEN/STIR
Intro to SHAKEN/STIR
Kelley Robinson
 
PSD2, SCA, WTF?
PSD2, SCA, WTF?PSD2, SCA, WTF?
PSD2, SCA, WTF?
Kelley Robinson
 
Building a Better Scala Community
Building a Better Scala CommunityBuilding a Better Scala Community
Building a Better Scala Community
Kelley Robinson
 
BSides SF - Contact Center Authentication
BSides SF - Contact Center AuthenticationBSides SF - Contact Center Authentication
BSides SF - Contact Center Authentication
Kelley Robinson
 
Communication @ Startups
Communication @ StartupsCommunication @ Startups
Communication @ Startups
Kelley Robinson
 
Contact Center Authentication
Contact Center AuthenticationContact Center Authentication
Contact Center Authentication
Kelley Robinson
 
Authentication Beyond SMS
Authentication Beyond SMSAuthentication Beyond SMS
Authentication Beyond SMS
Kelley Robinson
 
BSides PDX - Threat Modeling Authentication
BSides PDX - Threat Modeling AuthenticationBSides PDX - Threat Modeling Authentication
BSides PDX - Threat Modeling Authentication
Kelley Robinson
 
SIGNAL - Practical Cryptography
SIGNAL - Practical CryptographySIGNAL - Practical Cryptography
SIGNAL - Practical Cryptography
Kelley Robinson
 
2FA Best Practices
2FA Best Practices2FA Best Practices
2FA Best Practices
Kelley Robinson
 
Practical Cryptography
Practical CryptographyPractical Cryptography
Practical Cryptography
Kelley Robinson
 
2FA, WTF!?
2FA, WTF!?2FA, WTF!?
2FA, WTF!?
Kelley Robinson
 
2FA WTF
2FA WTF2FA WTF
Analyzing Pwned Passwords with Spark - OWASP Meetup July 2018
Analyzing Pwned Passwords with Spark - OWASP Meetup July 2018Analyzing Pwned Passwords with Spark - OWASP Meetup July 2018
Analyzing Pwned Passwords with Spark - OWASP Meetup July 2018
Kelley Robinson
 
Analyzing Pwned Passwords with Spark and Scala
Analyzing Pwned Passwords with Spark and ScalaAnalyzing Pwned Passwords with Spark and Scala
Analyzing Pwned Passwords with Spark and Scala
Kelley Robinson
 
Practical Cryptography
Practical CryptographyPractical Cryptography
Practical Cryptography
Kelley Robinson
 
Analyzing Pwned Passwords with Spark and Scala
Analyzing Pwned Passwords with Spark and ScalaAnalyzing Pwned Passwords with Spark and Scala
Analyzing Pwned Passwords with Spark and Scala
Kelley Robinson
 

More from Kelley Robinson (20)

Preventing phone verification fraud (SMS pumping)
Preventing phone verification fraud (SMS pumping)Preventing phone verification fraud (SMS pumping)
Preventing phone verification fraud (SMS pumping)
 
Introduction to Public Key Cryptography
Introduction to Public Key CryptographyIntroduction to Public Key Cryptography
Introduction to Public Key Cryptography
 
Introduction to SHAKEN/STIR
Introduction to SHAKEN/STIRIntroduction to SHAKEN/STIR
Introduction to SHAKEN/STIR
 
Intro to SHAKEN/STIR
Intro to SHAKEN/STIRIntro to SHAKEN/STIR
Intro to SHAKEN/STIR
 
PSD2, SCA, WTF?
PSD2, SCA, WTF?PSD2, SCA, WTF?
PSD2, SCA, WTF?
 
Building a Better Scala Community
Building a Better Scala CommunityBuilding a Better Scala Community
Building a Better Scala Community
 
BSides SF - Contact Center Authentication
BSides SF - Contact Center AuthenticationBSides SF - Contact Center Authentication
BSides SF - Contact Center Authentication
 
Communication @ Startups
Communication @ StartupsCommunication @ Startups
Communication @ Startups
 
Contact Center Authentication
Contact Center AuthenticationContact Center Authentication
Contact Center Authentication
 
Authentication Beyond SMS
Authentication Beyond SMSAuthentication Beyond SMS
Authentication Beyond SMS
 
BSides PDX - Threat Modeling Authentication
BSides PDX - Threat Modeling AuthenticationBSides PDX - Threat Modeling Authentication
BSides PDX - Threat Modeling Authentication
 
SIGNAL - Practical Cryptography
SIGNAL - Practical CryptographySIGNAL - Practical Cryptography
SIGNAL - Practical Cryptography
 
2FA Best Practices
2FA Best Practices2FA Best Practices
2FA Best Practices
 
Practical Cryptography
Practical CryptographyPractical Cryptography
Practical Cryptography
 
2FA, WTF!?
2FA, WTF!?2FA, WTF!?
2FA, WTF!?
 
2FA WTF
2FA WTF2FA WTF
2FA WTF
 
Analyzing Pwned Passwords with Spark - OWASP Meetup July 2018
Analyzing Pwned Passwords with Spark - OWASP Meetup July 2018Analyzing Pwned Passwords with Spark - OWASP Meetup July 2018
Analyzing Pwned Passwords with Spark - OWASP Meetup July 2018
 
Analyzing Pwned Passwords with Spark and Scala
Analyzing Pwned Passwords with Spark and ScalaAnalyzing Pwned Passwords with Spark and Scala
Analyzing Pwned Passwords with Spark and Scala
 
Practical Cryptography
Practical CryptographyPractical Cryptography
Practical Cryptography
 
Analyzing Pwned Passwords with Spark and Scala
Analyzing Pwned Passwords with Spark and ScalaAnalyzing Pwned Passwords with Spark and Scala
Analyzing Pwned Passwords with Spark and Scala
 

Recently uploaded

Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
shadow0702a
 
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
ecqow
 
Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024
Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024
Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024
Sinan KOZAK
 
Generative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of contentGenerative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of content
Hitesh Mohapatra
 
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
171ticu
 
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
insn4465
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
IJECEIAES
 
The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.
sachin chaurasia
 
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
171ticu
 
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student MemberIEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
VICTOR MAESTRE RAMIREZ
 
Null Bangalore | Pentesters Approach to AWS IAM
Null Bangalore | Pentesters Approach to AWS IAMNull Bangalore | Pentesters Approach to AWS IAM
Null Bangalore | Pentesters Approach to AWS IAM
Divyanshu
 
Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...
Prakhyath Rai
 
artificial intelligence and data science contents.pptx
artificial intelligence and data science contents.pptxartificial intelligence and data science contents.pptx
artificial intelligence and data science contents.pptx
GauravCar
 
Mechanical Engineering on AAI Summer Training Report-003.pdf
Mechanical Engineering on AAI Summer Training Report-003.pdfMechanical Engineering on AAI Summer Training Report-003.pdf
Mechanical Engineering on AAI Summer Training Report-003.pdf
21UME003TUSHARDEB
 
132/33KV substation case study Presentation
132/33KV substation case study Presentation132/33KV substation case study Presentation
132/33KV substation case study Presentation
kandramariana6
 
Properties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptxProperties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptx
MDSABBIROJJAMANPAYEL
 
Unit-III-ELECTROCHEMICAL STORAGE DEVICES.ppt
Unit-III-ELECTROCHEMICAL STORAGE DEVICES.pptUnit-III-ELECTROCHEMICAL STORAGE DEVICES.ppt
Unit-III-ELECTROCHEMICAL STORAGE DEVICES.ppt
KrishnaveniKrishnara1
 
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
ydzowc
 
Seminar on Distillation study-mafia.pptx
Seminar on Distillation study-mafia.pptxSeminar on Distillation study-mafia.pptx
Seminar on Distillation study-mafia.pptx
Madan Karki
 
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by AnantLLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
Anant Corporation
 

Recently uploaded (20)

Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
 
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
 
Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024
Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024
Optimizing Gradle Builds - Gradle DPE Tour Berlin 2024
 
Generative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of contentGenerative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of content
 
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
 
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
 
The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.
 
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
 
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student MemberIEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
 
Null Bangalore | Pentesters Approach to AWS IAM
Null Bangalore | Pentesters Approach to AWS IAMNull Bangalore | Pentesters Approach to AWS IAM
Null Bangalore | Pentesters Approach to AWS IAM
 
Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...
 
artificial intelligence and data science contents.pptx
artificial intelligence and data science contents.pptxartificial intelligence and data science contents.pptx
artificial intelligence and data science contents.pptx
 
Mechanical Engineering on AAI Summer Training Report-003.pdf
Mechanical Engineering on AAI Summer Training Report-003.pdfMechanical Engineering on AAI Summer Training Report-003.pdf
Mechanical Engineering on AAI Summer Training Report-003.pdf
 
132/33KV substation case study Presentation
132/33KV substation case study Presentation132/33KV substation case study Presentation
132/33KV substation case study Presentation
 
Properties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptxProperties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptx
 
Unit-III-ELECTROCHEMICAL STORAGE DEVICES.ppt
Unit-III-ELECTROCHEMICAL STORAGE DEVICES.pptUnit-III-ELECTROCHEMICAL STORAGE DEVICES.ppt
Unit-III-ELECTROCHEMICAL STORAGE DEVICES.ppt
 
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
 
Seminar on Distillation study-mafia.pptx
Seminar on Distillation study-mafia.pptxSeminar on Distillation study-mafia.pptx
Seminar on Distillation study-mafia.pptx
 
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by AnantLLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
 

WebAuthn

  • 1. Everything you want to know about WebAuthn Kelley Robinson
  • 2.
  • 3. Everything you want to know about WebAuthn Kelley Robinson
  • 4. © 2020 TWILIO INC. ALL RIGHTS RESERVED. krobinson@twilio.com 👋👩💻🔐 Kelley Robinson @kelleyrobinson
  • 5. TABLE OF CONTENTS 1. What is WebAuthn? 2. How WebAuthn works 3. Advantages 4. Obstacles 5. How to get started with WebAuthn
  • 6. © 2019 TWILIO INC. ALL RIGHTS RESERVED. What is WebAuthn?
  • 7. What is WebAuthn? "Web Authentication" • Browser API for passwordless authentication • Strong authentication using public key cryptography • Specification developed by W3C and FIDO Alliance • Scoped, site specific credentials image source: https:/ /webauthn.guide/
  • 8. Authenticator types WebAuthn Spec Name Authenticator Examples "Platform Authenticator" Built into the computer/phone Windows Hello, fingerprint reader, Face ID "Roaming Authenticator" External security keys Yubikey, Titan Security Key https://www.w3.org/TR/webauthn/#table-authenticatorTypes
  • 9. FIDO Alliance • Develops technical specifications for non-password based authentication • Certifies technology that meets specs
  • 10. Relying party (RP) - business / organization / website CTAP - Client to Authenticator Protocol U2F (=CTAP1) - Universal second factor FIDO2 - WebAuthn + CTAP2 Terminology
  • 11. © 2019 TWILIO INC. ALL RIGHTS RESERVED. HOW WEBAUTHN WORKS
  • 12. Registration User initiates new account registration Server sends data to connect website + user to the credential WebAuthn API prompts user to create a key pair, user chooses authenticator Authenticator generates key pair bound to website + user data, sends public key to the server Server confirms registration, stores public key
  • 13. © 2019 TWILIO INC. ALL RIGHTS RESERVED. REGISTRATION DEMO
  • 14. Registration security • Private key never leaves authenticator • Biometric data never leaves authenticator • Only public key and attestation are sent to server
  • 15. What is attestation? • Information about the authenticator being used • Options: none, indirect, direct, enterprise • Not required by default Enables: • allow-list of approved authenticators • deny-list of known flawed authenticators https:/ /www.w3.org/TR/webauthn/#enum-attestation-convey https:/ /developers.yubico.com/WebAuthn/Concepts/Securing_WebAuthn_with_Attestation.html https:/ /www.chromium.org/security-keys
  • 16. Authentication User initiates login Server initiates challenge Authenticator signs challenge with private key and sends to the server Server verifies signature with the public key Login approved or denied
  • 17. © 2019 TWILIO INC. ALL RIGHTS RESERVED. AUTHENTICATION DEMO
  • 18. © 2019 TWILIO INC. ALL RIGHTS RESERVED. ADVANTAGES
  • 20. Phishing resistant © 2019 TWILIO INC. ALL RIGHTS RESERVED. Scoped credentials protect phishing targets
  • 21. "Databases are no longer targets because public keys are useless without the corresponding private keys." Yubico
  • 22. Push 0.029 -0.204 113 (-0.374, -0.020) U2F <0.003 -0.269 118 (-0.429, -0.093) Codes 0.426 -0.076 110 (-0.260, 0.113) understand their background and feelings about online secu- rity. With the consent of each participant, we recorded the audio of each interview. Two coders listened to the record- ings and coded each interview, discussing each response until reaching agreement. Common themes identified from the recordings are discussed in section 5.2. 4.8 Compensation Participants were compensated a maximum of 25 USD after their participation in the study according to a tiered compen- sation structure based on the total number of tasks completed through the banking interface. 5 Two-week Study Results 5.1 Quantitative Results 5.1.1 Timing Data We measured both the time for the password login and the time Figure 2: Time to authenticate for five 2FA methods https://www.usenix.org/system/files/soups2019-reese.pdf Duo 2019 State of the Auth Report Speedy • U2F has fastest median authentication time • Compared to SMS, U2F saves a user 18.2 minutes annually
  • 23. © 2019 TWILIO INC. ALL RIGHTS RESERVED. OBSTACLES
  • 24. Incomplete browser support 87.39% support https://caniuse.com/?search=webauthn
  • 25. Limited authenticator availability • Roaming authenticators are expensive • Platform authenticators are not ubiquitous
  • 26. Check your browser & device compatibility: twil.io/webauthn
  • 27. © 2019 TWILIO INC. ALL RIGHTS RESERVED. COMPATIBILITY DEMO
  • 29. https://github.com/duo-labs/py_webauthn/blob/master/webauthn/webauthn.py New technology • Limited documentation and sample apps • Nascent library support • Cryptography can be scary
  • 30. N=31 % Google Success 26 83% Correctly identified completion 22 70% Failure 5 16% Facebook Success 10 32% Correctly identified completion 6 19% Failure 21 67% Registered YubiKey without enabling 2FA 12 38% Windows 10 Success 12 38% Set up the Windows Logon Authorization Tool 5 16% Set up YubiKey for Windows Hello 7 22% Failure 19 61% Failed to set up the Windows Logon Authorization Tool 9 29% Failed to set up YubiKey for Windows Hello 5 16% Locked out of the computer 6 19% TABLE I LABORATORY STUDY SUCCESS RATES F k th t l r a t p t n https://isrl.byu.edu/pubs/sp2018.pdf Factor registration Onboarding UX impacts users' success
  • 31. https://www.usenix.org/system/files/soups2019-reese.pdf Figure 3: SUS scores for five 2FA methods. "Faster authentication does not necessarily mean higher usability" Factor usability
  • 33. © 2019 TWILIO INC. ALL RIGHTS RESERVED. HOW TO GET STARTED
  • 36. © 2019 TWILIO INC. ALL RIGHTS RESERVED. BEST PRACTICES
  • 37. Embrace fallback options Prepare for: • Lost/unavailable authenticator • Biometric authenticator not working when a user's finger is wet or wearing a mask https:/ /github.com/settings/two_factor_authentication/configure https:/ /codelabs.developers.google.com/codelabs/webauthn-reauth#5
  • 38. Account recovery • Encourage adding multiple authenticators • Don't force users to fallback to less secure channels, but offer fallback options to TOTP, security codes, or (gasp) even SMS Cloudflare 2FA onboarding
  • 39. © 2019 TWILIO INC. ALL RIGHTS RESERVED. 🦄 WebAuthn is both a secure and usable account security option 👩💻 Network effects will help bolster adoption ✍ Passwords aren't going away overnight ☀ ...but there's reason for hope Takeaways
  • 41. © 2019 TWILIO INC. ALL RIGHTS RESERVED. Resources • https:/ /caniuse.com/?search=webauthn • webauthn.guide • webauthn.io • Guide to FIDO2 and WebAuthn Terminology • What is FIDO2 • Beyond Passwords: Simpler, Stronger Authentication with FIDO2 [Video] • fidoalliance.org/ • WebAuthn Spec • CTAP Spec • https:/ /developers.yubico.com/WebAuthn/ • https:/ /codelabs.developers.google.com/codelabs/ webauthn-reauth#0 • https:/ /blog.cloudflare.com/cloudflare-now- supports-security-keys-with-web-authentication- webauthn/ • https:/ /github.com/OWASP/SSO_Project • https:/ /www.twilio.com/blog/detect-browser- support-webauthn • https:/ /github.com/robinske/webauthn-support- check