PLD Intrusion Detection via CRC Analysis and Data Erasure

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Programmable logic devices (PLDs) are vulnerable to unauthorized attempts to load configuration data, which can lead to piracy and reverse engineering of sensitive information, as existing encryption and decryption methods require the presence of a decryption key for configuration, leaving them susceptible to reconfiguration by unauthorized bitstreams.

Innovation Solution

Implementing methods to detect unauthorized attempts by interpreting incorrect CRC values or multiple failed configuration attempts as attacks, erasing sensitive data or disabling startup and reconfiguration, and using error correction codes like Hamming and product codes to differentiate between transmission errors and attacks, thereby securing the PLD.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If encryption and decryption methods are used to protect configuration data, then security against piracy is improved, but the device remains susceptible to reconfiguration by unauthorized bitstreams if the decryption key is obtained

Engineering Contradiction:
ImprovesecurityVSAvoidreconfiguration vulnerability
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent implements preliminary actions by monitoring configuration attempts during the loading process and detecting unauthorized bitstreams before they can compromise the device. The system proactively identifies suspicious patterns and takes preventive measures to block reconfiguration attacks before they succeed, rather than reacting after key compromise occurs.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary intrusion detection mechanism that sits between the configuration interface and the decryption logic. This intermediary layer monitors and analyzes configuration attempts, acting as a mediator that can block unauthorized access while allowing legitimate configuration to proceed to the decryption stage.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If CRC checking is implemented to detect transmission errors, then data integrity is improved, but it cannot distinguish between transmission errors and unauthorized attacks

Engineering Contradiction:
Improvedata integrityVSAvoidattack detection accuracy
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent segments the configuration detection process into multiple independent analysis layers. Instead of relying on a single CRC check, the system divides detection into: (1) basic CRC error detection, (2) pattern analysis for unauthorized bitstream identification, (3) timing and sequence validation, and (4) cryptographic verification. This segmentation allows each layer to contribute to overall accuracy without being limited by the weaknesses of individual methods.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes multiple parameters simultaneously to improve detection accuracy: it analyzes not just the CRC value but also the timing of configuration attempts, the sequence of operations, the source of the bitstream, and cryptographic properties. By monitoring multiple parameters rather than relying solely on CRC, the system can distinguish between transmission errors (which typically affect only data bits) and unauthorized attacks (which may involve systematic modifications).

Inventive Principle:
Principle #35Parameter changes

3Reliability

If multiple failed configuration attempts trigger security measures, then protection against brute force attacks is improved, but legitimate configuration attempts may be blocked

Engineering Contradiction:
Improveattack resistanceVSAvoidconfiguration accessibility
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent implements dynamic security measures that adapt based on the characteristics of each configuration attempt. Rather than applying a static threshold that blocks after N failures, the system dynamically adjusts its response based on: the nature of the failure (CRC error vs. unauthorized bitstream pattern), the timing and frequency of attempts, the source identification, and the progression of failed attempts. This dynamic approach allows legitimate attempts with transient errors to succeed while blocking coordinated attack patterns.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent incorporates feedback mechanisms that analyze the outcomes of configuration attempts and adjust security responses accordingly. The system receives feedback about each attempt's characteristics and uses this information to make intelligent decisions about whether to block or allow subsequent attempts. This feedback loop enables the system to learn from patterns and distinguish between transient legitimate failures and systematic attack attempts.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS7607025B1Methods of intrusion detection and prevention in secure programmable logic devices
Publication Date: 2009.10.20 XILINX INC
  • US7607025B1 patent drawing
  • US7607025B1 patent drawing
  • US7607025B1 patent drawing

AI summary

Methods of securing a programmable logic device (PLD) when an intrusion attempt is detected, e.g., methods of erasing sensitive data from the PLD or disabling configuration of the PLD in response to an attack. For example, when an attempt is made to configure the PLD with an unauthorized bitstream, a decryption key stored on the PLD can be erased, or decryption logic in the PLD can be otherwise disabled. The criteria for assuming that an attack is in progress can include, for example, the lack of a cyclic redundancy check (CRC) value included with a configuration bitstream, an attempt to operate the PLD outside normal operating ranges, receipt of an incorrect CRC value, or receipt of a predetermined number of bitstreams including incorrect CRC values. In some embodiments, an error correction procedure is performed on the bitstream, thereby preventing most transmission errors from being incorrectly interpreted as an attack.