Anda di halaman 1dari 20



Submitted To G.B.T.U Lucknow in partial fulfillment for awarding Of the degree of Bachelor of Technology in Computer Science

Mr. Ankit Sharma (Department of Computer science)

Rohit Sharma B.TECH. 3rd YEAR(CS) ( 0910310034)

Shobhit Institute of Engineering &Technology Gangoh, District:Saharanpur,Uttar Pradesh (College code:103 Affiliated To GBTU,Lucknow)

Concentration, dedication, hard work and application are essential but not the only factors to achieve the desired goal. These must be supplemented by guidance, assistance and co-operation of people to make it a success. Many people have given their precious ideas and invaluable time to enable me to carry on my seminar report. I am deeply indebted to all of them for their excellent ideas and suggestion. I offer my sincere thanks to all the persons who are associated with this seminar.



This is to certify that Mr.ROHIT SHARMA student of B.Tech (C.S) 6th Semester in S.I.E.T, Gangoh has worked under my guidance and supervision on the seminar entitled Steganography for the purpose of her 6th semester seminar as per the guidelines of G.B.T.U, Lucknow. While forwarding the seminar report on the mentioned topic above, I certify that the candidate has completed their work in the prescribed period and has submitted satisfactory report.

Mr. Ankit Sharma

(Seminar Guide)





1. 2.

INTRODUCTION REQUIREMENT Capacity Imperceptibility Requirement

6 6

3. 4.


7 7

5. 6.


11 12








Introduction Requirement




















Digital communication has become an essential part of infrastructure nowadays, a lot of applications are Internet-based and in some cases it is desired that the communication be made secret. Two techniques are available to achieve this goal: one is cryptography, where the sender uses an encryption key to scramble the message, this scrambled message is transmitted through the insecure public channel, and the reconstruction of the original, unencrypted message is possible only if the receiver has the appropriate decryption key. The second method is steganography, where the secret message is embedded in another message. Using this technology even the fact that a secret is being transmitted has to be secret There are two main directions in information hiding: protecting only against the detection of a secret message by a passive adversary, and hiding data so that even an active adversary cannot remove it. The classic situation, known as Simmons Prisoners Problem, is the following: Alice and Bob are in jail and try to discuss an escape plan, but all their communication can be observed by the warden. If their plan or the fact that they are discussing an escape plan were detected they would be transferred to a more secure prison. So they can only succeed if Alice can send messages to Bob so that the warden cant even detect the presence of a secret . There are a lot of real applications of steganography. For example during the 80s some confidential cabinet documents were passed to the English press so Margaret Thatcher had the word processors modified to encode the identity of the user into the word spacing of the documents so the identity of an information source could be found out

There are different requirements depending on the purpose of steganography:

Capacity : It is an important factor in captioning applications, when a lot of information should be embedded into a cover image, what is usually related to the current picture. For example when transmitting medical images, the personal data, and the diagnosis could be embedded into the same picture.

Imperceptibility: it is important when a secret communication occurs between two parties and the fact of a secret communication is kept to be secret.

Robustness: watermarking, fingerprinting and all copyright protecting applications

demand robust steganographic method, i.e. where the embedded information cannot be removed without serious degradation of the image Steganography embeds a secret message in a cover message, this process is usually parameterized by a stego-key, and the detection or reading of an embedded information is possible only having this key

Embedding information (plaintext) within other seemingly harmless information (cover text) in such a way that no one but the intended recipient would try to retrieve it.


transforming information (plaintext) into other unintelligible information (cipher text) such that no one but the intended recipient would be able to retrieve it

Further differences Steganography

hide, without altering obfuscates the fact of communication, not the data preventative - deters attacks

alter, without hiding obfuscates the data, not the fact of communication curative - defends attacks


_ Subset _ Null cipher _ Bacon cipher



Dear George; Greetings to all at Oxford. Many thanks for your letter and for the summer examination package. All Entry Forms and Fees Forms should be ready

