Applet Segmentation for Payment Device Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing payment device update methods require reloading all code and data, leading to increased processing time, network bandwidth usage, and power consumption, as well as the need for re-personalization, which is inconvenient and costly.

Innovation Solution

Implementing a system with a static applet and an updatable applet, where updates only modify the updatable applet, and a function map is used to associate updated functions with their memory locations, allowing the static applet to remain unaltered and eliminating the need for re-personalization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all code and data on the storage element is deleted and re-loaded for updates, then the entire system can be updated, but processing time, network bandwidth, and power consumption increase significantly

Engineering Contradiction:
Improvesystem update completenessVSAvoidupdate processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The application code is divided into two distinct segments: a static applet stored in read-only memory that cannot be modified, and an updatable applet stored in reprogrammable memory that can be updated independently. This segmentation allows only the necessary updatable portion to be modified during updates, while the static portion remains intact, thereby reducing processing time and resource consumption while maintaining system update completeness.

Inventive Principle:
Principle #1Segmentation

2Reliability

If all code and data on the storage element is deleted and re-loaded for updates, then the entire system can be updated, but network bandwidth usage increases

Engineering Contradiction:
Improvesystem update completenessVSAvoidnetwork bandwidth usage
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

By segmenting the application into static and updatable components, only the updatable applet needs to be transmitted over the network during updates. This dramatically reduces network bandwidth consumption compared to transmitting the entire application code, while still achieving complete updates of the necessary functional portions.

Inventive Principle:
Principle #1Segmentation

3Reliability

If all code and data on the storage element is deleted and re-loaded for updates, then the entire system can be updated, but power consumption increases

Engineering Contradiction:
Improvesystem update completenessVSAvoidupdate power consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The segmentation of application code into static and updatable applets reduces the total amount of data that needs to be processed, transmitted, and written to storage during updates. This directly reduces power consumption across multiple subsystems including network communication, processor operations, and memory write operations, while maintaining the ability to update all necessary functional components.

Inventive Principle:
Principle #1Segmentation

4Adaptability or versatility

If the static applet is modified during updates, then all functionality can be updated, but re-personalization is required which is costly and inconvenient

Engineering Contradiction:
Improvecode update flexibilityVSAvoidre-personalization cost and complexity
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

By placing personalization data exclusively in the static applet stored in read-only memory, the invention ensures that personalization is performed only once during initial device provisioning. The updatable applet in reprogrammable memory can be modified without affecting personalization data, eliminating the need for costly and inconvenient re-personalization processes while maintaining full code update flexibility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention extracts personalization data from the updatable portion of the code and places it exclusively in the static applet. This extraction ensures that personalization is decoupled from code updates, allowing the updatable applet to be modified without triggering re-personalization requirements, thereby reducing complexity and cost.

Inventive Principle:
Principle #2Taking out (Extraction)

5Reliability

If the entire storage element is updated, then all code can be refreshed, but the deployment size and time increase

Engineering Contradiction:
Improvecode refresh completenessVSAvoiddeployment efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The segmentation of application code into static and updatable applets enables incremental updates where only the necessary functional portions are deployed. This significantly reduces deployment size and time compared to updating the entire storage element, while maintaining the ability to refresh all code that requires updates through coordinated updates of both applet portions.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10776101B2Systems and methods for updatable applets
Publication Date: 2020.09.15 VISA INTERNATIONAL SERVICE ASSOCIATION
  • US10776101B2 patent drawing
  • US10776101B2 patent drawing
  • US10776101B2 patent drawing

AI summary

Embodiments of the invention relate to a technique for updating a device comprising a first and second applets implementing application code. The technique may include determining that the application code needs to be updated, generating a verification value, and sending the verification value and updated code for a function in the first applet. The updated code for the function can be stored in the second applet instead of the first applet, and the function maps of the applets can be updated to reflect the address of the updated function. The updated code can then be executed using the updated function maps to perform a process.