How KAYAK reduced sign in time by 50% and improved security with passkeys

This case study explains KAYAK's implementation on Android with Credential Manager API and RxJava.

Kateryna Semenova
11 min readadvanced
--
View Original

Overview

KAYAK successfully integrated passkeys into their Android and web applications, achieving a 50% reduction in sign-in time and enhancing security. This article details their implementation process using the Credential Manager API and RxJava, providing insights into user experience improvements and technical considerations.

What You'll Learn

1

How to integrate passkeys into your Android application using the Credential Manager API

2

Why using passkeys can improve user experience and security in authentication processes

3

When to transition from traditional password-based authentication to passkeys

Prerequisites & Requirements

  • Understanding of authentication mechanisms and user experience design
  • Familiarity with Android development and the Credential Manager API
  • Experience with Kotlin and RxJava for Android development

Key Questions Answered

How did KAYAK reduce sign-in time by 50%?
KAYAK reduced sign-in time by integrating passkeys, which allow users to authenticate using their device's screen lock instead of traditional passwords. This streamlined the process, making it twice as fast as using email links, significantly enhancing user experience.
What are the security benefits of using passkeys over passwords?
Passkeys eliminate the risks associated with passwords, such as being weak, reused, or phished. They are unique tokens stored on the user's device, making them more secure and reducing exposure to password-based attacks.
What challenges did KAYAK face when implementing passkeys?
KAYAK faced challenges such as user friction from previous authentication methods and the need to ensure a seamless transition to passkeys. They also had to consider user experience factors like the ability to manage passkeys effectively.
What is the role of the Credential Manager API in KAYAK's implementation?
The Credential Manager API was used to unify passkey support and traditional sign-in methods in KAYAK's Android app, allowing for a streamlined user interface and improved authentication processes.

Key Statistics & Figures

Reduction in sign-in time
50%
This statistic reflects the improvement in user experience after integrating passkeys.
Decrease in support tickets related to forgotten passwords
Exact number not specified
This indicates an improvement in user satisfaction and a reduction in common authentication issues.

Technologies & Tools

Backend
Credential Manager API
Used for integrating passkeys and managing authentication methods in KAYAK's Android app.
Backend
Rxjava
Initially used for integrating with the Credential Manager API to handle asynchronous operations.
Backend
Webauthn4j
An open-source Java library used by KAYAK to add passkey capabilities to their authentication backend.

Key Actionable Insights

1
Integrate passkeys into your authentication flow to enhance user experience and security.
By adopting passkeys, you can simplify the sign-in process for users, reducing the time and effort required to authenticate, which can lead to higher user satisfaction and retention.
2
Utilize the Credential Manager API to manage authentication methods effectively.
This API allows you to streamline the user interface for authentication, making it easier to implement multiple sign-in options, including passkeys and Google sign-in.
3
Consider user experience when implementing new authentication methods.
Ensure that users can easily manage their passkeys, including options to delete or create new ones, to avoid confusion and enhance usability.

Common Pitfalls

1
Failing to manage user expectations during the transition to passkeys.
Users may be accustomed to traditional passwords, so it's essential to provide clear guidance and support during the transition to ensure a smooth adoption of passkeys.

Related Concepts

User Authentication
Passwordless Authentication
User Experience Design
Mobile App Security