Security Element Program Authentication via Segment Reordering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing vehicle processor authentication methods face challenges in quickly verifying program authenticity without allowing unauthorized access to program instructions and ensuring rapid processor startup, as they require secure communication and quick integrity checks.

Innovation Solution

An apparatus and method that uses a security element coupled to the processor to reorder and hash program segments, comparing the hashes to authenticate the program, and if unauthorized, inhibits execution or alerts the operator, utilizing a transfer order table and exclusive OR operations for secure verification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a security element is used to verify program authenticity, then program integrity is improved, but communication security and startup speed are worsened

Engineering Contradiction:
Improveprogram integrityVSAvoidcommunication security
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The program is divided into multiple segments, and only specific segments are selected for hashing and verification rather than the entire program. This segmentation reduces the computational burden and communication overhead while maintaining security, as the hash is computed on a subset of program segments rather than all segments.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of performing a complete hash verification of the entire program, the system performs a partial verification by selecting and hashing only certain program segments. This partial action approach provides sufficient security for startup verification while significantly reducing the time and computational resources required compared to full program verification.

Inventive Principle:
Principle #16Partial or excessive action

2Reliability

If a security element is used to verify program authenticity, then program integrity is improved, but processor startup time is worsened

Engineering Contradiction:
Improveprogram integrityVSAvoidprocessor startup time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The program verification is segmented into selective hashing of specific program segments rather than processing the entire program. This allows the critical authenticity check to be performed quickly on essential segments during startup, reducing the time penalty while maintaining security.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs a partial verification by hashing only selected program segments rather than the complete program. This partial action provides adequate security for startup purposes while dramatically reducing the verification time compared to full program hashing, thus resolving the contradiction between security and startup speed.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If program segments are hashed and verified, then authentication speed is improved, but security against reading program instructions is worsened

Engineering Contradiction:
Improveauthentication speedVSAvoidprogram instruction exposure
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The invention extracts only the essential verification elements (specific program segments) needed for authentication while leaving the rest of the program protected. By selecting and hashing only critical segments rather than exposing or processing the entire program, the system achieves fast authentication without compromising the security of the full program instructions.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The hash function serves as an intermediary that transforms selected program segments into a verification value without exposing the original program instructions. This intermediary process allows authentication to be performed on the hash values rather than the actual program code, maintaining security while enabling rapid verification.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP3612968B1Method and apparatus to quickly authenticate program using a security element
Publication Date: 2023.08.16 CONTINENTAL AUTOMOTIVE SYSTEMS INC
  • EP3612968B1 patent drawingFigure 1
  • EP3612968B1 patent drawingFigure 2
  • EP3612968B1 patent drawingFigure 3

AI summary

The authenticity of a program executed by a processor is determined by a security element that computes a hash code over re-ordered segments of a known-to-be-authentic copy of a program executed by the processor. The authenticity of the same segments are re-ordered by and provided by the processor to the security element, which computes a second hash code for the re-ordered segments received from the processor. If the hash values for the segments are identical, the program segments are identical. If the hash values for any segment are different, the two programs are different. When a processor's program is determined to be different from a known good copy, the processor can be stopped or an alarm signal generated.