A sincere apology for not able to discuss the real part of hidden crypto- keys inside an image as the title captured it in my last blog here, especially @gentleshaid , @revo , @dagger212 among others who have been waiting eagerly to read a post on how to hide crypto keys inside an image and to those who also have interest but did not comment like those I specifically mentioned.
However, it is not in my intention to divert away from the topic, in fact what I discussed so far is an integral part of the topic in discussion, because introducing the basic background of the topic always brings better result due to proper understanding of the phenomenon surrounding the topic in discussion.
Let's take a step further!
An overview of acient way of hidden data inside a cover object
The act of hidden data inside an image is known as STEGANOGRAPHY, so hidden data inside an image is not a new thing! It has long been existing and it can be traced back to the ancient times, that is, the traditional or old ways of hidden the existence of information. Research has revealed that chemicals and human bodies have both been used to convey an information from one place to the others and that is the basis by which modern days steganography was built upon.
An overview of the records of steganograghy in history includes the followings:
1. Herodotus (484 BC – 425BC)
[Image source: Flickr]
Herodotus was a king who took over from HecataeuLs (the Spartan king). He was the first in history to have made use of Steganography and that was around 440 BC in Greece. Each time he wants to send a message to his vasssal called 'Aristagoras of Miletus'. He used to hide the existence of the message, he does this by simply shaved the head of his most loyal servant and imprint his intended message onto the scalp of his head and wait till the hair is fully grown over it after which he will then be sent out. On arrival of this loyal servant, Aristagoras of Miletus used to re-shave the hair in order to decode the message of Herodotus. Most of his message then used to be on warning about a coming attack. He also used to hide the existence of information on the wooden backing of a wax tablet before covering it with beeswax surface. Wax tablets were the only rampant reusable writing surfaces then so he could not have used something else.
Pliny the Elder (23 AD – 79 AD)
[Image source: Flickr]
Pliny the Elder's real name is called Gaius Plinius Secundus, he was a Roman author, a naval and chief of army commander of the early Roman Empire and a friend of emperor Vespasian. He is considered as the inventor of sympathetic inks. his methodology was to use thithymallus plants sap to write information usually text data, this would become invisible once it dries up. Anytime it undergoes a subtle heating, it would expose the charring of the organic substances present in the ink and then turn brown when heated subsequently.
Giovanni Batista Porta (1535 - 1615)
[Image source: Flickr]
Giovanni Batista Porta was a scholar who witnessed the Scientific Revolution and Reformation between 1535 - 1615. He proposed how to conceal a message inside a hard-boiled egg by writing the message on the outer shell of the egg using a special ink made with a pint of vinegar and an ounce of alum, it will form a solution which will penetrate down to the porous shell, creating no existence of the information visible to trace, the information is smudge on the part of the hardened egg albumen, this makes it readable once shell is removed.
Modern ways of hidden data inside an image (Modern Steganography)
Having discussed traditional way of hidden data using a cover object, it's high time we stepped into the game you have been expecting for long.
The Steganography which is the process of hidden the existence of information using image as cover object is a branch of Cryptography we all have known for long, only that the former one tries to hide messages by avoiding the perception of the message. Like hidden your crypto keys inside your personal picture without people knowing there is crypto keys in the picture since it will maintain the same outlook like you never tamper with the picture.
To implement steganographic approach, cover files of any kind can be used as image. Similarly, information to hide may not be text, it can be image itself, video, sound. Currently two trends are popularly being used to implement the algorithms to hide the existence of data:
The method that work in the spatial domain: This has to do with altering the desired characteristics on the file itself.
The methods that work in the transform domain: This has to do with performing a lot of changes to the cover object/image before hiding the information.
Researchers in the field of steganography have proved the fact that spatial domain method used to be simpler and faster to implement than the ones that work in the transform domain which is more robust in term of resistance to attacks. In Spatial Domain, information or data to metamorphose is plant directly into images to be used as cover object unlike, in transform domain where the images are first metamorphosed before the data or information or message to be transferred is embedded into it.
To fully implement STEGANOGRAPHY (hidden the existence of our crypto keys inside an image), we must understand the algorithm behind it.
Research has revealed the fact that most of the algorithm that is applicable in Spatial Domain use Least Significant Bits Algorithm (LSB) technique among any of its derivatives as the algorithm for information hiding. This implies hidding a bit of data in the least significant bit (LSB) of every color that made up of a pixel, do not forget that three bytes are in a pixel of color image. You can read my previous post on Technology Behind Image Processing (A brief introduction). However, this approach is weak and can not withstand some of statistical analysis like RS or Sample Pairs. The reason for this is the distortion due to the modification of the three colors that made up of a pixel.
Let's pause here for today, till our next class when we shall mount on what we have discussed so far.
Thanks for reading through and I do hope you have gained more knowledge on STEGANOGRAPHY (method of hidden the existence of data using a cover object such as image).
Information Hiding, Digital Watermarking and Steganography
Enhancing the Least Significant Bit (LSB) Algorithm for Steganography
Image Steganography and Steganalysis
Development Trends in Steganography
Steganography-The Art of Hiding Data