问题描述

首先我要指出,我知道防止个人盗版内容非常繁琐或几乎不可能。

我正在为一位相对知名漫画家的客户的网站工作。我们正在努力防止用户撕掉他的工作并重新发布它,或者更重要的是从离线复制,无论是在杯子上还是类似的。我打算在后端使用 WordPress 。

我向他展示了绕过残疾人 right-click 是多么荒谬的容易。

TLDR:我想知道什么是其他方法来阻止或阻止用户复制图像并复制它?

(我知道水印,但它真的破坏了图像的外观。)

我已经提到了这些问题:

  1. Are there DRM techniques to effectively prevent pirating?

  2. Is it possible to prevent unauthorized copying or recording of data by photographing screens?

  3. Prevent Users from Downloading Javascript, Images

最佳解决方案

没有办法阻止图像的保存,但这里有一些想法,使它更难。

  • 为了防止 right-clicking 保存图像,您可以在其上叠加透明的 div 。然后用户将 right-click 代替其下方的图像,context-menu 将不显示 「将图像另存为」 。

  • 您可以使用 data URL 来显示图像,以便在服务器上没有单独的文件来链接。

  • 您可以在提供图像之前检查引用者来使用热链接保护。

即使使用所有这些对策,任何用户都可以制作页面的屏幕截图,并将图像裁剪出来。

鉴于绕过这些对策非常容易,您可以考虑不执行任何 anti-downloading 功能。图像的使用已被法律保护。

次佳解决方案

你正在寻求一个社会问题的技术解决方案,如果你想称之为一个,这往往是愚蠢的。

安全的基本规则之一是,一旦你给用户一些东西,他们就有了。混淆和 client-side “protection”(AKA DRM) 不起作用。

如果要在用户屏幕上显示图像,则保存该图像可能不比打印画面和打开画面更难。无论你做什么不能容忍你的网站,你都不能回避他们已经拥有这个形象的事实。

所以问题是为什么你会走出你的方式使网站不太可用,以防止你已经不能。所有正常的策略,如阻止右键点击,混淆 HTML-CSS,使用闪存等具有主要的可用性影响。通过一些更极端的解决方案,脱轨,开始呈现性能和兼容性问题。

所有这一切,你要求用户处理。我不能为所有人说话,但我拒绝访问任何网站,开始篡改我的意见。我认为右键点击了互联网上最大的罪恶之一,这是一个只需要结束的做法。我们不需要新的创新方式来惹恼用户。

第三种解决方案

如果你的问题实际上是 「说服你的客户」,请尝试这个思想实验:

  • 将卡通放在网页上,周围有红色边框和几条对角条纹,部分遮蔽了图像 (足够使其变得丑陋但仍然清晰) 。

  • 告诉你的客户,「我添加了不可破坏的副本保护。」

  • 给你的客户一张纸和一支铅笔,并要求他们写一本卡通的副本。

这可能对他们太沮丧 (所以在尝试之前先思考两次),但是会开车回家 the magnitude of what they’re asking 。复制别人辛苦工作的容易是为什么存在知识产权法。

非常适合您当前的情况:在美国,来自流行的卡尔文和霍布斯漫画的人物都是 commonly seen,即使创作者坚定地 refused to license them 。但是它们很容易复制,并且知识产权很难 (并且昂贵) 来执行。您最好的打赌可能是一个社交解决方案:说服用户不要复制图像符合自己的最大利益

我知道这不是你想要的答案,对不起。

第四种方案

在做这样的事情之前,你总是要问自己:你的实际目标是什么?

不可能阻止确定的攻击者获取您的图像,您可以做的是使您的平均站点访问者更难以获得图像。

这是什么获益?

  • 您的作品仍然像以前一样容易受到商业漏洞的攻击。

  • 你为实际的球迷生活更加困难,并使口头广告变得更加困难。

这听起来像是想要投入大量时间和金钱的东西,而不是使网站更好吗?究竟。为了保护您的商业利益,您有更好的法律选择。

玛格丽特 off-topic 咆哮:

人们可能会很自豪地宣布放弃你的漫画 (尽可能简单) 是一个很好的商机!它不会花费你任何钱,但给你很多好的公关,扩大你的品牌和追随。最着名的例子是 Randall Munroe(xkcd 的名声) 。 Randall 在 Creative Commons-Non Commercial 2.5 下授权所有漫画,并突出地提到每个漫画的热链接网址。尽管他说 because of it – 他让他的漫画好起来。

另一个可能不太意识形态影响的例子是 Penny Arcade:他们没有 CC 许可证,但他们也没有做任何事情阻止你复制/保存/热链接他们的漫画。而且他们这几天雇佣了十几个人。

第五种方案

我已经面对这个问题了好几次。我们发现的最佳解决方案是大幅降低图像质量。使屏幕可以接受,但打印质量太差 – 即使是屏幕截图。

这对于艺术作品 (绘画和照片) 非常有效,但是我不确定它对于漫画家的工作有多好。上述解决方案 (大幅降低图像质量) 可能无法像一些几行和文字的卡通一样简单。

第六种方案

没有什么你做的,这使得用户不可能查看内容,而无法保存它。

你可以管理的最好的方法是使其变得更加困难。而如果你比获得合法的使用权利更困难,那么尝试谁可能窃取内容的人 (不是全部) 会付出代价 – 即如果你认为内容有价值,那么人们可以更容易地购买它!

