Multifactor Authentication Service Using Segmented SMS Codes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current SMS-based multifactor authentication methods are vulnerable to hijacking and eavesdropping, particularly in public areas, as they rely on a single code that can be intercepted or read by hackers or nearby systems.

Innovation Solution

The system generates a set of codes, each with a unique identifier, and sends them via SMS to the user, who then selects and enters the required codes based on instructions from the application and server, increasing the difficulty for hackers to breach the authentication process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a single code is sent via SMS for authentication, then the authentication process is simple and fast, but the system becomes vulnerable to hijacking and eavesdropping attacks

Engineering Contradiction:
Improveauthentication securityVSAvoidauthentication mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The authentication code is segmented into multiple individual codes (e.g., code1, code2, code3, code4) instead of sending a single code. Each code is associated with a unique identifier and can be independently validated. This segmentation ensures that even if one code is intercepted, the attacker cannot complete authentication without all required codes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system adds a new dimension to authentication by introducing code identifiers (ID1, ID2, ID3, ID4) that correspond to specific positions in the sequence of codes. The server requests specific codes by their identifiers rather than requiring all codes or a single code, creating a multi-dimensional verification process that enhances security.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Reliability

If multiple codes are sent via SMS with unique identifiers, then the security against interception is improved, but the authentication process becomes more complex

Engineering Contradiction:
Improveresistance to eavesdroppingVSAvoiduser input complexity
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The system performs preliminary action by pre-generating and sending multiple coded messages with unique identifiers to the user's device before authentication is needed. The user device stores these codes and their corresponding identifiers, so when authentication is required, the user only needs to retrieve and enter the specific code corresponding to the identifier requested by the server, rather than managing complex authentication logic.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If the server requests specific codes by identifier, then the authentication becomes more robust against attacks, but the communication protocol becomes more complex

Engineering Contradiction:
Improveauthentication robustnessVSAvoidcommunication protocol complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The user's device acts as an intermediary that manages the complexity of matching code identifiers with corresponding codes. The device stores the mapping between identifiers and codes, retrieves the appropriate code based on the server's request for a specific identifier, and transmits only that code to the server. This intermediary role simplifies the overall system architecture while maintaining robust authentication.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11487863B2Multifactor authentication service
Publication Date: 2022.11.01 CITRIX SYSTEMS INC
  • US11487863B2 patent drawing
  • US11487863B2 patent drawing
  • US11487863B2 patent drawing

AI summary

A system and method for providing multifactor authentication. A disclosed method includes receiving a request at a server to launch a new session for an application on a client device, generating a plurality of codes, each of the plurality of codes associated with a respective identifier, and forwarding the plurality of codes via a short messaging service (SMS) message to a user associated with the client device. The method further includes sending the respective identifier associated with a given code of the plurality of codes to the application and receiving a submitted code entered into the application from the client device. Once received, the method compares the submitted code with the given code associated with the respective identifier and authenticates the user in response to the submitted code matching the given code.