Program that can steganograph a picture (BMP)?

In summary: The palette is usually at the beginning of the file, and then the rest of the file will hold the information on the pixels. The 8 bits are used to hold the number of the colour in the palette. For 24 bit pictures, the colour of each pixel is actually stored in the file, 3 bytes per pixel. So the first byte would be the blue value, the second byte would be the green value, and the third byte would be the red value. This is called the RGB format. In summary, pictures with 8 bits per pixel use a palette to map colours, while pictures with
  • #1
hadi amiri 4
98
1
can anyone write a program that can steganograph a picture (BMP)?
or any seggestion?
 
Technology news on Phys.org
  • #2


Many people can.

Question is so vague it is hard to guess what you are really looking for.
 
  • #3


i am taking a c course in university and the in the third section of class professor announced the project of the term every body got shocked .
i have 3 about 30 days to find the algorithm and general solution but i don't know how to start?
can you help me?
 
  • #4


Plenty of ideas just after reading wikipedia article, just be creative.
 
  • #5


wikipedia is very general it dosen't give a starting point
 
  • #6


hadi amiri 4 said:
wikipedia is very general it dosen't give a starting point
Yes it does. It tells you what a stenograph is (a coded image), and gives you multiple examples. There's bit replacement, ciphering, explicit letters, etc. The digital stenograph paragraph is basically a list of ways to do your project.
 
  • #7


my teacher advised me a way which name's was "spatial" anybody knows what it is?:rolleyes:
 
  • #8


hadi amiri 4 said:
i am taking a c course in university and the in the third section of class professor announced the project of the term every body got shocked .
I sometimes worry that not having a CS degree I'm not going to get more work as a programmer - then something cheers me up.
 
  • #9


mgb_phys said:
I sometimes worry that not having a CS degree I'm not going to get more work as a programmer - then something cheers me up.

I thought this thread had something to do with dinosaurs at first. Either way, good stuff.

learn something new everyday
 
  • #10


hadi amiri 4 said:
my teacher advised me a way which name's was "spatial" anybody knows what it is?
Spatial just means space, and from what clicking three links tells me, the technique involves hiding the secret in a certain region (space) in the picture the spatial domain. Just do a little bit of googling. It pulls up useful things like a http://debii.curtin.edu.au/~vidy/publications/INC_2004_Disguising%20Text%20Cryptography%20using%20Image%20Cryptography.ppt. .

Images 101:
Digital images are composed of two main parts: the meta data, and the binary image data. The binary image data is mapped to colors/images based on the file formats and the specifications(rules) that go with that format. You can hide stuff in the meta data, the raw data, or you can tack stuff on (hide it in the file in such a way that it's not visible to the eye or on a cursory look at the file.) Your professor is telling you to mess with the actual image, which is the binary raw data.
 
Last edited by a moderator:
  • #11


after doing some searching i realized that the LSB method is very suitable for my project the problem is that i coulden't find any complete algorithm for this.
i was wondering does anybody knows the complete algorithm of LSB method?
 
  • #12


Do you know what LSB is? There is no need for any special alogorithm, it can be coded in no time.
 
  • #13


hadi amiri 4 said:
i was wondering does anybody knows the complete algorithm of LSB method?
As borek said, the LSB method is in the name. LSB stands for least significant bit. You should be able to manipulate the LSB on your own, but google also pulls up some stuff.

A LSB steganography detection algorithm<-just cite them.
 
  • #14


LSB method has a simple explanation but when we want to implement it to a BMP image with C it doesen't become as easy as you said i don't know how to start and how should i start coding i have no starting point and that's terrible!
can anyone give more help please?:blushing:
 
  • #15


Look for the internal structure of the BMP file in MSDN, find out where the data lies and how it is organized. It is a pretty simple format, especially for RGB bitmaps.
 
  • #16


Borek said:
Look for the internal structure of the BMP file in MSDN, find out where the data lies and how it is organized. It is a pretty simple format, especially for RGB bitmaps.

how languages treat the bmp files?
do they treat diffrently?
i mean how a language like c treat a bmp file?
 
  • #17


hadi amiri 4 said:
how languages treat the bmp files?
do they treat diffrently?
i mean how a language like c treat a bmp file?

That's entirely dependent on you. A BMP file is just byte-sized data like any other file. (If you don't tell an application to interpret it as bitmap data, it will happily try to read it as if it were sound or text or whatever. A byte set as 64 (01000000) can appear as a dark red, a G note or an '@' character.) Your program will read in the data byte by byte; it is up to you to understand what the bytes mean by understanding the internal format of a .BMP file.
 
  • #18