for final dispatch to the Syndicate by Friday 20th or at the very latest, Im told by the 21st. Admin has improved here, thought theres room for improvement still, just give us all two or three more years and well really show you! Please dont let these wretched 16+ proposals destroy your basic O and A pattern. Certainly this sort of change, if implemented immediately, would bring chaos. Sincerely yours; Imagine a package is being prepared for you. This tells you when and where you can get it: Dear George; Greetings to all at Oxford. Many thanks for your letter and for the summer examination package. All Entry Forms and Fees Forms should be ready for final dispatch to the Syndicate by Friday 20th or at the very latest, Im told by the 21st. Admin has improved here, thought theres room for improvement still, just give us all two or three more years and well really show you! Please dont let these wretched 16+ proposals destroy your basic O and A pattern. Certainly this sort of change, if, implemented immediately would bring chaos. Sincerely yours 11-word message in 93-word cover text (8.45 ratios haystack to needle) cover text plaintext



same plaintext


Havefun aabbb aaaaa baabb aabaa aabab baabb abbaa

BUrgeR WITH fRIes TAsTY BUt Not FOr hEalTH

7-character message in 35-character cover text (5.00 ratio) uses a bilateral alphabet each letter has 2 possible fonts (or cases)

his one?
USc atHlETICS is SURpasSed BY ComPuTer ScIenCE
Hint: starts with same letter as previous because BUrge == UScat

Doing it with computers

Steganography hiding a file inside of another
typically hiding text inside of a media file normally used for the transportation of secretive information

Idea is that the least significant bit of a byte can change with little change to the overall file _ Consider a 8-bit grey scale image One pixel of information is stored using 8 bits. There are 256 different variations of grey. 10010110

_ Change in the LSB information of some area of the image will not be noticeable by naked eye. _ Utilizing this fact the message is embedded 10101101 00101010 10100010 10010001 10 10101100 00101011 10100011 10010000 10 LSB advantages and Advantages Does not change the size of the file Is harder to detect than other steganography techniques Disadvantages Normally must use the original program to hide and reveal data If the picture with the hidden information is converted to another format, then the hidden data may be lost

Fingerprinting and Watermarking

so that one does not have to store distinctly the images, and connected information. When the purpose is the protection of intellectual property, we can make a distinction between fingerprinting and watermarking. In the case of watermarking copyright information is embedded in a digital media, and this media is transmitted to users. Fingerprinting embeds separate mark in the copies of digital media, this embedded information serves as a serial number, and it can be detected who supplied this media to third parties. Nowadays steganography is more and more important in publishing and broadcasting industries, where the embedding of copyright marks or serial numbers is needed in digital films, photos and other multimedia products. Some steganographic applications are able to scan the Internet, and to detect a copy of a specific image, or the modified image is published so an illegal usage of a copyrighted image can be detected. In the case of audio materials, the automatic monitoring of radio advertisements is also possible, the advertiser can automatically count how many times a specific advertisement was transmitted by a given radio station. Another possible application in the case of still images is to embed captions and other information into the picture

Least Significant Bit Insertion

Usually 24-bit or 8-bit files are used to store digital images. The former one provides more space for information hiding, however, it can be quite large. The colored representations of the pixels are derived from three primary colors: red, green and blue. 24-bit images use 3 bytes for each pixel, where each primary color is represented by 1 byte. Using 24-bit images each pixel can represent 16,777,216 color values. We can use the lower two bits of these color channels to hide data, then the maximum color change in a pixel could be of 64-color values, but this causes so little change that is undetectable for the human vision system. This

simple method is known as Least Significant Bit insertion [4], [15]. Using this method it is possible to embed a significant amount of information with no visible degradation of the cover image. Several versions of LSB insertion exist. It is possible to use a random number generator initialized with a stego-key and its output is combined with the input data, and this is embedded to a cover image. For example in the presence of an active warden it is not enough to embed a message in a known place (or in a known sequence of bits) because the warden is able to modify these bits, even if he cant decide whether there is a secret message or not, or he cant read it because it is encrypted. The usage of a stego-key is important, because the security of a protection system should not be based on the secrecy of the algorithm itself, instead of the choice of a secret key [11]. The LSB inserting usually operates on bitmap images. Steganos for Win252 J. LENTI Original (cover) pixel Masked pixel: Stego pixel: Secret information: RGB RGB DOWS and WBSTEGO are LSB inserting software products which are able to embed data (in clear or encrypted format) in a bitmap image. The embedded data cannot be considered as a watermark, because even if a small change occurs in a picture (cropping, lossy compression, and color degradation) the embedded information will be lost although the change which is occurred during the embedding process is invisible. The original bitmap picture which was used during the test was a picture 1024 768 pixel in size, with 16M colors (it is a standard test picture in image processing). We made a test using bitmap images. The following pictures will STEGANOGRAPHIC METHODS 253 show the results using different software with different embedded data size: original watch.bmp 100 kb embedded information with Steganos for Windows 200 kb embedded information with wbstego the difference between the original and the modified (100 kb Steganos for Win.) the difference between the original and the modified(200 kb wbstego) When these pictures were modified all the embedded information was lost. These softwares do not use any redundancies during embedding, the embedding process does not apply any error correcting codes. In this case the error correction and the redundancies are useful only if the image is modified in bmp format. If a lossy compression technique is applied, usually all the lsb bits are lost, therefore all embedded information is also destroyed.

