Results 1 to 1 of 1

Thread: text based Stegnograph : LSB new twist Share/Save - My123World.Com!

  1. #1
    Security Researcher
    Join Date
    May 2011
    Location
    Pune, Maharashtra, India
    Posts
    237
    Blog Entries
    1

    text based Stegnograph : LSB new twist

    Today i am going to discuss about a simple twist in existing Stegnography and text base data hiding techniques. While creating challenges for Preconference hacking challenge “HACKIM” for nullcon conference. we cameup with text based LSB hiding challenge as crypto challenge part 5. today i am releasing tools i used to encoding and decoding such values.
    The basic prremise behind the tool is the simplest Image based Stegnographic technique where data is hidden in the least significant bit of the Pixel. Here we implemented the same principle on a normal text. The difference in both is in case of the image there is very less distortion and original image is looks pretty much the same however in text implementation the text looks a lot different.
    Example
    text to hide = a
    binary of text to hide = 01000001
    So for this we need a cover of size = 8char
    lets assume the cover is abcdefgh
    We will replace the LSB of each character with one bit of the text which we need to hide. starting from HSB to LSB of text.
    S.No Text binary converted Binary Final Text
    1 a 01100001 01100000 `
    2 b 01100010 01100011 c
    3 c 01100011 01100011 c
    4 d 01100100 01100100 d
    5 e 01100101 01100100 d
    6 f 01100110 01100110 f
    7 g 01100111 01100110 f
    8 h 01101000 01101001 i


    now this new text could be send across
    final text becomes `ccddffi
    Now as we can see the text is changed a lot however the important thing to remember is first and formost the cover is extracted and is most easily available.
    by just random variation of 1 and 0 you can get the actual value.
    Here is an funny tip
    Make your envelop text something interesting so that focus shifts on the envelope rather then the variation in data.
    For the above task to be simplified i wrote simple encode and decode scripts as listed below. (Scripts are at there crude level’s right now may improve on them if the need arises.)

    Encode
    Code:
    import sys Key="CoDe" Cover="Secret is hidden at /home/anant/" km="" if (len(Key) * 8) == len(Cover): print "Original : " + Cover for k in Key: km += bin(ord(k))[2:].zfill(8) sys.stdout.write("Conceled : ") i=0 for c in Cover: y=bin(ord(c))[2:].zfill(8) s = list(y) s[7]=km[i] i+=1 sys.stdout.write(chr(int('0b' + "".join(s),2))) print "" else: print "Invalid Cover Size : " + str(len(Cover)) + " : " + str((len(Key) * 8))
    Decoding

    Code:
    import sys crypt="Rebrdt!ir!iheeeo at .inld/an`ot/" cnt=0 decode=list() #print len(crypt) if (len(crypt) % 8) == 0: for c in crypt: y=bin(ord(c)) decode.append(y[len(y)-1]) cnt = cnt + 1 if (cnt % 8 == 0): sys.stdout.write(chr(int('0b' + "".join(decode),2))) decode = [] else: print "Invalid Input" print " "
    Hope people might find some use of this somewhere..




    Codes are available here
    LSB new twist : text based Stegnograph | Anant Shrivastava : Techno Enthusiast
    Last edited by Anant Shrivastava; 03-21-2012 at 03:08 PM.
    Website :
    To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

    Blog :
    To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •