If the cryptographic strength of the encoding (i.e. the secrecy) is more important than the ease of communication, or the goal of encoding is not (or not only) communicating but storing secret data, then symmetric encoding is better than the private/public key scheme: the same key will be used in the encoding and in the decoding process.
The cryptographic strength of this method can be as high as required.
The disadvantage of this method is in communication, namely that the key itself too has to be communicated somehow. CryptoBola JPEG adopted a symmetric encryption method. The key will be created from a passphrase, which has to be known by everybody, who wants to decode the data. Steganography Cryptographic methods described above ensure that the data remains secret. However, analysis of the cipher text easily reveals that the unintelligable data is in reality the encrypted form of some presumably intelligeble data, which has been “made secret”.
Already this fact alone can pose a problem: sometimes one does not want others to know, that one has anything to hide. Another aspect is, that when the fact of encryption is detectable, those, who want to know the secret information can concentrate their efforts to get unauthorized access to the data by trying to decipher it somehow. Steganography is a special kind of cryptography: it makes the presence of secret data undetectable.
Imagine this: if the cypher text will be mixed with other, intelligable data (for example with the digital data of an image) undetectably, then those, who are after your secret have to try to recover the data from every image you store or communicate.
Millions upon millions of digital images are communicated in Internet every day, in most cases available to anybody; any of them could contain secret data hidden among the original image data. CryptoBola JPEG is doing just this: it encrypts the original information (plain text) into a digital image (this is the basis image ), which is in JPEG form.
The speciality of the JPEG form is, that it is not an exact reproduction of the original image data, rather it is a compressed approximation of it (this is the reason, that the JPEG encoding is called a “lossy method”). The compression is achieved by several steps of data reduction and encoding, which together constitute the JPEG-encoding. The degree of data reduction carried out during the encoding is usually called (somewhat laymannish) “compression quality”.
Small changes in the JPEG-encoded image data do not cause recognizable effect on the resulting image quality.
This, of course depends on several factors: The theme of basis image: small changes may “show up” easier in an image consisting for example of many large solid-colored or identically patterned blocks than in one with many colors in fine resolution. The degree of data reduction during the original JPEG-encoding: the degree of data reduction determines the amount of loss of the original image information.
The higher the data reduction rate (the lower of the compression quality) is, the more weight the stored data carries. Correspondingly, changing a small amount of data encoded with high degree of reduction effects the resulting image more than if the degree of data reduction is lower. The size of the image: encoding a large image with the given quality results usually in more encoded data than encoding of a small image. The quality of the image: distortion in an image of high quality is easier recognizable than in a grainy image. This factor may depend on the original image quality (scanning a color picture from a newspaper usually results in low image quality), on the scanner, on scanning parameter as well as on post-processing after scanning.
In case of an image created by a digital camera the size and quality of the image depends on the image sensor, the JPEG quality setting of the camera, the lens, the focusing/image sharpness, etc. Post-processing, like enhancing contrast, changing brightness, etc.
Some paranoid governments do not like their citizens having any secrets. Some are trying to outlaw cryptography (except such which can be deciphered by government agencies). However, just the nature of steganography makes enforcing such laws difficult, to say the least.
The newest attack against steganography is, that it will be equated to computer viruses.
Any data embedded in multimedia files is passive; it can not do anything “on its own”. CryptoBola JPEG does not do anything with the extracted data, except displaying and/or writing it in a file. Comparing data embedded in images with computer viruses is a ridiculous attempt of government agencies to discourage people from deploying steganographic products. The unique features of CryptoBola JPEG CryptoBola JPEG
determines, which parts (bits) of the JPEG-encoded data play the least significant role in the reproduction of the image, and replaces those bits with the bits of the cipher text (it embeds the cipher text in the image).
The plain text can be any data file (text, program, picture, whatever) or it can be entered in edit-mode directly before the actual embedding takes place.
The degree of maximum distortion to be caused by these changes will be displayed before embedding, and the actual distortion after embedding.
When retrieving ( extracting ) the data, it can be stored in a file or viewed directly in the extraction dialog. CryptoBola JPEG
stores only the cypher text without any additional information like file name, type, length, etc. The person, who is extracting the embedded data has to know or to determine the type of extracted data. The reason not to store any such information is, that its presence could shorten the effort of brute attacks by giving some clue about the success of the deciphering attempt.
The embedding and special encryption carried out by CryptoBola JPEG does not provide any clues for brute attacks. Not only that the embedded data can not be extracted without the proper key, but the presence of any embedded data can not be confirmed or negated by starting the extraction process with any key. The extraction process delivers some result with almost any key from almost any JPEG image data, no matter if there is any embedded data in the actual case.
Consequently, a brute attack would have to try to extract data with each possible key from each image and the resulted data would have to be analyzed before determining, that the attempt was futile. This is an unrivalled feature of CryptoBola JPEG. This method, combined with the high number of possible keys gives CryptoBola JPEG an extra strength against brute breaking attempts.
The process of deciphering consists of several, quite complicated phases, all of which have to be completed before the result can be analyzed. There is no “look ahead” (early recognition of wrong key), saving of deciphering by finding clues is not possible. The required computational power for a successful brute attack makes this method immune against such attacks.
If someone wants to have an even higher degree of cryptographic strength, one can pre-encrypt the data. If several files have to be embedded in a single image (like an archive), the archive-creating process may be used to encrypt (and usually to compress as well) the involved files.
Another unrivalled feature of CryptoBola JPEG is, that it offers applications integrated in the embedding/extraction dialog, for example password management, email/address book, financial records, diary, plain text, formatted text, etc.
These applications provide for subdialogs for entering and processing the data directly in the original dialog, without the need to create intermediate files. This means not only a convenient workflow, but a higher level of secrecy as well: the secret data does not appear in files anywhere; otherwise one would have to clean-up those files; simply deleting a file does not destroy the content on a harddisk or on other media.
The best is an own, private color scan of any picture or text. The resulting image data (scan data) is not reproducable, for the same picture/text scanned again after having removed it from and replaced into the scanner yields different scanning data. Color pictures from newspapers, magazines etc.
Another source of suitable image is digital photography with some post-processing. Panoramic images (stitched together from several images) can be very large and can have embedding capacity of several megabytes. Restrictions regarding the JPEG basis. The JPEG basis file has to be in JFIF or Exif format.
Character-viewers, for example Notepad show the characters JFIF respectively Exif at the very beginning of the file, usually on the character positions 7-10. CryptoBola JPEG changes the Exif format into JFIF format when creating the modified JPEG file.
The basis image has to have three components, i.e. black-and-white and grayscale images are not supported. The three components in both JFIF and Exif format are the luminance (brightness) and two chrominance (color) components. Only sequential JPEGs are supported at this time. Explanations of some concepts and acronyms from the previous discussion Home Modified: 2004-03-28