Bootloader Attempt Counter for Side-Channel Attack Mitigation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Side-channel attacks, which monitor power consumption to deduce cryptographic secret keys, pose a risk to encrypted software updates, potentially allowing malicious users to install unauthorized software images or access confidential information.

Innovation Solution

A bootloader system that verifies the integrity and version of incoming software updates, tracks installation attempts, and limits repeated attempts to prevent unauthorized access, ensuring that only authorized updates are installed by monitoring and controlling the decryption of encrypted payloads.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the bootloader allows multiple software image installation attempts, then the system maintains flexibility for legitimate updates, but the secret key becomes vulnerable to side-channel attacks

Engineering Contradiction:
Improvesoftware update flexibilityVSAvoidsecret key security
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent applies preliminary anti-action by implementing an attempts counter that proactively limits the number of software image installation attempts before a secret key compromise can occur through side-channel attacks. The counter prevents malicious actors from performing repeated decryption operations that would leak key information, while still allowing legitimate updates within the threshold.

Inventive Principle:
Principle #9Preliminary anti-action

Solution Approach 2:

The patent changes the parameter of installation attempt frequency by introducing a threshold-based control mechanism. When the number of attempts exceeds the threshold, the system transitions from allowing installations to blocking them, thereby changing the system state to protect the secret key from side-channel analysis.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If the bootloader monitors and limits installation attempts, then the secret key is protected from side-channel attacks, but legitimate software updates may be blocked

Engineering Contradiction:
Improvesecret key securityVSAvoidsoftware update process
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent implements feedback by continuously monitoring the attempts counter and comparing it against the threshold. The system provides feedback by either allowing or blocking software image installations based on the current attempt count, enabling legitimate updates when the counter is below the threshold while preventing attacks when it exceeds the threshold.

Inventive Principle:
Principle #23Feedback

3Productivity

If the bootloader allows repeated decryption operations, then software updates can be installed, but power consumption patterns reveal secret key information

Engineering Contradiction:
Improvesoftware update speedVSAvoidsecret key exposure
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent applies preliminary action by initializing and monitoring the attempts counter before any decryption operations occur. The system proactively tracks the number of decryption attempts and prevents excessive operations that would generate exploitable power consumption patterns, thereby protecting the secret key before information leakage can occur.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10769280B2Side channel attack countermeasures for secure bootloading
Publication Date: 2020.09.08 SILICON LABORATORIES INC
  • US10769280B2 patent drawing
  • US10769280B2 patent drawing
  • US10769280B2 patent drawing

AI summary

A system and method for minimizing the likelihood that the secret key used by a bootloader is compromised is disclosed. A bootloader is installed on the device. The bootloader is a software program that performs many functions. These functions may include checking the checksum of the incoming software image for integrity, decrypting the incoming software image using a secret key, deleting data in the FLASH memory, installing the new software image in the FLASH memory and other functions. The bootloader utilizes various techniques to track the versions of the software image being installed. The method counts the number of incomplete attempts that are made when trying to update the software image. By monitoring these parameters, the bootloader can determine when a malicious actor is attempting a side channel attack. In response, the bootloader may not allow a new software image to be loaded or the secret key to be accessed.