Aligned Data Encryption Using Multi-Threaded PRNG Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data encryption and decryption processes face performance issues due to non-aligned data processing, which leads to adverse impacts on overall system performance and efficiency, especially in computing systems where caching and data access are concerned.

Innovation Solution

The method involves ensuring high degrees of data alignment by using multi-threaded processing with aligned memory buffers, dedicated Pseudo Random Number Generators (PRNG) for encryption, and optimized caching strategies, including circular rotations and shuffling algorithms to maintain alignment and improve performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If non-aligned data processing is used in encryption, then implementation simplicity is maintained, but system performance and data access efficiency deteriorate

Engineering Contradiction:
Improveimplementation simplicityVSAvoidencryption performance
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent applies preliminary action by pre-aligning data to byte boundaries before encryption processing. The system ensures data is organized in properly aligned units (bytes, words, or cache lines) prior to entering the encryption algorithm, eliminating the need for extraction operations during processing and maximizing computational efficiency

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the alignment parameter from arbitrary/non-aligned to specifically aligned values (byte-aligned, word-aligned, or cache-line aligned). This parameter change enables the processor to access data in optimally aligned units, improving memory access performance and reducing the need for additional extraction operations

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If unaligned memory access is used, then programming flexibility is maintained, but cache performance and data movement efficiency worsen

Engineering Contradiction:
Improveprogramming flexibilityVSAvoiddata movement efficiency
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The system performs preliminary alignment of data in memory buffers before encryption operations. By pre-organizing data in cache-line aligned or word-aligned units, the system minimizes cache misses and data movement during encryption, improving energy efficiency without sacrificing programming flexibility

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes memory access parameters from unaligned to aligned access patterns. Data is organized in memory with specific alignment characteristics (byte-aligned, word-aligned, cache-line aligned) that optimize cache performance and reduce energy consumption during data movement and processing

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If extraction operations are performed on non-aligned data, then data access flexibility is maintained, but processing speed and overall efficiency deteriorate

Engineering Contradiction:
Improvedata access flexibilityVSAvoidprocessing speed
Core Design Contradiction:
Ease of operationVSSpeed

Solution Approach 1:

The patent applies preliminary action by ensuring data is pre-aligned in memory buffers before encryption processing. This eliminates the need for extraction operations during encryption, as data is already organized in the optimal format for processing, thereby maximizing processing speed while maintaining data access flexibility through proper buffer management

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11947685B2Aligned high performance data encryption method
Publication Date: 2024.04.02 SCHWADERER WILLIAM DAVID

AI summary

A computer-implemented method can include: a computer program file open request providing read access to text or binary plaintext file data residing on a data storage means; processing the plaintext file data in an input data buffer area following a computer program file data read operation to improve performance by creating a multiplicity of processing threads to perform concurrent, usually non-overlapping encryption processing operations; and an encryption program constructing a previously constructed complex of Pseudo Random Number Generator (PRNG) means to provide on-demand Pseudo Random Number (PRN) values.