7

I need a method to make the product images on a website "uncopyable" - not be able drag and drop them onto desktop or right click and save.

They also need to be links and are in a scrolling javascript viewer (http://www.dynamicdrive.com/dynamicindex4/stepcarousel.htm)

Any ideas?

Thanks, Steph

skaffman
  • 398,947
  • 96
  • 818
  • 769
Steph
  • 275
  • 6
  • 15
  • 14
    What's to stop them doing a screen grab? – Goibniu May 15 '10 at 16:04
  • 13
    If there is a way to transfer the image from the server to the client, then there will be a way to store the image on the client. – lexu May 15 '10 at 16:06
  • 41
    get a new client – mxmissile May 15 '10 at 16:13
  • 16
    When I come across a website that disables the context menu on images, I like to get a pencil and paper and hand write out the color values of each pixel in a neat little table. I then scan it in, run it through some OCR software and pass the output of that to a Python script. The output of this script is a PNG file. – detly May 15 '10 at 16:26
  • There are watermarks and watermarks.. some of them can be beaten too. – Elzo Valugi Jun 28 '10 at 10:34
  • This question is silly if somebody really wants the image hhe can just take a screenshot and recall it or just get it by browsing the source – Arnaud Aliès Oct 16 '12 at 17:36

11 Answers11

61

If you don't want people to copy images don't put them on a website. Nothing stops people taking screen captures, not to mention disabling JavaScript, or viewing your the HTML source to find image locations.

The best you can do is put watermarks on them, to make it clear where they're from.

Dominic Rodger
  • 97,747
  • 36
  • 197
  • 212
  • 3
    +1: And there's also taking a picture with a cellphone too. Or people remembering what the picture was and drawing a sketch of it! – Donal Fellows May 15 '10 at 16:07
  • 3
    People ask me for this from time to time. It really is just a wrongheaded idea. The problem is that to show up in your browser, you have to be able to download it. And that's already game over. – Brian MacKay May 15 '10 at 16:22
  • Thanks for your comments everyone - I thought it was impossible and not i realise it definitely is! I'm going to suggest watermarks i think. – Steph May 15 '10 at 16:53
  • 1
    Agree, though sometimes it's useful to prevent naive users from copying images. 99% of the population not on SO has no idea how to grab an image if you can't right-click to save. ALT-Whatscreen? – Eric J. May 17 '10 at 05:05
17

Forget it. You can disable right click and save and do a ton of other tricks (e.g. use them in a background image), but a simple screen shot will render them useless.

I'd try to convince the client that it is impossible to achieve, and that protecting their copyright should be done by, say, frequently surfing the web for any infrigements and, maybe, adding a watermark to the images shown.

Pekka
  • 442,112
  • 142
  • 972
  • 1,088
8

In order to SEE an image, it has to be on their computer. And if it's on their computer, they can find a way to get it.

BlueRaja - Danny Pflughoeft
  • 84,206
  • 33
  • 197
  • 283
8

There's a few ways to emulate this, but it's not possible to totally stop users from downloading images.

You can:

  • Disable right click with javascript
  • Overlay a transparent gif or png over the image (flickr does this)
  • Set the image as a background image of a container, whose width and height are equal to that of the image.
Community
  • 1
  • 1
davethegr8
  • 11,323
  • 5
  • 36
  • 61
5

You can cut the image in some parts that are touching and producing the whole picture. That way the user will loose his interest to try to right-click save the image.

And many people stop trying after the first failed attempt to copy an image.

Other than that the PrintScreen button works almost everywhere except for video streaming. (not flash-based) You can try to open a movie with MediaPlayer classic for example and try hitting the PrintScreen button - the clipboard has black screen instead a shot of the movie in it. May be there is a way to use this in your case.

edit: Here's another suggestion but is it's not that technology independant. I think that you can create a special restricted .pdf file that doesn't allow copy of both files and text. Not sure about PrintScreen again.

Leni Kirilov
  • 1,317
  • 1
  • 8
  • 16
  • Was just thinking of that myself. Seems like a good idea, makes it too much of a chore for many people to bother with. – Jack May 15 '10 at 16:46
  • 1
    Great idea with the Video but doesn't apply any more on Windows 7 and its snipping tool - it somehow manages to grab video. May be graphics driver / DirectX / codec dependent, though. – Pekka May 15 '10 at 16:54
  • 1
    Even before Windows 7, if you disable your video card's hardware acceleration, video is no longer displayed using the video card's overlay feature and PrintScreen will work fine. – Warpin May 15 '10 at 21:49
4

Impossible to stop them taking images, they can just hit PRINT SCREEN and voila, done.

Your best bet is probably to overlay a transparent to prevent right click save as, but it's not going to stop anyone but the most casual of users, and would the casual users really want to copy your images in the first place?

NibblyPig
  • 51,118
  • 72
  • 200
  • 356
2

For images to be rendered on the user's screen they have to be downloaded to the browser's cache. Any slightly knowledgeable person could retrieve the image(s) from the cache.

Your best bet may be to watermark the image in someway so as to make it unusable in any other context. Watermarking is placing an image or text into the actual text that is visible. While it won't stop people from copying the image, it will make it more difficult for them to make use of it in another context.

You need to work with the client to understand why they want the images to be "uncopyable" and then to educate them about how the technology of the web actually works.

Mike Chess
  • 2,758
  • 5
  • 29
  • 37
2

The only good way to do this is to either display the images using only css. (This kinda of keeps people that know nothing about browsers from right clicking and clicking save images as... Simple enough for that. However, this won't stop an advanced user from looking at the css and going directly to the url to save the image. So the only good way to keep people from taking your images is a watermark. ;) Good luck.

Blank
  • 21
  • 1
2

You can make it harder (but not impossible) using something like Microsoft Rights Management Services with IE. That usually uses Active Directory infrastructure - not suited for public facing website, only intranet.

-1

A "solution" for the screenshot problem: The image is an animated $whatever and each frame shows a different part of the image...

If the user has enough time, he can get a clue of the whole picture, while the copier would have to press print-screen very often and combine the pictures...

Perhaps we need magic-ink printers with the crypto-chip right in the head?

osti
  • 417
  • 2
  • 8
-4

A decent solution to use would be Copy Safe. Works for both images and videos. It currently does not support MAC. You can restrict MAC users for an intermediate solution.

Srikar Doddi
  • 15,499
  • 15
  • 65
  • 106
  • 13
    Interesting, but "When a visitor views a CopySafe Web page, if the CopySafe Web plugin is detected then the page is displayed but they are not able to copy, save or capture your page content. If the CopySafe Web plugin is not detected, they are redirected for download and installation." - personally, I have now left your website annoyed! – Dominic Rodger May 15 '10 at 16:18
  • 7
    @Dominic: I can make my browser lie about what plugins are installed too... – Donal Fellows May 15 '10 at 16:20
  • 9
    Wow. Blocking Mac/Linux users and requiring PC users to install a browser plugin is "decent"? WTF? – ceejayoz May 15 '10 at 16:31
  • Sometimes it is very important to protect your content and depending upon your user base you can choose different solutions. You can have one solution for windows and another custom solution for Mac. Its implementation details. – Srikar Doddi May 15 '10 at 16:33
  • 2
    How does Copy Safe disable my digital camera? – detly May 15 '10 at 16:37
  • 2
    Wow, requiring users to install a plugin (which, if it's anything like every other plugin, will need to be updated regularly due to security vulnerabilities), just to view an image? I don't think you're going to get many takers; a brilliant way to lose customers. Oh, and anything such a plugin could do to sabotage Windows in an attempt to hinder the print-screen feature can easily be side-stepped by, say, running it in a virtual machine. – bobince May 15 '10 at 16:40
  • 1
    The answer provides a very intrusive way for a solution, but doesn't deserve a downvote imo. **it is a bad idea** though – the_drow May 15 '10 at 16:44
  • 7
    It's not really a solution though, is it? This makes it *annoying* to copy images. The question asks for *impossible*. – detly May 15 '10 at 16:48
  • 7
    Oh Jesus. I just tested this. It takes a scattershot approach to ‘disabling’ screen capture, involving disabling all right clicks and all interaction with toolbars, including the browser's own navigation, and crashing the Windows shell if any .EXE is launched. Thus it badly screws up the user's desktop, whilst failing to actually make the images secure. Appalling. – bobince May 15 '10 at 17:14
  • Also take a look at [this](http://www.elitehackers.info/forums/showthread.php?p=84462) and [this](http://forums.moneysavingexpert.com/showthread.php?t=1506401) ... yeesh... – detly May 15 '10 at 17:17
  • I am merely presenting an option that we used in the past where we had to absolutely block downloading the images, video content etc as they are considered highly classified. We looked at other solutions as well. We did have occasions where we had to reinstall the plug-in. @detly, it is impossible to copy images with this approach. – Srikar Doddi May 15 '10 at 17:41
  • 1
    bobince provides at least one way. And of course, depending on your definition of copy, you cannot control what people do outside the PC, eg. taking a photograph. If you are attempting to protect the information and not just the byte-for-byte content of a graphics file, a photograph will STILL result in a copy of the information. – detly May 15 '10 at 18:40
  • 3
    @CodeToGlory The idea of such an plugin being used to protect "highly classified" data is rather terrifying. I hope you don't work for my government... It is not "impossible to copy images with this approach". Someone can take a photograph of the screen, which for "highly classified" data would be a very, very bad thing. – ceejayoz May 15 '10 at 23:36
  • @ceejayoz What is your approach to prevent people from taking a photograph? – Srikar Doddi May 16 '10 at 01:24
  • 2
    Uh, there isn't one. That is *exactly the problem with sending an image to someone's computer*. – detly May 16 '10 at 04:52
  • this solution is not just for images but also for videos. – Srikar Doddi May 16 '10 at 15:10
  • 2
    @CodeToGlory: so you agree that it doesn't work to protect images? Then what's the difference between taking a photograph of a still image on the screen, and taking a *video recording* of a video on the screen? – Dean Harding May 17 '10 at 03:55