覆盖层并没有太多的孤立。禁用右键单击并不会有很大的帮助。

一个可能的解决方案是将图像分割成多个图像,使得它们可以通过 Javascript(使用右键禁用和覆盖) 在画布上进行重新组合和渲染,从而恢复原始图像。例如将其分成 50 个像素条,每个条带交替使用 N 个参考图像之一 (也是相同宽度),并在客户端上重复该过程以获得原始图像。

没有什么可以阻止用户实现自己的代码,以可保存的格式重复此操作,也不会阻止他们简单地捕获屏幕截图。

使用隐形术对 identify the provenance 的图像是可行的,确实我相信有些方法甚至持续在屏幕的照片中。但是,即使你能够将其重新定位到一个可识别的个体,你可以做些什么呢?不太可能

附录

而不是花费大量的时间来保护图像内容 (除非您在小时内获得报酬),否则您可能会考虑投入一些努力来保护整个网站免受破碎/自动修复。

第七种方案

考虑一个漫画家的商业模式是粉丝。他们通过让球迷*赚钱。销量不是很大:销售发生是因为他们有球迷愿意支付。

因此,限制选择,如降低质量等,是解决问题的错误。你真正想要的是更多的粉丝们愿意购买漫画/商品等

解决方案是给粉丝一个很好的印象。然后在一个简单的 non-condescending 步骤中购买粉丝。

我有时候被要求从这里描述的所有方法重建艺术品。即使是闪光灯。事情是,唯一不能做的是从低分辨率图像中构建打印分辨率图像。如果用户可以看到它们,可以窃取它。所以唯一的解决方案是降低质量,但这对商业案例来说并不好。

不要错过专注于你不能做的销售。相反,专注于你可以做的。您要做的是定期进行反向图像搜索,并删除在互联网上商业滥用您的图像的人。骗子很少对图像做很多打扰。我已经看到在 t-shirts 打印的低分辨率 JPEG,没有什么可以做到这一点。

您也可以限制您的促销材料的实质。也许只显示一定的部分。但是,这又会降低质量。底线有一个很好的商业计划,使您的信息更安全或至少”sacrificable” 。

*或通过委托制作,但这是不同的商业模式。如果是这样,那么您需要向新客户显示风格。

第八种方案

嗯,我已经解决了这几次。这是不可能停止的。我可以在 2 秒钟内绕过所有这些措施,但如果你认真对待迫害,他们会吓倒我。

  • 使用画布从 Websocket 提供的字节流中绘制图像。

  • 通过 css 禁用右键单击。

  • 检测打印屏幕是否被按下 ($(document).on(‘keyup’,function(e){if(e.which == 44){SHOWLEGALWARNINGFUNCYOUWILLBEPROSECUTEDTOTHEFULLEXTENDOFTHELAWfunction(); logipdetailsforpresecuting()}

  • 在任何检查,命名律师事务所和律师的起源的源代码中显示出可怕的法律警告。吓唬他们

  • 当 f12 被按下时检测。做与法律警告功能的事情就像印刷版一样

  • 对窗口注册的外部 JavaScript 对象运行连续扫描。

  • 让所有的渲染发生在一个无法访问的异​​常对象中,包含在一个异常的功能中,所以没有任何值可以从它读取。

  • 使用一次性密钥可以从 websocket 请求图像,如果它被重用,标记和起诉

  • 当标签模糊/不活动时,请将图像隐藏在视野之外

  • 在网站上为粉丝发布报告工具:

    • 我们很受欢迎,我们很好奇你找到我们!让我们知道您看到我们的网站,商店,报纸,并有机会赢得签名的卡通副本!伪装成比赛,你让人们为你做错事,你们可以通过你的律师来兑现现金。

这使得它很棘手,并表明你愿意起诉,这将阻止很多反对者。

尝试实施一些社会工程。欺骗模仿者放弃他们的资格,以便你可以起诉他们。说谎你的意图是非常公平的。他们不应该那么愚蠢,然后放弃他们的细节;-)

第九种方案

我很惊讶 no-one 已经提到了 Digimarc 或者 EURION Constellation 。

Digimarc

Digimarc 是将作者信息嵌入到光栅图像中的 human-imperceivable 数字水印。 Adobe Photoshop(直到 CC 版) 具有 Digimarc Reader 插件内置,并将扫描每个打开的图像,并向用户显示一个警告,如果他们打开水印图像。这是 Digimarc 的一个伟大的政变,因为它为他们的产品一夜之间创造了一个巨大的市场。不幸的是,Adobe 自第一个 CC 版本以来删除了这个插件,所以今天的关联性更小。

欧元星座

https://en.m.wikipedia.org/wiki/EURion_constellation

这种技术需要更多的诡计,因为您需要将 Constellation 自身嵌入到图像中,并且以强大的方式 – 但是如果您可以将 Photoshop,打印机拉下来,各种图像处理工具将拒绝处理您的图像。

第十种方案

如果 right-click 被禁用,并且无法从简单的屏幕上盖复制图像,那么最好的办法是将浏览器缓冲区中的图像从噩梦中拉出来。您可以通过编程方式来生成图像,并将存储在缓冲区中的图像部分需要付出努力才能重建成原始图像,强调疼痛。使用整个工具箱细分原始图像; 缩放,反转,旋转。脚本重新组合图形是劳动密集型,但用户支付 CPU 时钟而不是带宽。随机播种,一个脚本是无限可重用的。

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。