Safeguarding user identity through reliable authentication with HUAWEI FIDO

Ibrahim R. Serpici
Huawei Developers
Published in
3 min readJun 26, 2020

Opportunity

We are living in a very-connected and fast-paced world where everything needs to be fast, efficient, and convenient. Almost everyone uses apps to establish an online presence through different social media platforms or to take advantage of the convenience of availing online products and services. As more people go online and use multiple apps, securing user accounts and verifying user identities are becoming an utmost importance, especially in situations like account sign-in and online transactions. With the limitations and vulnerabilities of using passwords for authenticating user identities, there is a need for a secure user authentication that provides a positive user experience.

What is HUAWEI FIDO?

HUAWEI Fast Identity Online (FIDO) enables developers to provide their apps with local biometric authentication capability and online identity verification capability to complement password security. HUAWEI FIDO provides online identity verification capability via FIDO2 Client, which is based on the World Wide Web Consortium’s Web Authentication (WebAuthn) specification.

FIDO2 Client supports both roaming and platform authenticators to enable checking user validity during account sign-in and payment. FIDO2 Client enables online identity verification to help HUAWEI FIDO augment your app’s password security and optimize your app’s usage convenience. The smooth app integration of FIDO2 Client will help developers in implementing HUAWEI FIDO in their apps.

How to integrate FIDO2 Client?

The integration of the FIDO2 Client to your app involves 2 processes. One is a registration process and the other is an authentication process. The following procedures will provide a high-level guide in executing the registration and authentication processes.

Kindly remember that the listed processes must be performed before performing the integration of the FIDO2 Client:

1. Configuring App Information in AppGallery Connect

2. Integrating the HMS SDK

3. Configuring Obfuscation Scrips

To learn more information on the listed processes, go to https://developer.huawei.com/consumer/en/doc/development/HMS-Guides/FIDO2_AccessPreparations#h1-1586256714990

To execute the registration process:

  1. Acquire a challenge value and related policy from the FIDO server.

2. Initiate the Fido2 registration request.

3. Initiate the registration by calling Fido2Client.getRegistrationIntent() to obtain a Fido2Intent instance and start the FIDO client registration process.

The registration starts by calling Fido2Intent.launchFido2Activity() in the callback using Fido2Client.REGISTRATION_REQUEST as requestCode.

4. Receive the registration result by calling Fido2Client.getFido2RegistrationResponse() in the callback Activity.onActivityResult()

5. Send the registration result to the FIDO Server for verification.

To execute the authentication process:

  1. Acquire a challenge value and related policy from the FIDO server.

2. Initiate the Fido2 Authentication request.

3. Initiate the authentication by calling Fido2Client.getAuthenticationIntent() to obtain the Fido2Intent instance and start the FIDO Client authentication process.

The authentication starts by calling Fido2Intent.launchFido2Activity() in the callback using Fido2Client.AUTHENTICATION_REQUEST as requestCode.

4. Receive the authentication response by calling Fido2Client.getFido2AuthenticationResponse() in the callback Activity.onActivityResult().

5. Send the authentication result to the FIDO server for verification.

The Benefits

To the developers

Provides developers with a high-level guide on integrating the FIDO2 Client so that they could easily implement HUAWEI FIDO to increase the security of their apps.

Learn More

To know more information on how to maximize the features and advantages of HUAWEI FIDO including app development processes, pre-release check processes, and app release processes, go to

--

--