Fading Coder

One Final Commit for the Last Sprint

Home > Tech > Content

Image Encryption Using a 6D Hyperchaotic System with DNA Encoding

Tech 1

Introduction

With advancements in digital image processing, image encryption has become increasingly vital for information security. Chaotic encryption algorithms are a popular research focus due to their effective diffusion and confusion properties. However, traditional low-dimensional chaotic systems often suffer from small key spaces and limited security.

Image Encryption Algorithm Based on a 6D Hyperchaotic System

To address the limitations of low-dimensional chaotic systems, this article proposes an image encryption algorithm that utilizes a 6D hyperchaotic system combined with DNA encoding. This approach enhances security by employing a high-dimensional chaotic system as a pseudo-random sequence generator.

Algorithm Steps

The algorithm proceeds as follows:

  1. Key Generation: Generate six initial values and control parameters to form the key for the 6D hyperchaotic system.
  2. Image Preprocessing: Convert the original image into a binary format and partition it into 8×8 pixel blocks.
  3. Diffusion: Apply six chaotic sequences to diffuse each pixel block, altering pixel values.
  4. Scrambling: Use distinct chaotic sequences to scramble the diffused pixel blocks, changing pixel positions.
  5. DNA Encoding: Transform the scrambled pixel blocks into DNA sequences, then diffuse and scramble these sequences using additional chaotic sequences.
  6. Image Reconstruction: Combine the encoded sequences to produce the encrypted image.

Experimental Results

To evaluate the algorithm's performance, the following experimenst were conducted:

  • Image Entropy: The encrypted image's entropy approaches 8, indicating strong randomness.
  • Pixel Correlation: Low pixel correlation in the encrypted image demonstrates effective confusion.
  • Image Complexity: A key space exceeding 2^300 suggests high security.
  • Robustness: The encrypted image shows good resistance to geometric and truncation attacks.

Conclusion

The proposed image encryption algorithm, based on a 6D hyperchaotic system with DNA encoding, exhibits excellent entropy, pixel correlation, complexity, and robustness. It effectively secures image data and is suitable for various encryption applications.

Code Example

function entropyValues = computeImageEntropy(imageData)
% COMPUTEIMAGEENTROPY Calculates the entropy of an image.
%   entropyValues = computeImageEntropy(imageData) returns a vector of
%   entropy values for each color channel of the input image.

    entropyValues = zeros(1, 3);
    
    function channelEntropy = calculateChannelEntropy(channel)
        channel = double(channel);
        [rows, cols] = size(channel);
        pixelVector = channel(:)';
        probabilityDistribution = zeros(1, 256);
        
        for intensity = 0:255
            probabilityDistribution(intensity + 1) = sum(pixelVector == intensity) / (rows * cols);
        end
        
        nonZeroProbabilities = probabilityDistribution(probabilityDistribution > 0);
        channelEntropy = -nonZeroProbabilities * log2(nonZeroProbabilities)'; 
    end
    
    for channelIndex = 1:3
        entropyValues(channelIndex) = calculateChannelEntropy(imageData(:, :, channelIndex));
    end
end

References

Li, Q., Chen, L. An image encryption algorithm based on 6-dimensional hyper chaotic system and DNA encoding. Multimed Tools Appl 83, 5351–5368 (2024). https://doi.org/10.1007/s11042-023-15550-3

Related Articles

Understanding Strong and Weak References in Java

Strong References Strong reference are the most prevalent type of object referencing in Java. When an object has a strong reference pointing to it, the garbage collector will not reclaim its memory. F...

Comprehensive Guide to SSTI Explained with Payload Bypass Techniques

Introduction Server-Side Template Injection (SSTI) is a vulnerability in web applications where user input is improper handled within the template engine and executed on the server. This exploit can r...

Implement Image Upload Functionality for Django Integrated TinyMCE Editor

Django’s Admin panel is highly user-friendly, and pairing it with TinyMCE, an effective rich text editor, simplifies content management significantly. Combining the two is particular useful for bloggi...

Leave a Comment

Anonymous

◎Feel free to join the discussion and share your thoughts.