Public Key Steganography


As another possible way the algorithm requires the pre-existence of a shared secret key to designate pixels which should be tweaked. In this case both the sender and the receiver must have this secret. Suppose that the communicating parties do not have the opportunity to agree a secret key, but one of them (e.g. Bob) has a private/public key pair, and his partner knows the public key. In the case of a passive warden Alice knowing Bobs public key encrypts her message with this key, embeds it in a known channel (known position in the cover media), and sends 254 J. LENTI it to Bob. Bob cannot be sure whether the channel contains a hidden message, but he can try to decrypt the random-looking string-sequence with his private key, and check whether it is a message or not [5]. Another approach is the cover image escrow scheme (or source extraction), where the extractor is required with the original cover image, and the cover image is subtracted from the stego image before the extraction of the embedded information. In this scheme, the user cannot read the embedded data, it is only possible to have the original unmodified picture, but these types of algorithms are characterized as robust against signal distortions.

Transform Domain Based Steganography

The destination extraction algorithms can be divided into two groups: spatial/time domain and transform domain techniques. In the former case information is embedded in the spatial domain in the case of images, and in time domain in the case of audio materials. The transform domain methods operate in the Discrete Cosine Transform, Fourier or wavelet transform domains of the host signal [2], [11], and [15]. The Patchwork algorithm (developed at the MIT) selects random pairs of pixels, and increases the brightness of the brighter pixel and decreases the brightness of the other. This algorithm shows a high resistance to most no geometric image modifications. If it is important to provide a protection against filtering attacks, then the information hiding capacity is limited [4]. High color quality images are compressed usually using a lossy compression method as, for example, in the case of Jpeg images. In Jpeg algorithm the pixels are first transformed into a luminance-chrominance space. The chrominance is then down sampled it is possible because the HVS (Human Vision System) is less sensitive to chrominance changes than to luminance changes so the volume of the data is reduced. Discrete Cosine Transform is then applied on the groups of 8 8 pixels. The next step causes the most loss in the case of Jpeg, where the coefficients are scalarly quantized (it is possible because if we reduce the coefficients of higher frequencies to zero, the changes to the original image will cause only small changes that a human viewer could not detect under normal circumstances). The final steps are lossless, when these reduced coefficients are also compressed and a header is added to the Jpeg image. (See a detailed description in [5]). Steganographic applications usually operate after the quantization step, for example JpegJsteg, and SysCoP. SysCoP uses a position sequence generator. The inputs of the generator are the image data and user key, the output is a position sequence for selecting blocks where the code is embedded [14], [2]. The block consists in this case of 8 8 pixels, it can be contiguous the block is a square in the image or distributed, where the pixels are randomly selected. A label bit is embedded through setting specific relationship among three quantized elements of a block, and the algorithm contains a checking mechanism to test whether the actual block is capable or not to store this information, how big

STEGANOGRAPHIC METHODS 255 modification is needed to store one bit information among these pixels. A popular method in a frequency domain is to modify the relative size of two or more DCT coefficients in an image block, embedding one bit information in each block. The two coefficients should correspond to cosine functions with middle frequencies which mean that the information is stored in a significant part of the signal. The algorithm should be robust against Jpeg compression, so the DCT coefficients with equal quantization values should be chosen, according to the quantization table of Jpeg. In the frequency domain the embedding process can usually hide less information into pictures, there is not such an exact limit in the size of the embedded object as in the case of LSB insertion, where the number of pixels, and the color depth determine the maximum size of the embedded data (and it was sure, that the changes occurred during embedding will be invisible). In the case of a transform domain operation the embedding process can cause visible changes if the embedded data size is too big, and the limit where a given embedded data size does not change the visual properties of the image is image dependent. The following figures show the result of the embedding process in transform domain. 30 kb of embedded data with jhps 50 kb of embedded data with jhps 60 kb of embedded data with jhps In the case of a watch test picture 50 kb embedded data (and above) modifies the visible properties of the image, so when the stego-image is compared with the original one it is possible to recognize a modification.

