Software Authentication Restart Detection for Replay Attack Prevention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for securing digital transactions on mobile devices without hardware security elements are vulnerable to attacks where an attacker can replay a frozen memory image to guess a PIN, as software-implemented PIN error counters are ineffective in such scenarios.

Innovation Solution

Implementing a dual authentication mechanism where a first form of authentication (e.g., PIN entry) is required for normal operations and a stronger second form (e.g., authentication with a cloud server or hardware token) is triggered upon detecting a restart, which is interpreted as a potential attack, thereby preventing further PIN queries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a software-implemented PIN error counter is used to block access after incorrect PIN entries, then PIN security is improved, but the system becomes vulnerable to memory image replay attacks where the error counter is reset

Engineering Contradiction:
ImprovePIN securityVSAvoidmemory image replay attack vulnerability
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The system performs preliminary authentication before allowing the software application to run. A first authentication form (e.g., PIN entry) is required before the application can be started. Additionally, a second authentication form is performed periodically or upon specific events during runtime. This preliminary and ongoing authentication approach prevents attackers from simply replaying memory images, as the authentication state must be maintained and verified continuously rather than being static in the memory image.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements continuous feedback mechanisms by periodically performing authentication during runtime and monitoring specific events. The authentication state is actively maintained and verified through feedback loops, where the system checks authentication status and re-authenticates when necessary. This feedback mechanism ensures that even if a memory image is replayed, the authentication state cannot be simply copied over, as the system continuously verifies and updates the authentication status.

Inventive Principle:
Principle #23Feedback

2Object-affected harmful factors

If continuous authentication is performed during runtime, then security against replay attacks is improved, but system complexity and authentication overhead increase

Engineering Contradiction:
Improvereplay attack preventionVSAvoidauthentication mechanism complexity
Core Design Contradiction:
Object-affected harmful factorsVSDevice complexity

Solution Approach 1:

Instead of continuous authentication, the system performs authentication periodically at intervals during runtime. This periodic authentication maintains security by regularly verifying the authentication state without requiring constant verification. The periodic nature reduces the authentication overhead and system complexity compared to continuous authentication, while still effectively preventing replay attacks by ensuring the authentication state is periodically validated and updated.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system dynamically adjusts authentication requirements based on runtime conditions and events. Rather than a static authentication mechanism, the system can trigger additional authentication forms based on specific events (such as attempting to access sensitive functions or detecting suspicious activity). This dynamic approach optimizes the balance between security and complexity by applying authentication only when necessary, reducing overall system complexity while maintaining strong security against replay attacks.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP3243154B1Method for secure operation of a computer unit, software application and computer unit
Publication Date: 2021.12.15 GIESECKE & DEVRIENT EPAYMENTS GMBH
  • EP3243154B1 patent drawingFigure 1

AI summary

A method for operating a computer unit (20) having a processor (24) on which a software application (32) can run is provided. In this case, the method comprises the following steps: when the software application (32) is called or when a transaction is performed with the software application on the computer unit (20), the step of checking whether the computer unit (20) has been restarted since the software application (32) was last called; performance of a first form of authentication for starting the software application (32) or for performing the transaction with the software application (32) if the computer unit (20) has not been restarted since the software application (32) was last called; and performance of a second form of authentication for starting the software application (32) or for performing the transaction with the software application (32) if the computer unit (20) has been restarted since the software application (32) was last called. In addition, an appropriately designed software application (32) and an appropriately designed computer unit (20) are provided.