Smart Card Secure Element Firmware Update Method

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Smart cards lack a user interface for entering credentials securely, leading to increased risk of interception by malicious software, and existing methods are difficult to program or reprogram once assembled, especially for updating firmware.

Innovation Solution

A method involving a secure element and microcontroller unit connected within the smart card, where the secure element receives, validates, and forwards a firmware image to the microcontroller for installation, ensuring secure and post-assembly firmware updates through a validated and encrypted process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a standard microcontroller unit is programmed with firmware before integration into the smart card, then the smart card achieves cryptographic capabilities and basic functionality, but the microcontroller unit cannot be accessed or reprogrammed after assembly

Engineering Contradiction:
ImprovesecurityVSAvoidreprogrammability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The system is divided into two distinct processing units: a secure element that handles security-critical operations and firmware validation, and a microcontroller unit that executes firmware. This segmentation allows the secure element to maintain security while the microcontroller can be reprogrammed through secure updates validated by the secure element.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The secure element acts as an intermediary between external programming devices and the microcontroller unit. It validates firmware images and controls the programming interface, enabling secure reprogramming without exposing the microcontroller directly to external access after assembly.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of manufacture

If special debug interfaces are provided for programming the microcontroller unit, then programming becomes easier, but these interfaces cannot be accessed after the microcontroller unit is assembled on the smart card

Engineering Contradiction:
Improveprogramming easeVSAvoidpost-assembly access
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The secure element serves multiple functions: it acts as a security coprocessor for cryptographic operations, a firmware validator, and a controlled interface for microcontroller programming. This multi-functionality eliminates the need for separate debug interfaces while enabling secure post-assembly programming through the same secure channel used for cryptographic operations.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Ease of manufacture

If firmware updates are implemented in the field with minimal modifications to existing components, then patch installation becomes simpler and requires less effort, but security validation and control mechanisms may be compromised

Engineering Contradiction:
Improvepatch installation simplicityVSAvoidsecurity validation
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The secure element is pre-configured with validation logic and cryptographic credentials during manufacturing. This preliminary setup enables field firmware updates to be validated securely without requiring additional security infrastructure or complex validation procedures, achieving both simplicity and security.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The secure element autonomously validates firmware images using pre-stored cryptographic keys and validation algorithms. This self-service capability eliminates the need for external security validation infrastructure, allowing simple field updates while maintaining security through the secure element's inherent validation capabilities.

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP2930641B1Method of Programming a Smart Card, Computer Program Product and Programmable Smart Card
Publication Date: 2019.04.03 NXP BV
  • EP2930641B1 patent drawingFigure 1
  • EP2930641B1 patent drawingFigure 2~3

AI summary

There is provided a method of programming a smart card, said smart card comprising a secure element and a microcontroller unit which is connected to said secure element, the method comprising: (a) the secure element receives a firmware image from a host device; (b) the secure element validates the firmware image; (c) the secure element forwards the firmware image to the microcontroller unit if the firmware image is valid; (d) the microcontroller unit receives the firmware image from the secure element; (e) the microcontroller unit extracts firmware from the firmware image; and (f) the microcontroller unit installs the firmware in a memory unit of said smart card. Furthermore, a corresponding computer program product and a corresponding programmable smart card are disclosed.