The document proposes a permutation-based algorithm for encrypting images where each pixel is swapped with a randomly generated value to encrypt the image without compromising speed, time, or information. It uses pseudo-random number generators and linear congruential generators to generate random numbers for shuffling pixel rows and columns. The decryption process repeats the encryption steps in reverse order to recover the original image. The algorithm works in linear time and is adaptable by changing block size or pseudo-random number generator parameters, allowing for different encrypted images. It tests the algorithm on images of different sizes using different block lengths.