Steganography In Images
In this , we aim to present a general introduction to steganography or data-hiding as it is sometimes just known. We then turn to data-hiding in images. When examining these datahiding techniques, we bear in mind Bender's specifications, such as degradation of the cover data must be kept to a minimum, and the hidden data must be made as immune as possible to possible attack from manipulation of the cover data. Steganography in images has truly come of age with the invention of fast, powerful computers. Software is readily available off the Internet for any user to hide data inside images. This softwares are designed to fight illegal distribution of image documents by stamping some recognizable feature into the image. The most popular technique is Least Significant Bit insertion, which we will look at. Also, we look at more complex methods such as masking and filtering, and algorithms and transformations, which offer the most robustness to attack, such as the Patchwork method which exploits the human eye's weakness to luminance variation. we will take a brief look at steganalysis, the science of detecting hidden messages and destroying them. We conclude by finding that steganography offers great potential for securing of data copyright, and detection of infringers. Soon, through steganography,personal messages, files, all artistic creations, pictures, and songs can be protected from piracy

Steganography, from the Greek, means covered, or secret writing, and is a long-practiced form of hiding information. Although related to cryptography, they are not the same. Steganography's intent is to hide the existence of the message, while cryptography scrambles a message so that it cannot be understood. More precisely, ``the goal of steganography is to hide messages inside other harmless messages in a way that does not allow any enemy to even detect that there is a second secret message present.'' Steganography includes a vast array of techniques for hiding messages in a variety of media. Among these methods are invisible inks, microdots, digital signatures, covert channels and spread-spectrum communications. Today, thanks to modern technology, steganography is used on text, images, sound, signals, and more. In the following sections we will try to show how steganography can and is being used through the media of images. KERCKOFF PRINCIPLE: In cryptography. This principle states that the security of the system has to be based on the assumption that the enemy has full knowledge of the design and implementation details of the steganographic system. The only missing information for the enemy is a short, easily exchangeable random number sequence, the secret key. STEGANOGRAPHY DIAGRAMATIC FLOW: Information to be hidden

Stego tool
Law enforcement may intercept but doesnt know that document is hidden Hidden document


Stego tool
When embedding data, it is important to remember the following restrictions and features: The cover data should not be significantly degraded by the embedded data, and the embedded data should be as imperceptible as possible. (This does not mean the embedded data needs to be invisible; it is possible for the data to be hidden while it remains in plain sight.) The embedded data should be directly encoded into the media, rather than into a header or wrapper, to maintain data consistency across formats. The embedded data should be as immune as possible to modifications from intelligent attacks or anticipated manipulations such as filtering and resembling. Some distortion or degradation of the embedded data can be expected when the cover data is modified. To minimize this, error correcting codes should be used.

The embedded data should be self-clocking or arbitrarily re-entrant. This ensures that the embedded data can still be extracted when only portions of the cover data are available. For example, if only a part of image is available, the embedded data should still be recoverable. User can get the hidden information using password In this section we deal with data encoding in still digital images. In essence, image steganography is about exploiting the limited powers of the human visual system (HVS). Within reason, any plain text, cipher text, other images, or anything that can be embedded in a bit stream can be hidden in an image. Image steganography has come quite far in recent years with the development of fast, powerful graphical computers, and steganographic software is now readily available over the Internet for everyday users.

