Security Manager for Nested Function Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing microprocessor-based data cards, such as bank cards, face security vulnerabilities due to fraudulent interference with the execution of nested functions, particularly in authentication processes, where fraudsters can disrupt the decrementing counter function or cause unexpected microprocessor behavior, allowing unauthorized access to sensitive information.

Innovation Solution

A method is implemented where a security manager program maintains a list of functions in progress, signaling start and end of execution, and checks for proper function sequencing, triggering protective actions if anomalies are detected, using a table with function identifiers and associated security levels to manage protection actions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a security manager program is implemented to monitor and check function execution sequencing, then security against fraudulent interference is improved, but device complexity and computational resource usage increase

Engineering Contradiction:
ImprovesecurityVSAvoidcomplexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

A security manager program is introduced as an intermediary component that monitors function execution sequencing. This mediator maintains a list of functions in progress and verifies that function calls and returns follow the correct nested sequence, preventing fraudulent interference without requiring fundamental changes to the microprocessor architecture

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The security manager pre-establishes a list of functions in progress before execution anomalies can occur. By maintaining this list and checking sequencing in advance, the system prevents fraudulent operations rather than detecting them after damage is done, reducing the need for complex post-hoc analysis

Inventive Principle:
Principle #10Preliminary action

2Reliability

If a security manager program is implemented to monitor and check function execution sequencing, then security against fraudulent interference is improved, but processing speed and execution efficiency decrease

Engineering Contradiction:
ImprovesecurityVSAvoidspeed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The security manager performs only essential partial checks - maintaining a list of functions in progress and verifying basic call/return sequencing. By implementing minimal necessary monitoring rather than comprehensive analysis of all execution parameters, the system achieves adequate security with limited impact on processing speed

Inventive Principle:
Principle #16Partial or excessive action

3Ease of operation

If the counter decrement function is not protected, then ease of operation is maintained, but security vulnerabilities increase allowing unauthorized access

Engineering Contradiction:
Improveease of operationVSAvoidsecurity
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The security manager automatically monitors and protects the counter decrement function without requiring user intervention. The system self-verify that function calls and returns are properly sequenced, preventing fraudulent attempts to bypass the counter while maintaining transparent operation for legitimate users

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP2252958B1Method of securing execution of a program
Publication Date: 2018.05.02 IDEMIA IDENTITY & SECURITY FRANCE SAS
  • EP2252958B1 patent drawingFigure 1~3

AI summary

Method of securing execution of a main program implementing nested functions, comprising the steps of: - executing a security manager program devised so as to update a list of functions in progress, - signalling a beginning of execution of each function to the security manager program and updating the list of functions in progress, - signalling an end of execution of each function to the security manager program, - verifying after each signalling of end of execution of a function that this function is indeed the last one to have begun and in the converse case performing a protection action.