• 沒有找到結果。

Brief Descriptions of Proposed Methods

Surveys of Related Studies and Brief Descriptions of Proposed Methods

2.2 Brief Descriptions of Proposed Methods

In this dissertation study, we have developed totally ten methods, three for data hiding in various images with distortion reduction capability, one for data hiding in emails with capabilities of authenticating the hidden data, two for data hiding in source programs, two for data hiding in PDF files, and finally two for data hiding in

web pages. They are briefly described in the remainder of this section

2.2.1. Data Hiding in Binary Images with Distortion-Minimizing Capabilities by Optimal Block Pattern Coding and Dynamic Programming Techniques

The first method we propose is a new technique which embeds data into a binary image and minimizes the resulting image distortion in an optimal way. In a binary image, there are two distinct pixel values, 0 and 1, corresponding to black and white pixels, respectively. When data are embedded into a binary image, some image pixels used for data hiding will be changed from black to white or reversely. The pixel value changes will be called bit flippings in the sequel. To embed more data, more bit flippings may be conducted; however, the quality of the resulting image will also get worse. The bit flipping rates of most data hiding methods for binary images are about 50%. We propose a new data hiding method which has the capability to conceal up to three data bits in a 2×2 block, resulting in bit flipping rates lower than 50%. The method can thus be used to embed more data. This is achieved by a block pattern coding technique. On the other hand, while it is desirable to embed more data, the resulting image quality should be maintained in the mean time. For this purpose, two optimization techniques are proposed. The first is to use multiple block pattern encoding tables, from which an optimal one is selected for each input image. The second technique is to use a dynamic programming algorithm to divide the message data stream into appropriate bit segments for optimal data embedding in the image blocks in the sense of minimizing the number of bit flippings. As a result, the proposed method can achieve the goals of both increasing the embedded data volume and reducing the resulting image distortion. Furthermore, the method can be used to extract embedded data without referencing the original image.

2.2.2. Data Hiding in Grayscale Images by Dynamic Programming Based on A Human Visual Model

The second method we propose is a new technique which embeds data into a grayscale image, based on the use of a new HVS model, to estimate the number of usable bits of each pixel in the cover image. Furthermore, a block pattern encoding method is proposed to embed up to three data bits in a 2×2 block of the bit planes without visible degrading of the stego-image quality. This is achieved by using two optimization techniques. The first technique utilizes multiple block pattern encoding tables, from which an optimal one is chosen for each input image; and the second technique uses dynamic programming to divide the message data stream into appropriate bit segments for optimal data bit embedding in the image blocks to minimize a cost function. Especially, the proposed method can predict the PSNR value of the stego-image according to the embedded data size before the embedding process is started. Moreover, the proposed method can extract embedded data without referencing the original image, and does not require post-processing to refine the stego-image quality.

2.2.3. Data Hiding in Color Images by Color Replacements with Reduction of Image Distortion and Change Noticeability

The third proposed method is a new one for hiding data in RGB color images using color space partitioning and color encoding. The RGB color space is partitioned into non-overlapping, equal-sized color clusters, each being cubic in shape, called a color cube. The colors in each cube are used to represent fixed-length codes.

Message data hiding is accomplished by replacing selected image pixels’ colors with closest ones in color cubes to embed corresponding codes representing the message bits. And data extraction is a reverse process of data embedding. To reduce image distortion, each color cube is designed to include a number of color groups, with all

colors in each group representing an identical code. The colors in each group are distributed as separately as possible in the cube, and color replacement at an image pixel is conducted by choosing as the replacing color the one in a group, which is closest to the pixel’s color in the sense of Euclidean color distance. And to reduce the noticeability of the resulting color changes, we select adaptively for use in data embedding those cubes whose colors are more scattered in the cover image (that is, the pixels whose colors are in these cubes are more separated mutually in the cover image), so that the color changes on these pixels will arouse less notice from the observer.

2.2.4. Data Hiding in Emails and Applications by Unused ASCII Control Codes