To a computer, an image is an array of numbers that represent light intensities at various points, or pixels. These pixels make up the image's raster data. An image size of 640 by 480 pixels, utilizing 256 colors (8 bits per pixel) is fairly common. Such an image would contain around 300 kilobits of data. Digital images are typically stored in either 24-bit or 8-bit per pixel files. 24-bit images are sometimes known as true color images. Obviously, a 24-bit image provides more space for hiding information; however, 24-bit images are generally large and not that common. A 24-bit image 1024 pixels wide by 768 pixels high would have a size in excess of 2 megabytes. As such, large files would attract attention were they to be transmitted across a network or the Internet. Image compression is desirable. However, compression brings with it other problems that shall be explained shortly. Alternatively, 8-bit color images can be used to hide information. In 8-bit color images, (such as GIF files), each pixel is represented as a single byte. Each pixel merely points to a color index table, or palette, with 256 possible colors. The pixel's value, then, is between 0 and 255. The image software merely needs to paint the indicated color on the screen at the selected pixel position. If using an 8-bit image as the cover-image, many steganography experts recommend using images featuring 256 shades of gray as the palette, for reasons that will become apparent. Grey-scale images are preferred because the shades change very gradually between palette entries. This increases the image's ability to hide information. When dealing with 8-bit images, the steganographer will need to consider the image as well as the palette. Obviously, an image with large areas of solid color is a poor choice, as variances created by embedded data might be noticeable. Once a suitable cover image has been selected, an image encoding technique needs to be chosen.

Image Compression:
Image compression offers a solution to large image files. Two kinds of image compression are lossless and lossy compression. Both methods save storage space but have differing effects on any uncompressed hidden data in the image. Lossy compression, as typified by JPEG (Joint Photographic Experts Group) format files, offers high compression, but may not maintain the original image's integrity. This can impact negatively on any hidden data in the

image. This is due to the lossy compression algorithm, which may ``lose'' unnecessary image data, providing a close approximation to high-quality digital images, but not an exact duplicate. Hence, the term``lossy'' compression. Lossy compression is frequently used on true-color images, as it offers high compression rates. Lossless compression maintains the original image data exactly; hence it is preferred when the original information must remain intact. It is thus more favored by steganographic techniques. Unfortunately, lossless compression does not offer such high compression rates as lossy compression. Typical examples of lossless compression formats are CompuServes GI(Graphics Interchange Format) and Microsoft's BMP (Bitmap) format.

Image Encoding Techniques:

Information can be hidden many different ways in images. Straight message insertion can be done, which will simply encode every bit of information in the image. More complex encoding can be done to embed the message only in ``noisy'' areas of the image that will attract less attention. The message may also be scattered randomly throughout the cover image. . The most common approaches to information hiding in images are: Least significant bit (LSB) insertion Masking and filtering techniques Algorithms and transformations Each of these can be applied to various images, with varying degrees of success. Each of them suffers to varying degrees from operations performed on images, such as cropping, or resolution decrementing, or decreases in the color depth.


One of the most common techniques used in steganography today is called least significant bit (LSB) insertion. This method is exactly what it sounds like; the least significant bits of the cover-image are altered so that they form the embedded information. The following example shows how the letter A can be hidden in the first eight bytes of three pixels in a 24-bit image. Pixels: (00100111 11101001 11001000) (00100111 11001000 11101001) (11001000 00100111 11101001) A: 10000001 Result: (00100111 11101000 11001000) (00100110 11001000 11101000) (11001000 00100111 11101001) The three underlined bits are the only three bits that were actually altered. LSB insertion requires on average that only half the bits in an image be changed. Since the 8-bit letter A

only requires eight bytes to hide it in, the ninth byte of the three pixels can be used to hide the next character of the hidden message. A slight variation of this technique allows for embedding the message in two or more of the least significant bits per byte. This increases the hidden information capacity of the cover-object, but the cover-object degrades more statistically, and it is more detectable. Other variations on this technique include ensuring that statistical changes in the image do not occur. Some intelligent software also checks for areas that are made up of one solid color. Changes in these pixels are then avoided because slight changes would cause noticeable variations in the area.

Advantages of LSB Insertion:

Major advantage of the LSB algorithm is it is quick and easy. There has also been steganography software developed which work around LSB color alterations via palette manipulation. LSB insertion also works well with gray-scale images. A slight variation of this technique allows for embedding the message in two or more of the least significant bits per byte. This increases the hidden information capacity

Masking and filtering :

Masking and filtering techniques hide information by marking an image in a manner similar to paper watermarks. Because watermarking techniques are more integrated into the image, they may be applied without fear of image destruction from lossy compression. By covering, or masking a faint but perceptible signal with another to make the first non-perceptible, we exploit the fact that the human visual system cannot detect slight changes in certain temporal domains of the image. Technically, watermarking is not a steganographic form. Strictly, steganography conceals data in the image; watermarking extends the image information and becomes an attribute of the cover image, providing license, ownership or copyright details. Masking techniques are more suitable for use in lossy JPEG images than LSB insertion because of their relative immunity to image operations such as compression and cropping.

