IoT Software Authenticity via Server-Side Cryptographic Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In IoT devices, the lack of secure boot functionality due to computational and cost constraints makes it difficult to verify the authenticity of software, leading to vulnerabilities from fraudulent software installations, which can result in data theft and security attacks.

Innovation Solution

A system where a first device calculates execution-time specific values for installed software and compares them with installation-time specific values stored on a second device, allowing the second device to determine the authenticity of the software without requiring advanced security functions like secure boot, using lighter computation methods such as common key cryptography.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If secure boot function is incorporated to verify software authenticity, then security against fraudulent software is improved, but device cost and computational complexity increase

Engineering Contradiction:
Improvesoftware authenticity verificationVSAvoidsecure boot system
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a server as an intermediary that performs the complex cryptographic verification operations. The terminal device only needs to communicate with the server, which handles the computationally intensive tasks of generating and verifying digital signatures. This allows security verification without requiring the terminal device to have complex secure boot functionality built in.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the traditional hardware-based secure boot mechanism with a software-based verification system using digital signatures and hash functions. Instead of relying on hardware security modules and complex boot verification circuits, the system uses cryptographic algorithms that can be implemented in software, reducing hardware complexity while maintaining security.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Reliability

If public key cryptography is used for secure boot verification, then software validity is confirmed, but arithmetic processing time increases

Engineering Contradiction:
Improvesoftware validity confirmationVSAvoidarithmetic processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs the computationally intensive public key cryptography operations in advance during the software distribution phase. The server generates digital signatures and verification data before the software is installed on the terminal device. When the software is executed, the verification process is much faster because it only needs to verify pre-computed cryptographic data rather than performing full key pair operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent divides the verification process into two stages: a complex pre-processing stage performed by the server during software distribution, and a simple verification stage performed by the terminal device during execution. This segmentation allows the heavy computational burden to be placed where resources are abundant (the server) while keeping the terminal device operations lightweight and fast.

Inventive Principle:
Principle #1Segmentation

3Reliability

If dedicated encryption arithmetic circuit is incorporated to enable secure boot, then verification capability is improved, but device size and power consumption increase

Engineering Contradiction:
Improvesecure boot functionalityVSAvoiddevice size
Core Design Contradiction:
ReliabilityVSWeight of moving object

Solution Approach 1:

The patent replaces hardware-based encryption arithmetic circuits with software-based cryptographic implementations. Instead of incorporating dedicated hardware security modules, encryption accelerators, or trusted platform modules that会增加 device size and power consumption, the system uses general-purpose processors running cryptographic software, which can be implemented without additional hardware components.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent uses digital copies of verification data (hash values, digital signatures) that can be stored and transmitted without requiring physical security hardware. The verification process operates on copied data representations rather than requiring access to physical security modules, enabling verification functionality without additional hardware weight or size.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10621334B2Electronic device and system
Publication Date: 2020.04.14 RENESAS ELECTRONICS CORP
  • US10621334B2 patent drawing
  • US10621334B2 patent drawing
  • US10621334B2 patent drawing

AI summary

In a system including a terminal device where a plurality of apps are installed and can be executed and a management device capable of communicating with the terminal device; even if the terminal device does not have an advanced security function such as a secure boot, the validity of apps is determined in conjunction with the reliable management device. The management device stores specific values uniquely calculated respectively from a plurality of apps installed on the terminal device, as a plurality of installation-time specific values. The system causes the terminal device to calculate a specific value uniquely calculated from one app, as an execution-time specific value, and determines that the app is authentic if the calculated execution-time specific value matches one of the installation-time specific values stored in the management device.