NAME

Crypt::Image - Steganography interface to hide text within an image.

VERSION

Version v1.0.1

DESCRIPTION

Crypt::Image offers an innovative way of steganography that enables users to incorporate secret messages into crucial pictures. The hidden message spreads in a distributed fashion across the picture, while random noise that doesn't carry the message fills up the remaining non-relevant areas of the image with cryptographically sound noise.

RGB conversion helps hide the message from detection systems that search for image patterns in different pictures created with the same key. The encoding is done randomly across the R, G and B channels, meaning that the original RGB values are altered by adding/subtracting the encoded UTF value. Hence, regardless of the fact that the same key image and message may be used, the resulting picture will be different every time, thus destroying all data pixels in sound noise.

CONSTRUCTOR

The constructor takes at the least the location key image,currently only supports PNG format. Make sure your key image is not TOO BIG.

use strict; use warnings;
use Crypt::Image;

my $crypter = Crypt::Image->new(file => 'your_key_image.png');

METHODS

encrypt($message, $encrypted_image_name)

Encrypts and embeds text into the key image using steganography, saving the result to a new file.

use strict; use warnings;
use Crypt::Image;

my $crypter = Crypt::Image->new(file => 'your_key_image.png');
$crypter->encrypt('Hello World', 'your_new_encrypted_image.png');

decrypt($encrypted_image)

Extracts and decrypts hidden steganographic text from the specified image file.

use strict; use warnings;
use Crypt::Image;

my $crypter = Crypt::Image->new(file => 'your_key_image.png');
$crypter->encrypt('Hello World', 'your_new_encrypted_image.png');
print "Text: [" . $crypter->decrypt('your_new_encrypted_image.png') . "]\n";

AUTHOR

Mohammad Sajid Anwar, <mohammad.anwar at yahoo.com>

REPOSITORY

https://github.com/manwar/Crypt-Image

BUGS

Please report any bugs / feature requests through the web interface at https://github.com/manwar/Crypt-Image/issues. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc Crypt::Image

You can also look for information at:

LICENSE AND COPYRIGHT

Copyright (C) 2011 - 2026 Mohammad Sajid Anwar.

This program is free software; you can redistribute it and/or modify it under the terms of the Artistic License (2.0).