Algorithms and transformations:

Because they are high quality color images with good compression, it is desirable to use JPEG images across networks such as the Internet. Indeed, JPEG images are becoming abundant on the Internet. JPEG images use the discrete cosine transform (DCT) to achieve compression. DCT is a lossy compression transform, because the cosine values cannot be calculated precisely, and rounding errors may be introduced. Variances between the original data and the recovered data depends on the values and methods used the calculate the DCT.Images can also be processed using fast Fourier transformation and wavelet transformation. Other properties such as luminance can also be utilised. The HVS has a very low sensitivity to small changes in luminance, being able to discern changes of no less than one part in thirty for random patterns. This figure goes up to one part in 240 for uniform regions of an image.

Modern steganographic systems use spread-spectrum communications to transmit a narrowband signal over a much larger bandwidth so that the spectral density of the signal in the channel looks like noise. The two different spread-spectrum techniques these tools employ are called directsequence and frequency hopping. The former hides information by phase-modulating the data signal (carrier) with a pseudorandom number sequence that both the sender and the receiver know. The latter divides the available bandwidth into multiple channels and hops between these channels (also triggered by a pseudorandom number sequence). The Patchwork method is based on a pseudorandom, statistical process that takes advantage of the human weaknesses to luminance variation. Using redundant pattern encoding to repeatedly scatter hidden information throughout the cover image, like a patchwork, Patchwork can hide a reasonably small message many times in a image. In the Patchwork method, n pairs of image points (a,b) are randomly chosen. The brightness of a is decreased by one and the brightness of b is increased by one. For a labeled image, the expected value of the sum of the differences of the n pairs of points is then 2n. Bender shows that after JPEG compression, with the quality factor set to 75, the message can stillbe decoded with an 85 This algorithm is more robust to image processing such as cropping and rotating, but at the cost of message size. Techniques such as Patchwork are ideal for watermarking of images. Even if the image is cropped, there is a good probability that the watermark will still be readable. Other techniques encrypt and scatter the hidden throughout the image in some predetermined manner. It is assumed that even if the message bits are extracted, they will be useless without the algorithm and stego-key to decode them. Although such techniques do help protect against hidden message extraction, they are not immune to destruction of the hidden message through image manipulation.

These are the steps followed in image hiding while transmission and de noising after receiving: 1. Get a cover image (publicly accessible material) 2. Take the information to be hidden (message or image) 3. Combine cover image with the information to be hidden(we follow LSB algorithm for this) 4. While transmission it will be corrupted by noise 5. Use any of the filtering methods, ex: wiener filtering for de noising in wavelet domain 6. Here filter is employed in order to remove the noise 7. During extraction a password check is provided 8. If password is matched then extraction of hidden information

In this paper, we take an introductory look at steganography. Several methods for hiding data in, images were described, with appropriate introductions to the environments of each medium, as well as the strengths and weaknesses of each method.The key algorithm for designing the steganography system has been dealt. Most data-hiding systems take advantage of human perceptual weaknesses, but have weaknesses of their own. We conclude that for now, it seems that no system of data-hiding is totally immune to attack.

However, steganography has its place in security. Though it cannot replace cryptography totally, it is intended to supplement it. Its application in watermarking and fingerprinting, for use in detection of unauthorised, illegally copied material, is continually being realised and developed. Also, in places where standard cryptography and encryption is outlawed, steganography can be used for covert data transmission. Steganography can be used along with cryptography to make an highly secure data high way.Formerly just an interest of the military, Steganography is now gaining popularity among the masses. Soon, any computer user will be able to put his own watermark on his artistic creations.

1.M.Kuhn. Steganography mailing list. WWW:, 1995. Private Site, Hamburg, Germany 2. N.F. Johnson. Steganography. WWW: George Mason University 3. C. Kurak and J. McHugh.

4. W. Bender, D. Gruhl, N. Morimoto, and A. Lu. Techniques for data hiding. In IBM Systems Journal, Vol. 35, Nos. 3-4, pages 313-336, February 1996.