RAID Disk Controller Signature Verification for Piracy Prevention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing RAID systems face challenges in preventing piracy while allowing for the free distribution of device driver software, as strict control measures are costly and inconvenient, especially when multiple versions of hardware and software need to be managed.

Innovation Solution

A method where a disk controller initializes by writing a signature to a scratchpad register indicating authorized product features, and only allows access to features matching this signature, ensuring that unauthorized use is prevented without restricting the distribution of device driver code.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If strict control measures are implemented to prevent piracy of device driver software, then piracy prevention is improved, but distribution convenience and user flexibility deteriorate

Engineering Contradiction:
Improvepiracy preventionVSAvoiddistribution convenience
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The device driver is segmented into two parts: a kernel module that loads freely, and a feature authorization module that checks hardware signatures. This segmentation allows free distribution while preventing unauthorized feature access, resolving the contradiction between piracy prevention and distribution convenience

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A signature stored in the hardware device acts as an intermediary between the device driver and authorized features. The driver checks this signature to determine permitted operations, enabling piracy prevention without restricting distribution of the driver code itself

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If multiple versions of hardware and software are produced to offer different feature sets, then product adaptability is improved, but manufacturing complexity and cost increase

Engineering Contradiction:
Improveproduct adaptabilityVSAvoidmanufacturing complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

A single device driver is made universal by incorporating signature-checking capability that works with multiple hardware versions. The driver adapts to different feature sets by reading hardware signatures rather than requiring separate driver versions, reducing manufacturing complexity while maintaining product adaptability

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system uses signature parameters stored in hardware to dynamically determine which features are authorized. Rather than producing multiple hardware/software versions, the system changes the signature parameter to control feature access, simplifying manufacturing while maintaining versatility

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS7409561B1Piracy protection for combined hardware/software products
Publication Date: 2008.08.05 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
  • US7409561B1 patent drawing
  • US7409561B1 patent drawing
  • US7409561B1 patent drawing

AI summary

An apparatus, computer program product, and method for preventing piracy in combined hardware/software products, and specifically in RAID storage systems is disclosed. In a preferred embodiment of the present invention, when a hardware device (a disk controller, in a preferred embodiment) is initialized, the device executes firmware that directs it to write a signature to a storage location (scratchpad register) in the device, where the signature corresponds to a set of product features authorized for use with the hardware device. When application code executing on the host computer system attempts to access a feature (e.g., through device driver code), the stored signature is read from the hardware device. The code implementing the feature is allowed to execute only if the signature that is read from the hardware device matches a feature level of the product in which that feature is authorized.