The fourth proposed method is a new technique for data hiding in emails via Outlook Express and IE under the operating system of the tTraditionalTTChineseT version of Microsoft Windows XP, service pack 2, 2002. The idea is based on the use of unused ASCII codes. Secret data are encoded by special ASCII control codes and embedded into cover emails by inserting the data into the text line ends in the body of a given email. These ASCII control codes, when displayed both by Outlook Express and IE, are invisible to the user, achieving the effect of steganography. Such invisible ASCII control codes were found out in this study by a systematic test of all the ASCII codes on various email server software systems and standards. The proposed data encoding technique is a combination of five coding rules found in this study, which insert special ASCII control codes into different places in email texts. The inserted codes will not change the meanings of the sentences in the cover email, neither causing any noticeable difference to the reader. Furthermore, hidden data can be extracted from a stego-email completely to recover the original email text content.

Also described in this study are two applications of the proposed data hiding technique, namely, covert communication via emails and authentication of emails. In the former application, security is enhanced by the use of a secret key, and in the latter, an authentication signal is generated from the cover email for email fidelity checking.

2.2.5. Security Protection of Software Programs by Information Sharing and Authentication Techniques Using Invisible ASCII Control Codes

The fifth proposed method is a new technique based on the use of some specific ASCII control codes invisible in certain software editors. By the use of the logic operation of “exclusive-OR,” each source program to be shared is transformed into a number of shares, say N ones, which are then hidden respectively into N pre-selected camouflage source programs, resulting in N stego-programs. Each stego-program still can be compiled and executed to perform the function of the original camouflage program, and each camouflage program may be selected arbitrarily, thus enhancing the steganographic effect.

To improve the security protection effect further, we propose additionally an authentication scheme for verifying the correctness of the contents of the stego-programs brought by the participants to join the process of secret program recovery. This is advantageous to prevent any of the participants from accidental or intentional provision of a false or destructed stego-program. The verified contents include the share data and the camouflage program contained in each stego-program.

2.2.6. Covert Communication with Authentication via Software Programs Using Invisible ASCII Codes

The sixth proposed method is a new one for covert communication by embedding messages in source programs. A binary message, after being encoded into

some ASCII codes and embedded into certain C++ program locations, becomes invisible in the source code editors of Visual C++ and C++ Builder under some Windows OS environments, creating a steganographic effect. A tamper-proof authentication scheme for the embedded message is also proposed.

2.2.7. Covert Communication via PDF Files and PDF File Authentication by Invisible Codes

The seventh proposed method is a new technique for covert communication, which embeds secret messages in PDF files. A message is regarded as a string of bits or characters, which are then encoded with a special ASCII code by binary or unitary coding. The results, after being embedded at the between-word or between-character locations in the text of a PDF file, are found in this study to be invisible in the windows of common PDF readers, creating a steganographic effect and achieving the purpose of secret communication.

The eighth method is proposed for authenticating PDF files using a special ASCII code A0. For each word in the text of a PDF file to be protected, an authentication signal composed of repeating A0’s is generated from the 8-bit ASCII codes of the characters composing the word as well as a random number. The signal is then embedded to the right of the word. These A0’s are invisible in the window of common PDF readers, enhancing the security of the embedded authentication signals.

Without the key for use in generating the random numbers, malicious creation of a fake file is nearly impossible.

2.2.8. Secret Communication through Web Pages and Automatic Authentication of Web Pages Using Special Space Codes in HTML Files

The ninth proposed method is a new technique for secret communication by

embedding special space codes in the HTML files of web pages. These codes appear as white spaces in the web page, and so may be used to encode secret message bits with steganographic effects. The codes are the result of a thorough investigation of all possible coding systems which can be applied in the HTML file. There are many of such codes, and each of them may be used to encode at least three message bits, increasing the data hiding capability.

The last proposed method is a new automatic authentication technique for checking the integrity of web page text contents. The method, aiming to check the authenticity of each single word, is based on a data hiding technique which uses some special space codes as authentication signals. Such codes, which are found in this study to be multiple and appear identical to normal white spaces in web pages, are used to encode certain binary mapping results from the word contents. These codes are then taken to replace the between-word spaces in the HTML codes, resulting in good steganographic effects. Security enhancement has also been considered, and related problems are solved by the use of secret keys and a multiple word encoding scheme.

Chapter 3

Data Hiding in Binary Images with

Distortion-Minimizing Capabilities by

Optimal Block Pattern Coding and

Dynamic Programming Techniques