2 Factor Authentication
Today we are introducing an essential improvement in user account security. OnePass will now embrace the latest authentication security technique known as Two Factor Authentication (2FA).
As a Chief Software Architect leading Research & Development (R&D) team, choosing between security, functionality, and convenience is not an easy task. In this blog post, I will share some of the decision factors made by the R&D team to ensure maximize account security while minimizing inconveniences.
What is Two Factor Authentication?
Two Factor Authentication (2FA) is a technique to use more than one method to confirm the user’s identity. In other words, the access to the user account will not be granted on an unknown machine without additional confirmation. If you wish to dive deep into 2FA technical details, check out the Wikipedia topic on Multifactor Authentication.
Different types of 2FA that we’ve explored
By default, the primary authentication method will be Username and Password. The challenge is deciding what’s the secondary method of authentication to ensure the user that is attempting to login is the real account owner. We’ve explored different types of secondary authentication technique and listed out the pros and cons of it during our R&D phase.
Option #1: Security Question
A security question is a pair of questions and answers. The user needs to provide the correct answer to the question in order to validate that the user has rightful access.
Pros | Cons |
---|---|
|
|
Option #2: Text Messages
To validate the user has rightful access, upon login, the system can send a text message to the user’s registered mobile phone number with a dynamically generated verification code that expires. The user then enters the number to complete the log in process.
Pros | Cons |
---|---|
|
|
Option #3: Time-Based One-Time Password
Time-Based One-Time Password is a technique where a code-generating app generates a new password every so often (i.e., 30 seconds) and uses the secret key provided by the server. The code that’s produced can be validated by the server to ensure the user has rightful access to the account.
Pros | Cons |
---|---|
|
|
Option #4: U2F Keys
Universal 2nd Factor (U2F) is a device that can connect physically with the computer to authenticate the user.
Pros | Cons |
---|---|
|
|
Option #5: E-mail
The concept is the same as Text Messaging. Upon login, the server will send an e-mail with dynamically generated authentication code to the email address that’s registered with the user’s account. Once the authentication code is entered, the user can be considered as a rightful user of the account.
Pros | Cons |
---|---|
|
|
Why will OnePass choose to use 2FA with E-mail?
After factor in convenience, security, and functionality, we’ve decided to go with the 2FA with E-mail. The reasoning is simple.
We do not want to have the user use an additional physical device to get authenticated. Although it is secure, it is too troublesome (Option #4 is eliminated)
We do not want the user to get locked out of the account because 3rd party devices are lost or stolen (Option #3 is eliminated)
We want to provide a higher level of security where the authentication answer cannot be found anywhere (Option #1 is eliminated)
We want to make sure user can be authenticated using any devices that are available (Option #2 is eliminated)
With reasons provided above, the R&D team believes 2FA with E-mail is the most optimal decision at this point of technology.
Conclusion
Kuusoft R&D team choose 2FA with E-mail as the authentication method for unknown machines. To ensure ease of use, OnePass will intelligently detect if the user’s device had already authenticated and whether or not the integrity of the machine is compromised. If there are no red flags, OnePass will only require the user to provide the primary method of authentication to access the account.