hadi amiri 4 said:
i am taking a c course in university

hadi amiri 4 said:
how languages treat the bmp files?
do they treat diffrently?
i mean how a language like c treat a bmp file?

faint.gif
 
Last edited by a moderator:
  • #19


DaveC426913 said:
it is up to you to understand what the bytes mean by understanding the internal format of a .BMP file.
Which is where Borek's suggestion of combing MSDN came in. He was suggesting that you look up the internal file format so that you can figure out how to process the file. As your programming skills come off as somewhat weak, I suggest you use a C/C++ library for bitmap manipulation.

MSDN Bitmap Class
 
  • #20


thanks for you'r suggestions i will come back soon with:wink: new questions.
 
  • #21


a 24 bit pticture uses 3 bytes for a pixel like this(11111111,11111111,11111111) but a 8 bit picture uses a byte for showing a pixel like this (11111111) the question is that in 24 bit pics first 8 bits are (?) for blue and next 8 bits for green and finally for red.

how the RGB is for 8bit pixels?
 
  • #22


hadi amiri 4 said:
a 24 bit pticture uses 3 bytes for a pixel like this(11111111,11111111,11111111) but a 8 bit picture uses a byte for showing a pixel like this (11111111) the question is that in 24 bit pics first 8 bits are (?) for blue and next 8 bits for green and finally for red.

how the RGB is for 8bit pixels?

Pictures that are 256 colours use what is called a palette. A palette will map each colour to a unique colour (ie 24-bit). There is theory in reducing 24-bit colour to 8 bit colour but that's for another thread.
 
  • #23


This is so called indexed color, number you see is an index to palette which is somewhere at the beginning of the file.

Which is precisely described in the BMP format specification which you were asked to read. Reading hurts?
 

1. What is steganography and how does it relate to a BMP picture?

Steganography is the practice of concealing secret information within a seemingly harmless medium. A BMP (Bitmap) picture is a common image format that can be used to hide data through steganography techniques.

2. How does a program steganograph a BMP picture?

A program that can steganograph a BMP picture uses algorithms to embed data into the pixels of the image without visibly altering the image. These algorithms can vary, but they typically manipulate the least significant bits of the pixels to hide the data.

3. Is it possible to detect if a BMP picture has been steganographed?

It can be difficult to detect steganography in a BMP picture, as the changes made to the image are often imperceptible. However, there are certain techniques and tools that can be used to analyze the image and potentially uncover hidden data.

4. What types of data can be hidden in a BMP picture using steganography?

A variety of data can be hidden in a BMP picture, including text, images, audio, and video files. The size and complexity of the data that can be hidden may depend on the size and resolution of the BMP picture.

5. Is steganography illegal?

The use of steganography itself is not illegal, but it can be used for illegal purposes such as hiding sensitive or illegal information. The legality of steganography may also vary by country, so it is important to understand and follow any applicable laws and regulations.

Similar threads

  • Computing and Technology
Replies
15
Views
1K
  • Programming and Computer Science
Replies
9
Views
1K
  • Programming and Computer Science
Replies
4
Views
1K
  • Programming and Computer Science
Replies
1
Views
2K
  • Programming and Computer Science
2
Replies
37
Views
2K
  • Programming and Computer Science
Replies
22
Views
919
  • Programming and Computer Science
Replies
2
Views
1K
  • Programming and Computer Science
Replies
1
Views
2K
  • Programming and Computer Science
Replies
2
Views
2K
  • Programming and Computer Science
Replies
12
Views
1K
Back
Top