HomeОбразованиеRelated VideosMore From: DrapsTV

Steganography Tutorial - Hiding Text inside an Image

518 ratings | 73260 views
This is a tutorial shows how we can write a small python program to hide and retrieve a message hidden inside a png image file. All Links and Slides will be in the description. Subscribe for more cool stuff! Slides & files - https://www.mediafire.com/folder/muzrl9brx0z7f/Odds%26Ends Python - http://python.org/ Ubuntu - http://www.ubuntu.com/ Twitter: https://twitter.com/DrapsTV Facebook: https://www.facebook.com/DrapsTV If you like what you see be sure to subscribe and thumbs up!
Html code for embedding videos on your blog
Text Comments (192)
Anish Bhusal (1 month ago)
Set speed to 2.0 and you are okay to go :D
Satish Adabala (1 month ago)
hi i get an type error
Tech AD (2 months ago)
python 3.7 used For str2bin error occurs. TypeError: a bytes-like object is required, not 'str'
Tech AD (2 months ago)
Help me
Mike M (3 months ago)
Any chance you could remake the vid with update code using Python 3?
Faisal Morensya (10 days ago)
i've made it https://github.com/lloistborn/ldpc-img
Asad Saleem (3 months ago)
https://thephpzilla.blogspot.com/ Image steganography PHP code
Shane Callaghan (3 months ago)
Why does this only work with .png images? Why not use .jpg pictures as well?
Swapnil Siddharth (3 months ago)
thanks a lot! everything seems to work fine I am facing one problem: while decoding. the decoded message comes in strange words like @#2*( but actually they are normal Hello WOrld message! any help?
Pradityo Adi Wicaksono (5 months ago)
What is the name of this method?
Houssem Bzi (7 months ago)
excellent video thank you ! just one problem , im new to python and I have a steganography project for this monday , so if you can send us back this code but commented I would be most grateful ( the code isnt very clear ...)
Allen Spain (7 months ago)
How did you choose Blue digit from 0-5 as criteria to hide the bit?
Patryk Kotarski (8 months ago)
As soon as I heard your voice, i checked the account name looking for "LiveOverflow" haha
segun yanju (10 months ago)
What programming language was used in this programm
Joe Vande Vusse (8 months ago)
Python 2
B4bunny (10 months ago)
can you provide this in python 3
Yoshi (11 months ago)
Hey DrapsTV may I please have your permission to update your example here for use in a web app for my school project?
Aritra Nath (11 months ago)
Is it possible to save the modified image to a different file name? How can we do this?
Satadhi Halder (1 year ago)
man this is tough for me ! go u have some beginner videos ?
Romeo Santiago (1 year ago)
Watch my new video, friends...Geez. Facebook locked my boyfriend out of his account. Sometimes I felt that he suffered because of me. Because I was fighting the western intelligence agencies and he got involved... Sorry baby...Seems they were harassing him because they can't get to me... My poor boyfriend, got locked out of facebook for a crime he didn't commit. He simply liked my posts against the CIA. Is that evil? Well, I made this video to get revenge for you, my dear... https://youtu.be/ZvHcmXzxR4g
Bit Class (1 year ago)
how can i use your code in django?
René (1 year ago)
how to find a text hidden in image
Stephen Ouellette (1 year ago)
Hello, i'm getting a ton of information back when i use the decode function, b'1\x1f\xc51\x8d\x11`\xcd\xcd\x808\x17\x99G\x03]\xb2\x80\x1f:@\x19\x11Q\x86BN\xa1\x9ag\x05IE]\xc7\xcb\xe1H\xd2\xd8\x98\xa78\x10DPA/\x02P\x12\xb7\x05\xba0\x00,n\x15, \x00Yr8\x08\x00\x0brM\xff\xa3\x00\rq\xe1\xe6w\x89c\x8e\xd5\x01\xcb|&`\ and much more.. any idea as to why it would do this? it isnt showing an error, it just prints this and then ends.
Jerome Alve (1 year ago)
Why does the last hex digit have to end in 1,2,3,4,5 ? How do you know which pixel to decode after changing the values?
Andre Müller (1 year ago)
Thanks for this helpful tutorial! I got an error when I try to decode the message: File "steganohide.py", line 21, in bin2str message = binascii.unhexlify('%x' %(int('0b' + binary, 2))) ValueError: invalid literal for int() with base 2: '0b#99c1f#...... Has anyone an idea?
Yoshi (11 months ago)
str(bi.unhexlify('%x' % (int(binary, 2))), 'utf-8') You need to specify the encoding scheme in Python 3
Wisnu Ari (1 year ago)
Thanks for the video Very helpful in college assignments
Drew Santistevan (1 year ago)
I downladed the code and i get no errs but wan i do the command nothing happens no errs and no prompts
DrapsTV (1 year ago)
What OS are you running on?
shubham mishra (1 year ago)
is the main function same for windows as well?
DrapsTV (1 year ago)
Last time I checked it all worked fine on windows :)
Kamal Ashraf (1 year ago)
When decoding, how to detect if the image file contains the message? I get random special characters output even there is no hidden message in a picture. Please reply. Thanks.
Kamal Ashraf (1 year ago)
Okay I got the solution myself, when returning return bin2str(binary), instead, we should return "Can't find the hidden message" or something similar. This is working at least for me, so i can detect if there is a message to display or not.
shwetha rao (1 year ago)
elif (options.retr != None): ^ SyntaxError: invalid syntax using python 3.6. how to sovle this error?
Leo Williams (8 months ago)
Use 2.7
DrapsTV (1 year ago)
remove the brackets. :)
Sulthana Abdul Rahman (1 year ago)
is this possible only for png images? wil it support any other extensions?
Sulthana Abdul Rahman (1 year ago)
DrapsTV thank you
DrapsTV (1 year ago)
you can modify this code slightly to work with jpegs and gifs. just keep in mind you have to be careful not to let the compression do it's work. so set the subsampling to 0 when saving the jpeg. im.save('/path/to/image.jpg', format='JPEG', subsampling=0, quality=100)
Ibrahim Khaled (1 year ago)
Hi, i have this error "TabError: inconsistent use of tabs and spaces in indentation" when i execute python hide.py -e picture.png thanks you in advance
DrapsTV (1 year ago)
You can't mix "space bar" spaces and "TAB" key spaces in the one document. You need to use one or the other. This issue can happen from copy pasting the code and attempting to fix any indentation problems with the space bar, when the code was written with tabs not spaces.
shwetha rao (1 year ago)
i have the same error in line 88 parser.add_option line what do i do? please reply ASAP. thank you so much for the video. found it very helpful
Deepak Surya (1 year ago)
Enter a message to hide: hello Traceback (most recent call last): File "hide.py", line 99, in <module> Main() File "hide.py", line 92, in Main print(hide(options.hide, text)) File "hide.py", line 50, in hide r, g, b = hex2rgb(newpix) File "hide.py", line 11, in hex2rgb return tuple(map(ord, hexcode[1:].decode('hex'))) AttributeError: 'str' object has no attribute 'decode' this is the error i get, can anyone help me fix this?
Tech AD (2 months ago)
+Deepak Surya .
Tech AD (2 months ago)
Invalid literal for int() with base 16 Error shows
Deepak Surya (1 year ago)
DrapsTV thank you I'll try this
DrapsTV (1 year ago)
this is because you are using python 3, which changed how decode works. you will need to change that line to something like the following: return (int(hexcode[1:3], 16),int(hexcode[3:5], 16),int(hexcode[5:7], 16))
Deepak Surya (1 year ago)
+DrapsTV please help ASAP
Ibrahim Khaled (1 year ago)
for the last step before the test, what do you use to finish the coding step (to create the programme) ?
DrapsTV (1 year ago)
(Escape key) :wq This is essentially Command Write Quit. so it saves the python file and quits out of VIM and goes back to the command line.
Deinareia (1 year ago)
Just a note, this won't work in Python 3+ as it handles the conversions between hex, rgb, etc differently.
DrapsTV (1 year ago)
Nice work! :)
Deinareia (1 year ago)
Yes, that would be a nice solution. Also, in python 3, I found out that the binascii module is not needed, as it is possible to do it with the to/from_bytes methods. binary=bin(int.from_bytes(message.encode(),'big')) It may not be the pretties piece of code, but it works.
DrapsTV (1 year ago)
Indeed, however a better approach in python 3 would be to use the integer conversion. return (int(hexcode[1:3], 16),int(hexcode[3:5], 16),int(hexcode[5:7], 16))
saeed salimian (2 years ago)
hi , thanks for video . how much data can i store in image ? if i want to store a large text file is it possible ? what limits the amount of encode data ? thanks
Harsh Pandey (2 years ago)
not greater than the total size of the image
DrapsTV (2 years ago)
Using this method it's based on how many pixels the image has. if you were to use all 3 color channels in an image thats 256x256 pixels you could store about 20kb of data without compression. if you wanted to fit something bigger in another steganography tactic should be used. like storing the whole additional file after the PNG file terminator so that the file isn't corrupted just bigger.
s4w3d0ff (2 years ago)
Why use '1111111111111110' as a delimiter? What is the significance of this value?
Harsh Pandey (2 years ago)
delimitter is a technique which u can think of as when u measure the length of a dining table using a 6 inch scale then after every 6th inch u leave a mark so as to start from there the next time and so on and so forth.
DrapsTV (2 years ago)
I used it because it's a pattern that is not likely to ever occur within text that is ASCII.
Aditya Srivastava (2 years ago)
I had one question why does it wipe out the previous content that was stored when i execute as fresh.
DrapsTV (2 years ago)
Because of the way we are storing the information, if you wanted to append onto the end, then you would need to read out whats there then add onto the end then write it back out. you could modify it so the number of bytes is stored in the first byte allowing you to immediately know how much is there. then you can calculate where to continue writing new data in from.
Anshul Saraswat Kaul (2 years ago)
Any Java tutorials for Steganography, I tried hard but could not find a good one.
RajNikhil Marpu (2 years ago)
Is it Working on windows7?
DrapsTV (2 years ago)
you can use pip to instal it (why I linked the video) otherwise you cen manually install it via the PIL website. http://www.pythonware.com/products/pil/ did you trying googling python PIL ?
RajNikhil Marpu (2 years ago)
No, actually i need that PIL package link ,so that i can download it
DrapsTV (2 years ago)
Check out my video for python on windows, I go through how to install packages https://www.youtube.com/watch?v=01L1g6GUDz8
RajNikhil Marpu (2 years ago)
can you please suggest me that link to download PIL package
RajNikhil Marpu (2 years ago)
C:\Users\Admin\Python27>python hide.py -e client.png Traceback (most recent call last): File "hide.py", line 1, in <module> from PIL import Image ImportError: No module named PIL C:\Users\Admin\Python27>
Haroon Ramay (2 years ago)
Hey. Could you help me understand why did you use '1111111111111110' as a delimeter? Other than that I want to say I'm really grateful for this video and your other videos, they have been extremely helpful. Thanks :3
Haroon Ramay (2 years ago)
+DrapsTV Aight thanks. I'll listen more carefully. Sorry for being a bother. Cheers.
DrapsTV (2 years ago)
+Haroon Ramay I talk about it in the discussion video on the topic at around 2 min 20 seconds. https://www.youtube.com/watch?v=kOXKbK0o5OU
Haroon Ramay (2 years ago)
+DrapsTV Could I perhaps bother you for oneore problem. In your encode function, the loop for hex code in 1/2/3/4/5. Can I perhaps pick your brain on why are you using these values. I wasn't able to make sense of it.
Haroon Ramay (2 years ago)
+DrapsTV thanks for getting back. That is the reasoning I was thinking of but I wasnt sure. Thanks once again.
DrapsTV (2 years ago)
+Haroon Ramay it is incredibly un-likely that the pattern would occur naturally, so I used it as a delimiter. :)
Sherin Bennet (2 years ago)
I wanted to do video steganography. I followed the whole process how text is embedded into frame(image). And during extraction process i get "UnicodeDecodeError: 'utf8' codec can't decode byte 0xc2 in position 0: invalid continuation byte" or "Odd-length string" error. Actual process is after embedding I place the frame along with other frames and create a video. When i extract frames and subsequently extract data from that frame, i get this error. If you suggest me a solution, it would be greatly helpful. I use lossless codec while creating video
Sulthana Abdul Rahman (1 year ago)
please reply
Sulthana Abdul Rahman (1 year ago)
Sherin Bennet hey ..was the video steganography successfull using this code to hide text in frames?
Pankaj Kharkwal (2 years ago)
hey again what incorrect image mode means??
DrapsTV (2 years ago)
+Pankaj Kharkwal The only mode I put in there to support was png.
shubham mishra (2 years ago)
where can we get your another, many more tutorials?
shubham mishra (2 years ago)
awesome!!!!! a simple and awesome tutorial for staganography...
Khalil Z. Haltam (2 years ago)
hi , can we hide pdf file into an image by using python steganography ?? an we hide pdf file into an image ???
Harsh Pandey (2 years ago)
U can hide a pdf file into an Image by appending the checksum of the pdf file with that if the image and u r done
Khalil Z. Haltam (2 years ago)
+DrapsTV  How ?? in python !!  can you help me in this ?? connect with me here  [email protected]
DrapsTV (2 years ago)
+Khalil Z. Haltam Sure can :)
vipul sharma (2 years ago)
you didn't explain why u were doing some things.
DrapsTV (2 years ago)
+vipul sharma Which things would you like me to explain more? I omitted some things due to time constraints.
Sasank Srivatsav (2 years ago)
i m getting error while running """line 47 else: IndentationError: unident does not match any outer indentation level"""
Sasank Srivatsav (2 years ago)
+DrapsTV i did'nt understood bro plz help me out ASAP
DrapsTV (2 years ago)
+Sasank Srivatsav Make sure there is the same amount of spaces indicating the indent as the rest of the file.
Kirsten Meates (2 years ago)
When I run it i do not get any option for user input, I am using python 3.4.Any help is greatly appreciated!
DrapsTV (2 years ago)
+Kirsten Meates This is in python 2.7 using the Python Image Library (PIL). A fair bit of tweaking needs to be done to get this to work in python 3 using Pillow. (the python 3 compatible version of PIL) and some builtin changes means decoding hex is done a little differently.
Faisal Morensya (2 years ago)
Hi, thanks for the video. I have problem when write ur code in python3. There is no special purpose of why i write it using python3, it is just because i have it on my machine. There is some modification i made to follow the rules of python3, and the problem goes here, def hex2rgb(hexcode): # python2 --> return tuple(map(ord, hexcode[1:].decode('hex'))) return tuple(map(ord, str(binascii.unhexlify(bytes(hexcode[1:], 'UTF-8'))))) # python3 the error says, "ValueError: too many values to unpack (expected 3)" on line --> r, g, b = hex2rgb(newpix) this is the value i've got when print hex2rgb functions --> (98, 39, 92, 10, 48, 50, 92, 120, 48, 98, 92, 120, 49, 49, 39) the image format was .png format. My code must be wrong, hope you can give me some suggestions.
Faisal Morensya (10 days ago)
+Sandeep Hr here you go https://github.com/lloistborn/ldpc-img
Sandeep Hr (10 days ago)
+Faisal Morensya can u please send me that python 3+ code
Faisal Morensya (2 years ago)
awesome, it's working now. really great lesson, keep working sir. subscribed
DrapsTV (2 years ago)
+Faisal Morensya I actually have no Idea how to make this function simply in python3. They changed the .decode function to not work with binary transformation in python3 disallowing hex decoding. A better approach in python 3 would be to use the integer conversion. return (int(hexcode[1:3], 16),int(hexcode[3:5], 16),int(hexcode[5:7], 16))
Rajiv Sapkota (2 years ago)
thanx it was successful, I am going to implement steganography concept over voip. can you give me some idea?
DrapsTV (2 years ago)
+Rajiv Sapkota Why don't you give it a shot? I've never done it before. Doing these kinds of things is a learning process. If you follow scientific process you could probably write a paper on it.
Rajiv Sapkota (2 years ago)
+DrapsTV which method will be easier for voip steganography. what would you suggest me?
DrapsTV (2 years ago)
+Rajiv Sapkota rtp has a pretty tight header, everything has a reason. If you were going to try, I would probably start with the 1 bit of padding that is in the header every frame. (but keep in mind the protocol might rely on that 1 bit of padding to read the rest of the frame correctly.)
Rajiv Sapkota (2 years ago)
+DrapsTV Is it possible to hide in the rtp extensions header?can you give me some idea regarding this concept.
DrapsTV (2 years ago)
+Rajiv Sapkota if you're hiding it in the audio, then first look into how to get the audio frame (sample) data.
nafis ahmed (2 years ago)
great, I need an idea to issue a paper about Steganography. your help please
nafis ahmed (2 years ago)
+DrapsTV , the steps to issue it and an idea.
DrapsTV (2 years ago)
+nafis ahmed Sure, what can I help you with?
DrapsTV (2 years ago)
vim is another program on Linux, you can not run it from the Python interpreter.
https://www.youtube.com/watch?v=i0ToSeYhuMA
Flambr (2 years ago)
For me it says >>> vim hide.py File "<stdin>", line 1 vim hide.py ^ SyntaxError: invalid syntax
snd0cff (2 years ago)
Hi, I have problems, sometimes (depends on my text to hide) program doesn't work: message = binascii.unhexlify('%x' % (int('0b'+binary,2))) TypeError: Odd-length string What's the reason? How to solve it?
Vag T (2 years ago)
actually i mistyped a line... as for the error, i don't know if the reason for odd length string is this : http://stackoverflow.com/questions/27648769/typeerror-odd-length-string-when-decoding-hex-string
Vag T (2 years ago)
same problem on me
snd0cff (2 years ago)
+DrapsTV I use only standard characters in my keyboard, so yes, thats ascii
DrapsTV (2 years ago)
+snd0cff Hmm not sure mate, do you use any non ascii characters in your string?
snd0cff (2 years ago)
+DrapsTV python 2.7.6 when i try python 3.4.0 i see this error: self.binary = bin(int(binascii.hexlify(message),16)) TypeError: 'str' does not support the buffer interface
Himanshu Sharma (2 years ago)
hide.py -e picture.png or hide.py -d picture.png both command not showing any result ! in windows
Harsh Pandey (2 years ago)
this program is written in python and it requires a python working environment like python shell for Windows, and comes inbuilt with libraries in Linux and Ubuntu
DrapsTV (2 years ago)
+Himanshu Sharma No errors? when you use -e does it come up asking for input?
Pankaj Kharkwal (2 years ago)
consider i embedded a file in a image using steganography will the file data get modified if i modify the image as in adding features and stuff
DrapsTV (2 years ago)
+Pankaj Kharkwal Depending on how it's stored really. If you use a similar method to me, then so long as the colors where the data is stored don't change it should be fine. Storing data inside a image format such as after the PNG end delimiter. Then it will probably be stripped by your image editing software.
Himanshu Sharma (3 years ago)
if (option.hide != None): text = raw_input("Enter a text message to hide:") print hide(options.hide, text) elif(option.retr != None): "print hide" invalid syntax error
Islam Nurgaliyev (3 years ago)
+Himanshu Sharma in python 3 you must write print( ffgnghn ) good luck
Himanshu Sharma (3 years ago)
+DrapsTV Thanks a lot Sir
DrapsTV (3 years ago)
+Himanshu Sharma This tutorial is in python2 which has some differences with python3. Such differences is the print statement is now a function in python 3.
Gaurav Bhokare (3 years ago)
very informational vod ! But i've got this error please help! : Traceback (most recent call last): File "hide.py", line 93, in <module> Main() File "hide.py", line 86, in Main print hide(options.hide, text) File "hide.py", line 34, in hide img = img.convert('RGBA') File "/usr/lib/python2.7/dist-packages/PIL/Image.py", line 832, in convert self.load() File "/usr/lib/python2.7/dist-packages/PIL/ImageFile.py", line 215, in load raise IndexError(ie) IndexError: string index out of range
DrapsTV (3 years ago)
+Gaurav Bhokare It was going to take too much time to set it up to handle multiple picture formats. They each require a little modification.
Gaurav Bhokare (3 years ago)
+DrapsTV thanks alot it worked , I had one more question why doesn't this program work for images of other format ? like for example .jpeg , will appreciate to know the details since iv'e been trying to deconstruct steghide tool , thanks alot again! .
DrapsTV (3 years ago)
+Gaurav Bhokare Appears to be an error with PIL trying to convert the img. Give another PNG a go and see if it happens again.
ZeraTron (3 years ago)
Hi, very good video :D but I have a syntax error: [email protected] ~/Desktop $ python png.py Traceback (most recent call last): File "png.py", line 1, in <module> from PIL import Image ImportError: No module named PIL PS: I'm on raspberry pi one, B+ model Edit: I don't understand very good english, so I don't know if I have to use "Slides & files" in the description of the video, idk what is it, so I just used in my project the code you have showed in the video.
DrapsTV (3 years ago)
+IModz | Glitchs | Mods You are most certainly welcome :)
ZeraTron (3 years ago)
ok, thank you :D
DrapsTV (3 years ago)
+IModz | Glitchs | Mods You will need to install the PIL (Python Image Library) on your raspberry pi. as this script uses the library to modify images.
Tshesko ElMaximus (3 years ago)
Hi DrapsTV Thanks for the spirit of sharing and making this video When I trying to run this program, it just displays the line "Incorrect Image mode, couldn't hide" I understood that the file isn't in RGBA mode, so I tried this ==> In the Function hide(fileName, message) Just before "if img.mode in ('RGBA'):" When I add this "print img.mode" to know in which mode this file is it displays "P" I am a kind of newbie in Image manipulation How can I solve this to be able to hide "my Secret Messages" ;-)
DrapsTV (3 years ago)
+Tshesko ElMaximus The topic isn't as well documented/talked about on the internet compared to other information. If you want a really good understanding, I suggest using google scholar and trying to find some research papers on the topic. Hope this helps! Glad you got it all working!
Tshesko ElMaximus (3 years ago)
+DrapsTV It works amazingly well Thanks for Sharing where can I find more documentations in the subject to go deeper in it. #Better to learn how to catch a fish#
DrapsTV (3 years ago)
You can convert the image by using the convert method. eg. im.convert("RGBA") Hope this helps!
Tshesko ElMaximus (3 years ago)
+DrapsTV It's a PNG file What does it mean and how to solve this ?
DrapsTV (3 years ago)
what image format are you using? because it's opening in pallete mode.
SnagrodThraka (3 years ago)
So, I went to a camp a few days ago where we learned about a bunch of different cyber ops stuff along with some programming and networking. During one of the security classes we did basic steganohrophy and hid a message in an image, but it only used green pixels. We were then challenged by the instructor to try to learn how to hide in green red and blue pixels. Anybody know how to or know where I can look around? I'd really appreciate any help. Thanks.
Mitchell Graber (3 years ago)
+DrapsTV I guess that playing this in the background isn't a very effective way to learn. Thanks.
DrapsTV (3 years ago)
+SnagrodThraka Well you learned how to access one of the color channels, so you just need to also encode your data into red and blue as well. :) Also sounds like an awesome camp!
VRAJ PATEL (3 years ago)
i am getting some errors :  in module() : main() ---> i.e. at the end of program. in hide: img.save(filename,"PNG") and  io error : errno 13 permission denied please can u help me suggesting changes.
DrapsTV (3 years ago)
+VRAJ PATEL Awesome, glad to hear!
VRAJ PATEL (3 years ago)
Thank you . .....it worked!!!!!
DrapsTV (3 years ago)
+VRAJ PATEL Try running the program somewhere else. It appears you do not have permission to write files to disk.
Ronke Williams (3 years ago)
Hi! I'm writing my thesis on Steganography and I used part of your codes in this video in the experimental part, Please how can I reference you as a source?
Ronke Williams (3 years ago)
+DrapsTV Thank you
DrapsTV (3 years ago)
+Ronke Williams I believe you can reference this video as a webpage. I'm glad you found this video useful! :)
Phillip Martin (3 years ago)
I get the error "IOError: [Errno 2] No such file or directory" for the "img  = Image.open(filename)" parts, and I don't know what's wrong.
Harsh Pandey (2 years ago)
U need to be in the same working directory as ur code is in
Ronke Williams (3 years ago)
Hi, thanks for this video..please can u enlighten me more on the encryption algorithm used to encrypt the message and the technique used in inserting the message into the image. your response will be appreciated.
Ronke Williams (3 years ago)
+DrapsTV Thank you.
DrapsTV (3 years ago)
*No encryption* is used in this video. As explained in the video we use *Lowest Significant Bit* to hide the text. If you wanted to encrypt the message, you would need to encrypt it before we convert it to binary. likewise in reverse when pulling the information out. Also You did *NOT* need to post 4 times...
cabeywickra (3 years ago)
I find it difficult to use libraries
DrapsTV (3 years ago)
What problems do you have when trying to use libraries?
Esteban Torres (3 years ago)
Great lesson, thank you :) Although I do have to ask though why you don't use vim commands while editing the program though... you use vim like a regular text editor. I love your videos man!
DrapsTV (3 years ago)
Glad you liked it! vim get's really hard to follow when you start jumping around and copy pasting. 
Trc Ro (3 years ago)
Hey is there any way to pass the options -e/ -d in windows ? Code runs but I can not pass those options even by using an IDE
DrapsTV (3 years ago)
in your command prompt type: hide.py -e myimage.png *or* hide.py -d myimage.png Good Luck!
Sreejith VS (3 years ago)
>>> python sk.py -e test.png SyntaxError: invalid syntax how can it solve..???
DrapsTV (3 years ago)
Do you have the line that the error occurred on? Python will point out exactly where it got confused with the syntax!
Sreejith VS (3 years ago)
thx bro.! i  need an invisible watermarking on image tutorial.! can you upload that..!?
Jagan Luitel (4 years ago)
please send me source code, as i am doing my honors final year project on this at: [email protected]
DrapsTV (4 years ago)
It's in the description mate. There seams to be a lot of people doing stenography for their honors lately.
Gabriel Ribeiro (4 years ago)
One more question.. Are you using LSB ?
Gabriel Ribeiro (4 years ago)
nice thks
DrapsTV (4 years ago)
Yes, in order to not change the color enough for the eye to notice.
Gabriel Ribeiro (4 years ago)
One more question.. Are you using LSB ?
Gabriel Ribeiro (4 years ago)
Thank you.. i will implement criptography in your code.. i wil send to you!! regards from Brazil 
Ronke Williams (3 years ago)
+Gabriel Henrique Ribeiro David Thank you. I will check it now.
Gabriel Ribeiro (3 years ago)
hi Ronke, take a look at this!  https://github.com/gabrielhribeiro/Steganocrypto   This is are my final work!!  Regards
Ronke Williams (3 years ago)
Hi Gabriel, did you implement cryptography in the code? I'm looking at the possibility of encrypting the message before conversion to binary and decryption. Please can you send me your new code in which you implemented cryptography. My email is : ([email protected]). Thank you
4lpina (4 years ago)
Hey dude, your videos are very professional, I really like them!
DrapsTV (4 years ago)
Thanks mate! I'm glad you enjoy them!
Name Less (4 years ago)
Nice!, what branch of computer science is steganography geared towards?
DrapsTV (4 years ago)
This is more on the side of data security. :)
tony S (4 years ago)
Thanks so much
DrapsTV (4 years ago)
Glad you enjoyed it :)
glitcher880 (4 years ago)
Great video i love the topic well done, did you found out how to do it by yourself or there was a book/webpage?
DrapsTV (4 years ago)
Thanks mate, I looked up the Python Image Library, so I knew what functions to use, but I wrote this from scratch a couple of days ago. I thought it would go well with the Steganography discussion video :)

Would you like to comment?

Join YouTube for a free account, or sign in if you are already a member.