D-DOG Stream Cipher for Secure Distributed Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data security solutions for distributed storage networks, particularly in wide area networks and mobile devices, are inadequate due to vulnerabilities in initialization vectors of stream ciphers and the constraints of limited resources in mobile devices, which make them susceptible to attacks and energy-intensive encryption processes.

Innovation Solution

The Data Division and Out-of-order keystream Generation (D-DOG) stream cipher scheme, which generates a variable-length keystream based on user input and a nonce, dividing data into blocks for secure storage and encryption, making it computationally infeasible for adversaries to decrypt without the correct keystream and PIN, and the self-encryption scheme, where sensitive data is split into two parts with the keystream stored separately, enhancing security and efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional stream ciphers with fixed initialization vectors are used, then encryption can be implemented, but the system becomes vulnerable to attacks and intrusions

Engineering Contradiction:
Improvesecurity against attacksVSAvoidvulnerability to attacks
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent applies dynamics by replacing fixed initialization vectors with variable-length keystreams that are dynamically generated based on user input and nonce values. The keystream length adapts to the data size and security requirements, making the encryption system responsive to different operational contexts and resistant to pattern-based attacks.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of initialization vector length from fixed to variable. By allowing the keystream length to be determined by user input and nonce rather than being predetermined, the system achieves parameter flexibility that enhances security while maintaining efficiency.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If robust encryption schemes are used to ensure data confidentiality, then security is improved, but the encryption process becomes energy-intensive

Engineering Contradiction:
Improvedata confidentialityVSAvoidenergy consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent segments the encryption process into two distinct parts: data division into blocks and separate keystream generation. This segmentation allows for optimized processing where the keystream can be generated efficiently using user input and nonce, while the actual data encryption operates on manageable blocks, reducing overall energy consumption compared to monolithic encryption schemes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The encryption system performs self-service by generating keystreams autonomously based on user input and nonce values without requiring external computational resources. The system uses its own internal state and input to produce the encryption keys, eliminating the need for energy-intensive external key generation processes.

Inventive Principle:
Principle #25Self-service

3Ease of operation

If data is stored in distributed storage nodes, then accessibility is improved, but the nodes become controllable by medium owners rather than data owners

Engineering Contradiction:
Improvedata accessibilityVSAvoidcontrol authority
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent introduces an intermediary mechanism where the data owner retains control through the keystream generation process. The keystream, which is the actual encryption key, is generated based on user input and nonce values that the data owner controls. This intermediary role allows the data owner to maintain authority over the encrypted data even when stored on distributed nodes controlled by others.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent extracts the control function from the storage node and places it with the data owner through the keystream generation process. By separating the storage function (performed by nodes) from the key generation function (performed by the data owner using user input and nonce), the system allows data accessibility while maintaining data owner control.

Inventive Principle:
Principle #2Taking out (Extraction)

4Reliability

If variable-length keystreams are generated based on user input and nonce, then security against brute-force attacks is improved, but the complexity of the encryption scheme increases

Engineering Contradiction:
Improvebrute-force resistanceVSAvoidencryption scheme complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-establishing the relationship between user input, nonce, and keystream generation before actual encryption occurs. The system pre-defines that keystreams will be generated based on these inputs, allowing for straightforward implementation during encryption operations while maintaining high security through the predetermined security-based generation method.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8862900B2Secure distributed storage system and method
Publication Date: 2014.10.14 THE RES FOUNDATION FOR THE STATE UNIV OF NEW YORK
  • US8862900B2 patent drawing
  • US8862900B2 patent drawing
  • US8862900B2 patent drawing

AI summary

Moving from server-attached storage to distributed storage brings new vulnerabilities in creating a secure data storage and access facility. The Data Division and Out-of-order keystream Generation technique provides a cryptographic method to protect data in the distributed storage environments. In the technique, the Treating the data as a binary bit stream, our self-encryption (SE) scheme generates a keystream by randomly extracting bits from the stream. The length of the keystream depends on the user's security requirements. The bit stream is encrypted and the ciphertext is stored on the mobile device, whereas the keystream is stored separately. This makes it computationally not feasible to recover the original data stream from the ciphertext alone.