Secrets Hidden in Images (Steganography) - Computerphile

  Переглядів 1,266,432

Computerphile

Computerphile

8 років тому

Secret texts buried in a picture of your dog? Image Analyst Dr. Mike Pound explains the art of steganography in digital images.
The Problem with JPEG: • The Problem with JPEG ...
The Bayer Filter: • Capturing Digital Imag...
Super Computer & the Milky Way: • Supercomputer and the ...
JPEG Discrete Cosine Transform (DCT): • JPEG DCT, Discrete Cos...
/ computerphile
/ computer_phile
This video was filmed and edited by Sean Riley.
Computer Science at the University of Nottingham: bit.ly/nottscomputer
Computerphile is a sister project to Brady Haran's Numberphile. More at www.bradyharan.com

КОМЕНТАРІ: 653
@orazioballal7819
@orazioballal7819 3 роки тому
If you download this video you'll discover that every single frame contains "I'm the editor working hours in the basement, please send help"
@didyoustealmyfood8729
@didyoustealmyfood8729 3 роки тому
bruh fr
@mba4677
@mba4677 2 роки тому
That’s be the dopest
@siladlawan6614
@siladlawan6614 2 роки тому
Really?
@Max_G4
@Max_G4 2 роки тому
To the 4 people asking: No. UKposts does its own (lossy) compression afterwards when you upload a video. So if you download it from UKposts, it's not the same file as the one which was uploaded.
@ekxo1126
@ekxo1126 2 роки тому
lol
@JustOneAsbesto
@JustOneAsbesto 8 років тому
Steganosaurus is my favourite dinosaur.
@HiAdrian
@HiAdrian 8 років тому
JustOneAsbesto Hehe, I was immediately thinking of dinosaurs as well when I read the title.
@MattSiegel
@MattSiegel 8 років тому
JustOneAsbesto the only dinosaur that can hide in plain sight! :)
@Vanjkav
@Vanjkav 8 років тому
+Adrian ,
@emmanuelpeter3813
@emmanuelpeter3813 5 років тому
Hi can plz help to know this
@SumriseHD
@SumriseHD 4 роки тому
My favourite type of writing is stenography.
@samnub7912
@samnub7912 6 років тому
From now on, I'm going to watermark all my image work with the tragedy of darth plaguis the wise
@cessposter
@cessposter 3 роки тому
Big bruh
@lindseynoble1
@lindseynoble1 3 роки тому
It's a story the jedi wont tell you.... but this image of a horse absolutely will.
@retrodragon2249
@retrodragon2249 2 роки тому
Hide it within the meme image itself
@SethuSenthil
@SethuSenthil 2 роки тому
You sir, are the choosen one
@Voltaic_Fire
@Voltaic_Fire 2 роки тому
Not cryptography the Jedi would teach you.
@CliveReyes
@CliveReyes 2 роки тому
Every time Dr. Pound makes a video he goes "oh I've written a program for this..." then they never show us the code! It would be fantastic if you guys could share Dr. Pound's work for learning purposes.
@mahneh7121
@mahneh7121 2 роки тому
This program would be easy. You load the image to using an image loader to a script. And also load the text. You compare last 2 bits of the image iterating over the bits of the text. I dont think he wrote how get the text back (or he did not show it). But if you store a vector as you go flipping bits, you can get it back.
@kb203
@kb203 Рік тому
I don't know anything about code, but I'm ready to learn. Been hacked for too long!
@whannabi
@whannabi Рік тому
​@@kb203 for hacked to hacker
@Nets-nutsBr
@Nets-nutsBr 10 місяців тому
​​​@@mahneh7121I think it sounds to be relatively easy. You may use the Gimp script-fu to update the color registry in order to read and write the message. I would like to try it but I do not have time.
@russell2952
@russell2952 9 місяців тому
It takes twice as much work to make code for release rather than just for goofing around. I can see why he wouldn't want to release unpolished code.
@garethdean6382
@garethdean6382 8 років тому
Truly this is a remarkable area of study. Why just the other day I was looking at what appeared at first to be a picture of a herd of braying donkeys. It was only with careful scrutiny of the image I realized that O was actually staring at a picture of parliament.
@typo691
@typo691 5 років тому
Who's O?
@tobiumevolume9890
@tobiumevolume9890 5 років тому
He means "I". (Btw. did you get this recommended too?)
@typo691
@typo691 5 років тому
@@tobiumevolume9890 Yes but it was because I watch this channel occasionally, rather than a completely random recommendation.
@percyblakeney3743
@percyblakeney3743 4 роки тому
Hahahahaha!
@tanmaybhayani
@tanmaybhayani 4 роки тому
😂😂🤣🤣 so underrated !!!!!!
@TommiHimberg
@TommiHimberg 8 років тому
A very interesting video on how e.g. the entire works of Shakespeare can be hidden in one digital photo. Kudos to Dr Pound for yet another extremely clear and understandable explanation of a complex topic!
@Mysteryem
@Mysteryem 8 років тому
A fairly good example of steganography that you may have come across without realising was the video game Spore. In it, you could drag the images of creatures/spaceships/buildings/etc. into the game's editor and it would then read the hidden data describing that creation from within the image and load it into the editor.
@lollelolle1
@lollelolle1 4 роки тому
I could listen to this guy for ages and never get bored. The topics he presents are so fascinating and he presents them very well. Nice work
@thechrisgrice
@thechrisgrice 8 років тому
Okay, the message at the start had me laughing.
@pg1282
@pg1282 8 років тому
***** The one at 0:15 ;)
@higheststrpk
@higheststrpk 8 років тому
Piotr Grabowski meet me at noon? wtf whats funny about that? please explain
@vincentpelletier57
@vincentpelletier57 8 років тому
bastard Read the "original", non-hidden message!
@thechrisgrice
@thechrisgrice 8 років тому
Yes to all : I'm talking about the ORIGINAL un-hidden image. The reference to brown paper (Numberphile) particularly was funny.
@512TheWolf512
@512TheWolf512 8 років тому
+thechrisgrice well they do waste an awful lot of paper
@dustinbreakey4707
@dustinbreakey4707 8 років тому
you telling me that there are secret messages in the rarest of pepes?
@SleeveBlade
@SleeveBlade 8 років тому
Old news
@StyGamerz
@StyGamerz 8 років тому
Dustin Breakey :O
@Requiemes
@Requiemes 8 років тому
Dustin Breakey in sinks too muh boy, or so I've been told by the elders
@hellterminator
@hellterminator 8 років тому
Knowing btards, there probably are.
@tapwater424
@tapwater424 7 років тому
No but there pieces of ultra rare pepes hidden in the rare pepes with steganography
@Svin4y
@Svin4y 5 років тому
I cant understand a word of what he is saying. But I cant stop listening...
@Voltaic_Fire
@Voltaic_Fire 2 роки тому
It isn't all that complicated if you've done even high school programming.
@connectbibek256
@connectbibek256 2 роки тому
Same problem*
@user-jm6gp2qc8x
@user-jm6gp2qc8x 2 роки тому
It's the accent man
@richard102879
@richard102879 5 років тому
I must have watched a million Tech videos and read three times as many online articles before I found this guy here on computerphile and I have come to realize without question that this man is dangerous. Very few people possess this level of knowledge and the videos are by far the best on the internet. Keep up the good work!👍👍
@peoplethesedaysberetarded
@peoplethesedaysberetarded Рік тому
LOL, this is kid-sister-encoding stuff.
@johnprice4847
@johnprice4847 Рік тому
Don't get me wrong, he's amazing, but these are bachelor level CS topics
@jody4210
@jody4210 3 роки тому
My professor didn't give us any detailed explanation on this topic but you gave a wonderful one. Thank you!
@shanedk
@shanedk 8 років тому
I played around with this a bit in the late '80s. I wrote a program that would take a TGA file and put the message in the two least significant bits of each channel, just as he describes in the video. I found that I could tell the point at which the message stops, because the image just gets a bit less noisy and more clean. This could be an indication to someone else that you were hiding a message, if they were familiar with the process. My solution was to generate random numbers and do the rest of the pixel data randomly. If your message is encrypted (which it should be; steganography is no substitute for sound encryption), then it should be indistinguishable from randomness anyway, so this should successfully hide the fact that you've hidden a message to begin with. Of course, this isn't going to work with lossy algorithms like JPG. Today, just use PNG.
@shanedk
@shanedk 8 років тому
Shane Killian Hmmm, I see later in the video that he is doing it on JPGs using transform curves. Interesting, but it again wouldn't survive re-saving the image in a different format.
@forevatrolling
@forevatrolling 8 років тому
Shane Killian Another way would be for two people to have a key and based on the key and the amount of data, the program can put the data in the LSB of evenly distributed pixels maybe with a prng maybe using the key as a seed (which would look random) to select the interval and using the size of the data to put a limit on the size of the interval so you can fit it all in, all you would need would be the key and the size of the file and the program to decrypt it. That way the whole image would look very slightly noisy if you look closely, like it was badly compressed, and with smaller messages it would pretty much be entirely undetectable and probably quite good for that purpose. But of course there is still the problem of frequency analysis, especially with larger messages.
@shanedk
@shanedk 8 років тому
username_unavailable You could make it where two images are required. You'd come up with random numbers for one image, and then for the second image use that same random sequence XORed with the message. So a cryptanalysis of either image individually will just show indecipherable noise; you'd need to know which two images to combine. And again, have a layer of encryption below that in case they do find the message.
@MikeTrieu
@MikeTrieu 8 років тому
+Shane Killian Surprisingly, digital watermarking in the form of Cinavia content protection is indeed resistant to mangling by transcoding. Perhaps they key is merely robust erasure coding and having an extremely small identifier tag.
@hellterminator
@hellterminator 8 років тому
I'd advise against using PNGs for steganography. PNGs are usually used for storing content with lots of large uniform areas (and leverages this uniformity for file size reduction). If you hide data in the LSB in a PNG, 1, the resulting noise will be quite noticeable and 2, the file will be _huge_ (because there will no longer be large uniform areas it could compress).
@MuddledMe
@MuddledMe 7 років тому
Wikileaks had an strange email with a load of photos of Antarctica in. this guy needs to look at them....
@MuddledMe
@MuddledMe 7 років тому
Im actually a shill for the meat industry, Mmmmm bacon
@damiengates7581
@damiengates7581 4 роки тому
@@MuddledMe you damn right, ordo ab libtard
@MorgurEdits
@MorgurEdits 4 роки тому
@@damiengates7581 damn jumping in with those insults
@General12th
@General12th 3 роки тому
@@damiengates7581 What does "ordo ab libtard" mean?
@btat16
@btat16 3 роки тому
@@General12th It’s some form of elvish, I can’t read it.
@bambel4997
@bambel4997 6 років тому
I am very glad you didn’t just show us the image and have us take your word for it that the images were different!
@PhilippeCarphin
@PhilippeCarphin 7 років тому
Subtitles are great "Stake in a graphic", and the best thing is that it never writes the same thing for jsteg : "chased egg" is my favourite.
@rich1051414
@rich1051414 6 років тому
Technically, you could modify the least significant bit of all three color channels to give you three bits per pixel. For a 1920x1080 picture, that would give you enough space to embed a message that is (1920*1080*3) / 8 bytes large, or 777, 600 bytes, and it would be imperceivable, as each color channel would only be one bit different, like the difference in 255 and 254, you would not notice it. This assumes the image format preserves three channels of pixel information, like PNG.
@joshinils
@joshinils 8 років тому
Thank you, I enjoy the videos with him and these subjects.
@lukasdon0007
@lukasdon0007 8 років тому
Instead of trying to detect JSTEG, wouldn't it be possible to destroy the message by slightly altering the image? For instance, you could add a very slight blur, NR or USM which doesn't alter the image that much, but completely ruins any hidden message. Or add a small and complex distortion pattern, etc. In other words: if I upload a JSTEG image to facebook/whatsapp, and then the image gets recompressed/resized or noise reduction is applied, then it would be impossible for the receiving party to recover the message hidden inside.
@TheCreatorJames
@TheCreatorJames 8 років тому
***** Yep. That's an issue with steganography, it's quite easy for other algorithms to destroy your hidden data. But the same is true with older techniques. If you photocopied (or transcribed) a letter with hidden ink, you'd lose your hidden message.
@109Rage
@109Rage 8 років тому
Jesse Mitchell Similarly with the "early movie previews" and stuff that they mentioned at the end of the video, just re-encoding the video (maybe twice between different codecs?) will destroy the message too. Pictures that weren't directly saved (like if they were copy and pasted into paint or something) would lose the message too if saved into a different format.
@rangedfighter
@rangedfighter 8 років тому
109Rage Only if the format you are converting into has a lossy compression, otherwise changing the format would just get you the same image in another format.
@Robstar0
@Robstar0 8 років тому
rangedfighter 109Rage Even if you use lossy compression, I can imagine (but I'm not sure) that if the lossy compression leaves parts of some frames "unharmed" while every frame is watermarked many times (maybe 1000 times or more per frame), that the watermark would slip through. A watermark only needs to be 2 bytes maybe, how many copies of a movie would you really distribute? 16 bits would need 8 bytes to piggyback on. Maybe a watermark is 16 bytes, but still it would fit many times in a frame. Millions of frames in a video... You could analyse the illegal video, and see if a certain watermark value pops up 100 times more often than any other (damaged) value... I'm just guessing, I admit, but I think you can make it "lossy-compression-proof" up to a point.
@TheCreatorJames
@TheCreatorJames 8 років тому
Robstar In theory, lossy compression would leave low entropy frames unharmed. But that isn't the case. Most algorithms simply run their filter on everything indiscriminately, because in the end, it helps the compression ratio. And as you know, even if you were to encode a video correctly, UKposts's algorithms would still harm it. A watermarking method like you described might actually work (theoretically), but it would not be able to contain very much data. And to be retained at a decent frequency (these are some very viscous data culling algorithms we're talking about), the watermark would have to be visibly noticeable.
@penjackerrekcajnep1037
@penjackerrekcajnep1037 8 років тому
Great video, always wondered how steganography works! It'd be awesome if you could do a video explaining spectograms.
@TheCreatorJames
@TheCreatorJames 8 років тому
Every time I research and implement something, Computerphile releases a video within a week on the same topic. GG Computerphile.
@TheJespeon
@TheJespeon 8 років тому
I just remember feeling like some sort of turbo hacker for following a tutorial when I was like 13 to hide a rar archive in an image file.
@lastplace199
@lastplace199 6 років тому
I remember when people still used rar files.
@cd2320
@cd2320 5 років тому
lastplace199 what’s a rar file?
@lastplace199
@lastplace199 5 років тому
Christopher Davis Not sure if sarcastic or not. -_-
@yxor
@yxor 5 років тому
Christopher Davis its a rare file
@Chris_Cross
@Chris_Cross 4 роки тому
I remember feeling like a hacker for using cmd.exe to make it so when you change an extension of an image file (.png for example) to .txt it has a secret message at the end.
@rustyhguitar1
@rustyhguitar1 7 років тому
The guys who created the Fairlight Computer Musical Instrument went on to devise security protocols. One thing they did (this was in the 90s) was have a printer produce unique hard copies of a document by altering the kerning of the characters. The alteration was not only unique but coded so that if a copy was leaked, the software could scan it back and decode the kerning to identify whose copy it was. This looks like a hugely sophisticated version of that software. My brain hurts...
@TheMan83554
@TheMan83554 8 років тому
Who wants to bet that the edit team stuck a metric shit tonne of data in this video?
@Private27281
@Private27281 6 років тому
TheMan83554 me
@Benjamoomin64
@Benjamoomin64 4 роки тому
If they did there'd be no way to get it out... UKposts compresses everything that people upload and their compression is lossy, so any extra information that may have been snuck into the original edit has been washed away to save computer bandwidth.
@grn1
@grn1 3 роки тому
@@Benjamoomin64 If they used a repeating message and took into account the compression methods used then it should be possible. JPG itself is lossy but they take JStag takes that into account.
@Max_G4
@Max_G4 2 роки тому
@@grn1 UKposts does lossy compressoen *on top of that* If you upload a video to UKposts and then redownload it, it won't be the same file anymore. It's irreversibly lossily compressed.
@callummunro7380
@callummunro7380 7 років тому
You could use this to hide a watermark, and then you could prove it's yours by comparing your image with the infringing source. If it has the watermark, it's definitely a copy. Edit: Ah, well he _did_ say about this at the end of the video. Ignore me!!!
@FusionDeveloper
@FusionDeveloper 7 років тому
I suspect it would not work if the image was slightly modified over the entire image, such as brightness going up or down by 1% would ruin the Steganography message. I guess it depends, because in most situations, people wouldn't modify the image.
@DanteTucker
@DanteTucker 7 років тому
one use: I have a website that has copyrighted images. What I do is, each time a user visits the site instead of just serving the raw image, the image is first passed through a script which hides the user's username in the image. That way if one of our images pop up somewhere on the internet it shouldn't be, I can find out which exact user is responsible for it.
@callummunro7380
@callummunro7380 7 років тому
Dante Tucker That's an awesome idea. I'm guessing you don't tell the user this? That would probably lead to them editing it to get rid of the watermark if at all possible.
@FusionDeveloper
@FusionDeveloper 7 років тому
+Dante Tucker . Cool!
@pokemonplanet4153
@pokemonplanet4153 7 років тому
Don't give copyrighters any ideas
@afterdeth
@afterdeth 8 років тому
That was awesome! Great video and a really cool concept
@abhim7
@abhim7 7 років тому
Just read the paper at 0:20 !! 😂😂😂
@ChristopherKing288
@ChristopherKing288 7 років тому
Encryption is actually quite important. Otherwise, the attacker can just test the file to see if it contains a message.
@ericsbuds
@ericsbuds 8 років тому
awesome! I was thinking about this the other day! great video.
@sk8rdman
@sk8rdman 8 років тому
This is brilliant. You can effectively store 1/4 as many bits of data in an image as the image has while only modifying the original image by less than 1/64th.
@MilciadesAndrion
@MilciadesAndrion 3 роки тому
Great video. Excellent explanations
@hpekristiansen
@hpekristiansen 8 років тому
I know that it should not be possible to see, but I keep imagine that there is a hidden message in his sweater.
@robertcrier3551
@robertcrier3551 4 роки тому
I love your videos, i bought like 8 books on security including the CISSP exam study, and I’m learning a ton from watching your videos. I even studied cryptography because i love computers, i used to love science, now its CS.
@akaskmsskssk6927
@akaskmsskssk6927 2 роки тому
yeah its amazing there was a time when i would read tons of astronomy, but now its about cs
@drditup
@drditup 7 років тому
You could do this with videos as well, and then you have the opportunity to perform transforms over time as well as across the image. But since I thought of it now, somebody has probably already done it. Is it something you could make a video of, computerphile ?
@jacobstory8895
@jacobstory8895 5 років тому
I made a program that takes the individual colors, picks two of them (based on a predefined pattern), and encodes the data in the least significant bit of both for every pixel. Optionally, you can even use an xor to encode the data instead, making it even more confusing.
@hikari_no_yume
@hikari_no_yume 8 років тому
Least-significant bit can be detected because it makes certain colours less common or more common than they should be. For example, 255 (maximum 8-bit value, i.e. full intensity/white) is far more common than certain other 25X values usually.
@fllthdcrb
@fllthdcrb 8 років тому
TazeTSchnitzel Unless you apply good encryption, of course, in which case the LSBs should look random. Then again, maybe the LSBs in the original aren't random.
@muizzsiddique
@muizzsiddique 6 років тому
Maybe add some faint white noise (has to be colour) over the image, then start messing with the individual bits.
@TruthNerds
@TruthNerds 4 роки тому
​@@fllthdcrb That's the point, in a normal photo the LSB is *not* uniformly distributed, at least not locally. This is also mentioned in the video.
@LPChip
@LPChip 6 років тому
Awesome video. Can this be done with audio as well? I''d love to see a video about that.
@alexandrugheorghe5610
@alexandrugheorghe5610 8 років тому
Nice video. I've used a simple algorithm to encode much the same way a key for a challenge some years ago although haven't used LSB. Though even with eye comparison on the pixels you could tell miles away it was tempered with. Especially the red channel, unfortunately nobody got the key, but it was very fun indeed. I still have the two photos on my blog, original and tempered one, I should go with a follow up and study the cos func shown in this video.
@peoplethesedaysberetarded
@peoplethesedaysberetarded Рік тому
Me too. 18 years, and no one has come forward for the reward offered.
@Carlordau
@Carlordau 6 років тому
4:20 - captions - has a value of free. Got to love the accent.
@zinqtable1092
@zinqtable1092 7 років тому
I can imagine a deep learning algorithm that could look at images and find their messages. Edit: god damit
@chanandlerbingooos
@chanandlerbingooos 7 років тому
I've been sharing the same thought ,but i think its quite hard since the model build will be targeting some fixed dataset or set of features .
@LudwigvanBeethoven2
@LudwigvanBeethoven2 6 років тому
A single image can be translated to any other information with infinitely different logics...
@ganondorf5573
@ganondorf5573 5 років тому
@S H A classifier still breaks the value of the steganography. The encryption is an added layer of security. The purpose of the steganography was to hide that a message was being sent at all. If the classifier notices that there's a message, the fact that the message is being sent has been revealed. Or... in a more practical example, the watermark that was hidden is revealed. At the very least, it's revealed that there is a watermark... and we can almost definitely scrub over the watermark. So, if someone tries to scan and find their watermark, it won't be there.. because we were able to find it and scrub it out. So, we don't really have a way to prevent that yet... it's really security through obscurity.
@tomr6955
@tomr6955 4 роки тому
But you didn't edit your comment
@sreeganeshvr7561
@sreeganeshvr7561 4 роки тому
There are a bunch of em. (For those interested, look up "Deep learning for steganalysis using CNNs" by yinlang qion.)
@suivzmoi
@suivzmoi 8 років тому
12:13 can steganograped information survive lossy compression of the host image file?
@ashraile
@ashraile 2 роки тому
It would seem like it depends on the encoding method.
@khadijahalsmiere3718
@khadijahalsmiere3718 4 роки тому
Thank you so so so very much for this lesson.
@stevelucky7579
@stevelucky7579 3 роки тому
Great Scott!
@mountp1391
@mountp1391 2 роки тому
awesome work. need some steganography for images.
@phookadude
@phookadude 7 місяців тому
You could use the least significant bits as a bitplane, with a skip between data bits, and xor more significant bitplanes over those thus making the lowest plane look like it belongs in the picture. You could probably cram 3 or 4 bits per plane that way.
@dsfs17987
@dsfs17987 3 місяці тому
hiding more data usually will mean hiding another image inside the original, and the more modern approach seems to involve FFT of the original image, there are some papers about those methods, but they are a bit above my comprehension, but the approach seems much more robust against recompression, resizing, cropping and so on and there is plenty of proof that it is being used on social media by popular accounts, because the competition for attention and payoff is just too big, so they use quite dirty tricks to attract people, think subliminal messaging using adult content
@esteveslisboeta
@esteveslisboeta 5 років тому
I did a small amusement app, "The Steganographer", with Javascript and PHP this Summer. The Big image should be atleast 4 times bigger than the one to be hidden. Don't forget besides the RGB components you can also use the ALPHA channel(the channel for transparency) to hide some bits!That increases the amount of info you can hide per pixel. Curiosity: The alpha channel on PHP has only 7 bits while alpha in Java(not Javascript) has 8 bits. You should also know that since .jpeg is not a lossless format, each time you create a .jpeg(to hide the small image in the big one), the data will be compressed( the string of bits will be slightly changed), so after when you try to extract the original data from the .jpeg(the smaller image) you won't be able to do that perfectly. A solution is to use .png, which is heavier but gets the job done cause it is not a lossless format. You can check The Steganographer of my channel if you want to.
@dannythomsen
@dannythomsen 6 років тому
I was struggling with a stego CTF when this video just popped up. Thanks, it helped me solve the challenge :)
@ImmaterialDigression
@ImmaterialDigression 8 років тому
The digital copyright usage seems quite smart!
@randomcatdude
@randomcatdude 6 років тому
.jpg >:)
@millomweb
@millomweb 4 роки тому
Just not sufficiently durable. If you know you've copied an image - you'd take steps to hide any such 'watermark'.
@NijosoSefzaps
@NijosoSefzaps 8 років тому
It would be interesting if someone made some meme (or other viral spreading image) that they post in different locations with each location having a different embedded message. You could track where that specific image spreads from the most. (although it doesn't help track derivatives)
@mumuderler6148
@mumuderler6148 2 роки тому
how can you track that?
@NijosoSefzaps
@NijosoSefzaps 2 роки тому
@@mumuderler6148 I would suggest checking the wikipedia page for "stenography," but there are ways to hide messages within images that are not immediately noticeable without closer inspection
@ZachHixsonTutorials
@ZachHixsonTutorials 8 років тому
So my question is: how do thinks like this work with compression? Concerning the stock photo/video leaking applications, wouldn't the message get a little corrupted if I re-comoressed/re-encoded the video?
@ZachHixsonTutorials
@ZachHixsonTutorials 8 років тому
DaneGraphics I was specifically asking about the two bit-centric method he was talking about though
@Nilguiri
@Nilguiri 8 років тому
Zach Hixson I included part of a Getty Images image in a banner for a crappy little web site that's had about 3 visitors in 4 years and the bastards still managed to find it somehow. Their lawyers are demanding €1200.
@SyntheticFuture
@SyntheticFuture 8 років тому
Zach Hixson They don't work with compression. Unless you can predict the compression and take it in account maybe. But that is unlikely.
@ZachHixsonTutorials
@ZachHixsonTutorials 8 років тому
ThaTyger That's what I thought
@ArchaicVirus
@ArchaicVirus 6 років тому
ThaTyger It can be used with compression, you just have to find the md5 hash.
@aaronMcAnalley
@aaronMcAnalley 8 років тому
LSB would be easy to detect by a computer (with out a person looking at graininess) because you can test for values on the last bits that wouldn't result from standard compression because of the square rooting and squaring with the computer's limited decimal length.
@crazysquirrel9425
@crazysquirrel9425 4 роки тому
Two words come to mind: Alfred Hitchcock. Also, the whole message does not need to be in a single picture. It can be spread across multiple pictures and sent at different times and in a different order.
@tonaxysam
@tonaxysam 5 місяців тому
that's kind of the idea behind one video steganography method, using the frames and LSB for the message
@LeethLee1
@LeethLee1 5 років тому
Amazing stuff
@vengefulenigma
@vengefulenigma 8 років тому
I actually had a bit of steganography as my final exam for some class, the professor hid a message in a picture and told me to "extract" it any way i see fit :D
@matthewsanetra
@matthewsanetra 4 роки тому
In any way? Take his laptop hostage for a ransom of the answer.
@theolodger
@theolodger 3 роки тому
@@matthewsanetra xD yeah
@johnprice4847
@johnprice4847 Рік тому
Wdym in any way? Your decoding method should depend on the encoding method?
@vengefulenigma
@vengefulenigma Рік тому
@@johnprice4847 He used several methods we discussed during the classes to hide the message, it wasn't a difficult cypher.
@johnprice4847
@johnprice4847 Рік тому
@@vengefulenigma oh, so you had to guess which one he used?
@domicio1577
@domicio1577 5 років тому
Great content.
@robertjencks3679
@robertjencks3679 8 років тому
In the end of the video they tslk about tracing leaks of copyrighted material and such. It sounds like the more paranoid leak could add their own message or just general nonsense and it would write over whatever water mark was there and there would be very little difference visually. Although I guess they would need to know how the water mark was added and then add their message/nonsense over it for the entire image. It still seems doable especially if the original watermark was added in a commonly used way like those talked about in the video.
@peoplethesedaysberetarded
@peoplethesedaysberetarded Рік тому
Invisible watermarking very much was, and is, a thing.
@nicholashylton6857
@nicholashylton6857 8 років тому
WOW! What a fantastic video! I am an amateur photographer and have always wanted some way to discretely watermark my images. Is there a good public domain Steganography program or some utility in Photoshop (Elements) available?
@g1zm02k
@g1zm02k 8 років тому
I'd have thought the usual questions would have cropped up: "What happens when you add jsteg text to an image already altered with jsteg?" "What happens if you use DCT on a jsteg image?" Are they mutually exclusive, does one overwrite the other, would they both fail decoding... A later video perhaps.
@Slarti
@Slarti 8 років тому
What I do is provide a public and private key that enables a user to decrypt the file that I hide with steganography. This means that even if the image falls into the wrong hands the file(s) hidden in it cannot be removed without the public key file and the password - I also allow the hiding of files to be spread across multiple files. I also allow multiple passwords to reveal different files for the purposes of obfuscating the real files.
@peoplethesedaysberetarded
@peoplethesedaysberetarded Рік тому
But you would still have to protect against the participants being discovered. Encryption means nothing against torture, if you’re a normal civilian. For instance, this is why I don’t actually know any of my passwords. They’re all retrieved.
@Bvic3
@Bvic3 4 роки тому
Steganography was used in World of Warcraft screenshots to record the server, time and account ID. To find cheaters who bragged posting screenshots cropped to remove their name.
@_____7704
@_____7704 5 років тому
Expand upon this by doing a video on Numbers Stations!
@tomysshadow
@tomysshadow 6 років тому
Of course you could also paste a passworded ZIP onto the end of a JPEG in a hex editor and any photo viewer will ignore the invalid image data while something like 7-zip will detect and decompress the zipped data.
@xavinitram96
@xavinitram96 8 років тому
more... MORE.... MOOOREEEE!!!!! :D
@keksimus__maximus
@keksimus__maximus 8 років тому
came for the basset hound, stayed for the interesting stuff
@cantona7449
@cantona7449 5 років тому
This gentleman, Dr Mike, is absolutely fascinating... I only discovered this channel yesterday and Ive viewed a lot of the videos already.
@cain8628
@cain8628 3 роки тому
Me and the boys studying for the next Cicada
@ManpreetSingh-ew8qs
@ManpreetSingh-ew8qs 3 роки тому
so if i have set of .jpeg images with positive and negative examples and i wanna train machine learning then should i transform image format to DCT matrix and train classifier on that? and if so do in need to convert RGB to Y'crcb format before that? btw very nice channel on youtube you guys are really great :-)
@pawwilon
@pawwilon 8 років тому
So with the example of video leaks, a conversion to different format once or twice with some compression and what not should get rid of it?
@jimharmon9917
@jimharmon9917 7 років тому
It was said that if the image gets recompressed, it's still there. Does this hold if the image format is changed - say from JPG to BMP or TIF?
@SupLuiKir
@SupLuiKir 8 років тому
Wouldn't it also be trivial to either neutralise or obfuscate a stenographic watermark? The whole point of stenography is to hide the fact that there is a payload hidden inside another piece of content. Since there is incentive for adding these stenographic watermarks to images/audio/video, such as a prerelease DVD, with a basic level of insight you can safely predict and assume a watermark will exist on your prerelease DVD. Since you're already assuming there will be stenography, the entire advantage of using stenography has been lost. Since stenography needs to hide itself in ways where it can't be detected from just looking at it, this limits where the stenography could be contained. You don't even need to restore the files to their unwatermarked source (neutralise). It would be sufficient to just zero out all bits where stenography could be hiding, or randomize the bits where they could be hiding (both would be obfuscation) before uploading your prerelease DVD to the internet. Because the watermark is destroyed, they won't be able to link it back to you with watermarks. You still will have to check for any other defenses they might employ, but as i see it, watermarking to protect copyrights and identifying violators is only a defense against the incompetent, not a true defense.
@radioactiveduckie111
@radioactiveduckie111 8 років тому
· 0xFFF1 You make a good point, but you should consider that watermarking can still be very useful. An example: imagine a great youtube channel (Computerphile) puts lots of time and money in creating a video to monetize it (like this very video) on youtube. Then someone rips the digital video-file and uploads this video to his own channel to make some bucks. UKposts has an intension to avoid a situation in which this is possible. Here are watermarks extremely helpful, because youtube bots usually detect the stolen video before it even gets online, thanks to content id. You're right, with some effort you can go around watermarks, but I guess most of the people don't bother looking for loop holes.
@Mythricia1988
@Mythricia1988 8 років тому
· 0xFFF1 All of what you said is true - but ask yourself how many people know what stenography is, or that it even exists.... That's why it's valuable. Sure some people might be thoughtful enough to circumvent it, but even with videos like this going out to thousands of people and teaching them that it does exist - most people utterly lack the ability or care to do anything about it. Like any encryption or hidden message, really.... Some will be able to figure it out. Most will never. That makes it massively valuable already.
@FirefoxisredExplorerisblueGoog
@FirefoxisredExplorerisblueGoog 8 років тому
Mythricia Only the initial distributor needs to figure it out, though.
@superdau
@superdau 8 років тому
· 0xFFF1 Knowing that there is a watermark does not help at all. You still have to know where/how it is hidden, otherwise all you are doing by randomizing stuff is decreasing the quality. If removal of information in an image would lead to no visible change, it would have been optimized away already in compression. The content authors foremost care about the copies, where the quality is at least near to the original. If you mangled up your version by randomizing parts so much that their algorithm won't find it anymore, they still might not be fine with you copying stuff, but at least they know that the quality is now so mediocre, that it's useless. The way described in the video is just one of many. A movie has so many more ways to hide something, that randomizing fails completely. If you distribute to a known number of people you could easily give everyone a different version. You could insert/drop frames now and then (different for everyone), you could change the hue of certain objects/scenes, if you'd want to get really fancy you could encode stuff by changing the text/pattern of unimportant objects. With all the CG in todays movies it's easy to automate and hide such stuff. Or you could encode something in the audio, by changing some frequencies or timing or even play with the volume slightly. Non of those things will be removed by randomizing. Without the original you can't even tell that something has been done.
@rangedfighter
@rangedfighter 8 років тому
· 0xFFF1 Stenographics algorithms can be much more complicated and sophisticated than shown here. You could use multiple algorithms and some of them could alter randomized bits around images, which can be read out only if you have the seed that belongs to a certain copy of the material. I think getting rid of stenographic images completly if you don't know which ones are used is impossible without severely degrading your content. And if you are going to leak that DVD with bad video and audio, man who cares ? 70% of people won't bother to watch it. And even then traces of the watermark may be around, afterall just 5-10% of the watermark information would be enough to show that it's not random noise. If you know what you are looking for even randomly seeming things can give you away.
@AChannelFrom2006
@AChannelFrom2006 4 роки тому
You could hide the entire Game of Thrones: A Song of Ice and Fire at 1,770,000 words in a single HD image. You could do it in 16-bit colour as you have 65,536 different pixel combinations as each pixel colour would have a different word attached to it. Surely there wouldn't be more than 65,536 different words. Though trying to make the picture in the end not look like mess would be challenging.
@Zolbat
@Zolbat 8 років тому
When he showed the two least significant bits of the "steganographized" image, why was there a tree visible at all? If all the last bits were changed to the message, they should be completely random, not just a little. Please answer (I am currently studying this at uni and made my own algorithms and they produce complete noise.
@rangedfighter
@rangedfighter 8 років тому
Zolbat There are 4 cases when you replace the 2 last bits: both bits already have the right value, the lowest bit has already the right value, the higher bit already had the right value, no bit already has the right value. That means, in 3 out of 4 cases you still have some of the original data. If you would take random noise and hide it in the image, then you would have 50% of the original bits still remaining, which means you have a blurry version of the original image remaining. The more bits you take to hide your message, the less original bits remain in the image overall. If you took all 8 bits to encode your message, only 2^-7 of all bits would remain completly unchanged.
@einstin2
@einstin2 8 років тому
The reason why this works is because only the last important information is altered. Consider a 32 bit depth bitmap image. The photo part of the file contains 4 bite chunks that will encode each pixel (red, green, blue, alpha). Each bite chunk will then have eight bits that will be either 1 or 0. Note that not every bit is worth the same. If you change the two least significant bits, the largest effect you can have on any color in a pixel is +- 3. More though that if you change the wrong two bits, the change is much larger. The largest swing then would be 128+64 = 192. If you are getting random noise, make sure you are only changing the two least significant digits and not the most significant ones.
@Vulcapyro
@Vulcapyro 8 років тому
***** See my above post for the explanation. Not filling the entire image would produce a different result, with the two LSB-filtered images being exactly the same after a certain point, rather than what you see. Adam Billman Nobody is confused about how this procedure works. Rather, I think you've entirely misunderstood what the OP is talking about.
@priyadarshinininganure7775
@priyadarshinininganure7775 5 років тому
As text file increases which we need to hide in an image , there ll b increasing the value of blurness in encrypted image or no
@KnuckleHunkybuck
@KnuckleHunkybuck 4 роки тому
The dog probably doesn't care if you change his bits as long as you don't mess with his kibbles.
@Burak-pl1jl
@Burak-pl1jl 6 років тому
I really love your videos but one thing I would really appreciate is that subtitles, especially in Dr. Mike's videos, please. I am really having a though time to understand his accent sometimes. 😅 And the present subtitles are not correct. Thank you for the great videos! :)
@ralfosha_x
@ralfosha_x 9 місяців тому
Well, thank goodness for screenshots and screen recorders.
@Jordatech
@Jordatech 8 років тому
This is really cool stiff !
@TinyDeskEngineer
@TinyDeskEngineer Рік тому
Fantastic. This will be of absolutely no use to me, yet I'm watching it anyways.
@stewiegriffin6503
@stewiegriffin6503 6 років тому
great video
@syler2547
@syler2547 8 років тому
How do you show the image with everything removed except the least significant bits to compare the noise of the images?
@mrsmartypants9136
@mrsmartypants9136 8 років тому
If the 2 LSBs of the original image are replaced with message bits, then why do the 2 LSBs of the steganographic image (4:33, 4:44) still contain information about the original tree? This part of the steganographic image should not depend on what image you're using for the 6 MSBs, so why's it still clearly trees?
@MrPAINFULLRAGE
@MrPAINFULLRAGE 5 років тому
At 7:28 the inerquartile computing unit is actually incorrect. I've studied it for about 3 years now and the complexion of the quadratic formula is hidden in the JPEG code. Cause if you document.write (a_bc) + SQL a=0b it will result in the quaritization of 0, hence the quadratic code is equal to 0, so it can't be it. Check my reply for my proof.
@georgedimas9583
@georgedimas9583 7 років тому
Mindblown
@xion1305
@xion1305 5 років тому
Could you zoom in and screenshot the image to remove a stegonagraphic watermark? I mean theoretically all the pixels are now changed I would think.
@stewiegriffin6503
@stewiegriffin6503 6 років тому
well done
@sadade32
@sadade32 8 років тому
This sounds like something fun to hack around with :)
@itsLean
@itsLean 8 років тому
amazing
@Chinedu311
@Chinedu311 11 місяців тому
Hi, interesting watch. can information be too much to be hidden in another file(image,audio,video etc)
@Enke796
@Enke796 8 років тому
9:49 Why can't they use some random information to fill other 40% of the blocks? Also, 4:39 Will flickering of the monitor stop if you will film it in 30fps instead of 24fps?
@qitvision9873
@qitvision9873 8 років тому
If you want to try this on your own images, CrypTego is a password manager that uses least-significant bit digital steganography on bitmap images. It encrypts the passwords/notes with AES-256 and then conceals them to an image. You'll find instructions on how to use it in my channel.
@aspie96
@aspie96 7 років тому
Wait. Why in the steganographic image formed just by the last 2 bits could you still see the tree?
@Juliapak
@Juliapak Рік тому
thank you
@cooldude23407
@cooldude23407 7 років тому
I love what the letter says XD
@camilogonzalez6350
@camilogonzalez6350 2 роки тому
Interesting! I wonder (and concerned) if it would be possible to hide an executable piece of software to run on image visualization.
@peoplethesedaysberetarded
@peoplethesedaysberetarded Рік тому
Yes.
@dsfs17987
@dsfs17987 3 місяці тому
there were few malwares that exploited these weaknesses in image decoders, but not lately, seems they have been fixed in modern web browsers and such
@nilloc93
@nilloc93 6 років тому
this was also done (with no level of subtlety) to distribute the 3d printer files for the liberator pistol
@ZalvadorZali
@ZalvadorZali 8 років тому
How would you extract the encoded information within the jsteg image?
@xmanrongngau5655
@xmanrongngau5655 Рік тому
Can you introduce the book to learn Steganography?
@gulllars4620
@gulllars4620 8 років тому
So if you were going to leak a pre-release video onto the net, and you were worried (or smart enough to be worried) wether it was steganographically marked, couldn't you do something like randomly assigning (or setting all to 0) the least significant bits in the "raw" (highest available quality) source to take a 12% information loss (in the least visible way) or something similar equivalent to the JPEG coefficients before applying lossy compression to scramble any watermarking?
@CelmorSmith
@CelmorSmith 8 років тому
So hidden messages via JStack can be removed if I screenshot an an Image and save it even in the same format and resolution but the message via the method from the first example from a bitmap image will be captures by a screenshot as long as I save it as a bitmap again, right? Making a screenshot of any image and saving it in a jpeg format will remove every hidden message then?
How AI Image Generators Work (Stable Diffusion / Dall-E) - Computerphile
17:50
How are Images Compressed?  [46MB ↘↘ 4.07MB] JPEG In Depth
18:47
Branch Education
Переглядів 3,4 млн
КАК ГЛОТАЮТ ШПАГУ?😳
00:33
Masomka
Переглядів 1,4 млн
Cracking Enigma in 2021 - Computerphile
21:20
Computerphile
Переглядів 2,4 млн
How to Choose a Password - Computerphile
11:33
Computerphile
Переглядів 1,2 млн
NCM: Introduction to Steganography
20:03
National Security Agency
Переглядів 6 тис.
How This Pen Changed The World
9:17
Primal Space
Переглядів 535 тис.
How Stenographers Type at 300 Words Per Minute
5:37
Half as Interesting
Переглядів 3,6 млн
Acropalypse Now - Computerphile
12:53
Computerphile
Переглядів 185 тис.
How AI 'Understands' Images (CLIP) - Computerphile
18:05
Computerphile
Переглядів 76 тис.
7 Cryptography Concepts EVERY Developer Should Know
11:55
Fireship
Переглядів 1,2 млн
ChatGPT Jailbreak - Computerphile
11:41
Computerphile
Переглядів 277 тис.