Program that can steganograph a picture (BMP)?

  • Thread starter Thread starter hadi amiri 4
  • Start date Start date
  • Tags Tags
    Picture Program
AI Thread Summary
The discussion revolves around creating a program for steganography in BMP images, with a focus on the least significant bit (LSB) method. Participants express confusion about the project requirements and seek guidance on algorithms and starting points. The concept of spatial steganography is introduced, emphasizing the need to manipulate the binary data of images. Suggestions include researching BMP file structures and utilizing resources like MSDN for understanding image data formats. The conversation highlights the importance of grasping the internal workings of BMP files to effectively implement steganography techniques.
hadi amiri 4
Messages
98
Reaction score
1
can anyone write a program that can steganograph a picture (BMP)?
or any seggestion?
 
Technology news on Phys.org


Many people can.

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


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?
 


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


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


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.
 


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


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.
 


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?
 
Back
Top