Secure Element OS Update Object Preservation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for performing operating system updates in secure elements, such as UICC, face challenges in preserving custom and system objects during updates, leading to data loss and inconsistency, especially when updating the Java Card platform and GlobalPlatform API, which are not adequately addressed by current solutions like GlobalPlatform Amd. H that focus on application updates rather than OS updates.

Innovation Solution

A method that involves saving system objects by acquiring their information content, encoding it into a data serialization format like TLV, and storing it in a reserved non-volatile memory area unaffected by the OS update, and then decoding and restoring it to ensure consistency across different OS versions, allowing for seamless updates of custom and system objects.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If operating system update is performed by storing new binary code in secure element, then system functionality is improved, but custom objects and system objects of applications are lost

Engineering Contradiction:
Improvesystem functionalityVSAvoidcustom objects and system objects
Core Design Contradiction:
Adaptability or versatilityVSLoss of information

Solution Approach 1:

The patent applies preliminary action by saving custom objects and system objects to a reserved area of non-volatile memory before the OS update operation is executed. This ensures that application data is preserved in advance, preventing data loss during the update process while allowing the system to install new binary code and improve functionality.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If application objects are saved in non-volatile memory during OS update, then data preservation is improved, but memory space is consumed

Engineering Contradiction:
Improvedata preservationVSAvoidmemory space
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies local quality by designating a specific reserved area within the non-volatile memory for storing application objects during OS updates. Instead of using entire memory space, only the necessary portion is allocated for data preservation, optimizing memory utilization while ensuring reliable data protection during the update process.

Inventive Principle:
Principle #3Local quality

3Stability of the object's composition

If system objects are encoded into data serialization format, then data consistency across OS versions is improved, but processing complexity increases

Engineering Contradiction:
Improvedata consistencyVSAvoidprocessing complexity
Core Design Contradiction:
Stability of the object's compositionVSDevice complexity

Solution Approach 1:

The patent applies parameter changes by encoding system objects into a data serialization format (such as TLV format) before storing them in the reserved memory area. This encoding transforms the data structure into a version-independent format, ensuring consistency across different OS versions. Although encoding adds processing steps, it guarantees that application data remains stable and compatible through OS updates.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20240281536A1Method for performing an operative system update in a secure element and corresponding secure element and apparatus
Publication Date: 2024.08.22 STMICROELECTRONICS SRL
  • US20240281536A1 patent drawing
  • US20240281536A1 patent drawing
  • US20240281536A1 patent drawing

AI summary

A method includes preserving custom objects and system objects of an application during an operative system update operation in a secure element. The custom objects and system objects are saved. The application is uninstalled and a new instance of the application is created. The saved custom objects and the saved system objects are recovered, and the new instance of the application is updated with the recovered custom objects and system objects. Saving a system object includes acquiring information content of fields of the system object, encoding and storing the information content into a data serialization format in a reserved area of a non-volatile memory of the secure element. Recovering the saved system object includes reading and decoding the encoded information content from the reserved area of the non-volatile memory of the secure element. The system object is recovered using the obtained information content of the fields.