WORM Storage Controller Tag Verification Mechanism

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing information handling systems lack effective mechanisms for ensuring permanent data retention and security, particularly in Write-Once Read-Many (WORM) data storage systems, which are crucial for regulatory compliance and secure logging but face challenges in preventing overwriting of data.

Innovation Solution

The implementation of a WORM storage system that uses a disk controller to initialize sectors with a known tag, issuing a verify command before writing data to ensure that a sector has not been written to, and preventing subsequent writes if the tag does not match, thereby maintaining data integrity and security through protection errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a WORM storage system is implemented to prevent data overwriting, then data integrity and security are improved, but device complexity increases due to the need for verification commands and tag checking mechanisms

Engineering Contradiction:
Improvedata integrityVSAvoidstorage system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system performs preliminary verification by issuing verify commands and checking tags before allowing write operations. This preliminary action ensures data integrity by preventing overwrites of sectors that have already been written, while the verification mechanism is built into the storage controller's normal operation flow

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces tags as intermediary markers stored in the storage medium alongside data. These tags act as mediators that the verification mechanism checks to determine whether a sector has been written, enabling the WORM functionality without requiring complex external verification systems

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If verification commands are issued before every write operation to ensure data security, then data security is improved, but productivity decreases due to the additional verification steps

Engineering Contradiction:
Improvedata securityVSAvoidwrite operation speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The verification command and tag checking are performed as preliminary actions before write operations. While this adds steps, it ensures that security-critical operations are verified beforehand, and the system can batch or optimize these verification operations to minimize their impact on overall productivity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The storage system performs self-verification by automatically checking tags and issuing verify commands without requiring external intervention. This self-service mechanism embeds the security verification within the storage controller's own operation flow, reducing the need for additional external verification infrastructure

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8880826B2System and method for write once read many (WORM) storage in an information handling system
Publication Date: 2014.11.04 DELL PROD LP
  • US8880826B2 patent drawing
  • US8880826B2 patent drawing
  • US8880826B2 patent drawing

AI summary

A Write-Once Read-Many (WORM) memory controller receives data from a processing system that is addressed to a location in a storage device, stores the data and a tag at the location, receives second data from the processing system that is addressed to the location, determines that the location includes the tag, and prevents the second data from being stored at the location based upon the presence of the tag. A WORM memory device sends a reply to a controller in response to an initialization command. The reply includes an address number that corresponds with the storage capacity of the WORM memory device. The WORM memory device sends another reply to another controller in response to another initialization command. The initialization commands are different from each other. The other initialization reply includes an address number of zero.