Click here to Skip to main content
13,087,797 members (76,362 online)
Rate this:
 
Please Sign up or sign in to vote.
See more:
byteOut= new ByteArrayOutputStream();
              byteArrayIn= new byte[inputFileSize];
            DataInputStream in= new DataInputStream(new FileInputStream(masterFile));
            in.read(byteArrayIn, 0, inputFileSize);
            in.close();
            byte tempByte[]= new byte[4];
            for(i=24, j=0; i>=0; i-=8, j++)
            {
                tempInt= inputFileSize;
                tempInt>>= i;
                tempInt&= 0x000000FF;
                tempByte[j]= (byte) tempInt;
            }
 
            embedBytes(tempByte);
 


    private static void embedBytes(byte[] bytes)
    {
        int size= bytes.length;
 
        for(int i=0; i< size; i++)
        {
            byte1= bytes[i];
            for(int j=6; j>=0; j-=2)
            {
                byte2= byte1;
                byte2>>= j;
                byte2&= 0x03;
 
                byte3= byteArrayIn[inputOutputMarker];
                byte3&= 0xFC;
                byte3|= byte2;
                byteOut.write(byte3);
                inputOutputMarker++;
            }
        }
    }

Can any1 Please explain me the bold code.I know that the embed bytes is hiding data in 2 LSB.Can any1 please guide me to hide data in 1 LSB
Posted 3-Apr-12 5:47am
Updated 22-Mar-16 20:00pm
Comments
TorstenH. 4-Apr-12 3:08am
   
where is that coming from? These are byte operations.
Member 12910589 6-Mar-17 5:45am
   
how do u say that this is 2 LSB technique????

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month


Advertise | Privacy |
Web01 | 2.8.170813.1 | Last Updated 23 Mar 2016
Copyright © CodeProject, 1999-2017
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100