ANN Partition Integrity Verification Using Cryptographic Codes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In autonomous driving systems, there is a concern for overall system safety due to potential errors and security breaches that can affect the integrity of artificial neural networks (ANNs), particularly in the handling of synaptic weight and bias information, which can lead to unsafe operations if not verified.

Innovation Solution

The implementation of cryptography-based methods for ANN integrity verification, where cryptographic codes are generated and compared to ensure the accuracy of synaptic weights and biases before executing critical functions, issuing safety warnings in case of integrity failures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If cryptography-based integrity verification is implemented for ANN synaptic weights and biases, then system safety and data integrity are improved, but device complexity and computational overhead increase

Engineering Contradiction:
Improvesystem safetyVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Cryptographic verification codes (hashes) are pre-computed and stored alongside the ANN synaptic weights and biases during the model training or deployment phase. This preliminary action allows the integrity of the neural network parameters to be verified without requiring complex real-time cryptographic operations during inference, thus improving reliability while minimizing the impact on device complexity and performance.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If integrity verification operations are performed on ANN partitions, then detection precision of data integrity issues is improved, but processing time and productivity are reduced

Engineering Contradiction:
Improvedetection precisionVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The artificial neural network is divided into multiple partitions, with each partition having its own cryptographic verification code. This segmentation allows the integrity verification to be performed on individual partitions rather than the entire network at once, enabling parallel processing and reducing the overall verification time while maintaining high detection precision for data integrity issues.

Inventive Principle:
Principle #1Segmentation

3Reliability

If cryptographic codes are stored for each ANN partition, then reliability and traceability are improved, but memory usage and device complexity increase

Engineering Contradiction:
Improvedata integrityVSAvoidmemory usage
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

Cryptographic hash functions with different output lengths (e.g., SHA-256, SHA-512) can be selected based on the required security level and available memory resources. This parameter change allows systems to adjust the balance between reliability and memory usage by choosing appropriate hash function parameters, enabling deployment on devices with varying memory constraints while maintaining adequate integrity verification capabilities.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11914373B2Artificial neural network integrity verification
Publication Date: 2024.02.27 MICRON TECHNOLOGY INC
  • US11914373B2 patent drawing
  • US11914373B2 patent drawing
  • US11914373B2 patent drawing

AI summary

An example method comprises receiving a number of inputs to a system employing an artificial neural network (ANN), wherein the ANN comprises a number of ANN partitions each having respective weight matrix data and bias data corresponding thereto stored in a memory. The method includes: determining an ANN partition to which the number of inputs correspond, reading, from the memory the weight matrix data and bias data corresponding to the determined ANN partition, and a first cryptographic code corresponding to the determined ANN partition; generating, using the weight matrix data and bias data read from the memory, a second cryptographic code corresponding to the determined ANN partition; determining whether the first cryptographic code and the second cryptographic code match; and responsive to determining a mismatch between the first cryptographic code and the second cryptographic code, issuing an indication of the mismatch to a controller of the system.