V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
justbilie
V2EX  ›  JavaScript

[大牛在哪] 防止网站被抄袭的 JS 代码,加密的方式隐藏在重要 JS 文件中,谁抄袭我,我就针对性的弹窗

  •  
  •   justbilie · 2017-08-16 22:57:15 +08:00 · 11731 次点击
    这是一个创建于 2660 天前的主题,其中的信息可能已经有所发展或是发生改变。

    是这样的 场景:我呕心沥血做的网页设计和网站,做了几个月才做完;被他人一夜全抄,毫无办法....不要提版权哦,我还没能力到弄版权的阶段

    愿景:弄个 JS 代码,隐藏在网站的重要 JS 文件中,并且加密混淆,让抄袭者傻傻分不清(至少大部分抄袭者是这样的),然后哪天我发现有家公司抄我的作品,好,我在我的服务器里加上一些代码或者图片或者 JS 什么的,给这家网站来个恶意弹窗,弹死个鸡鸡蹦的....

    可能会涉及到的参数:绝对网址调用、加密混淆、自身有服务器有内测网站,大概这么解释,我也算是白菜了,才来求教大牛

    如果可以,重金求码啊....不开玩笑的!

    第 1 条附言  ·  2017-08-17 11:04:59 +08:00
    谢谢各位码友的援助,我决定以下几种方案一个个去试过去
    1.识别自家域名,不弹;识别非自家域名就往死里弹,并且将这段 JS 代码或者相关 JS 文件打包,用 webpack 打包加密,尽量让抄袭者不知道哪里找到这些网址(前提是这些抄袭者技术还不是大牛)

    2.websocket+protobuf,10 楼介绍的,我没用过,我也打算用,研究下

    3.页面部分内容使用 js 的 document.write 输出,并且混淆,js 内藏暗桩检查域名,感谢 3 楼的 chinvo,但是这种操作有个弊端,影响引擎蜘蛛的爬行,给优化减分了,所以我只能在部分页面内容使用这种方式

    4.给关键原创图片做加密隐写,添加自己的版权水印上去,有能力就用傅里叶(这个麻烦了点),参考 https://www.v2ex.com/t/278480

    5.用 JSfuck,混淆吧,尽量防范

    总结:在网站源码上要防止大牛,应该是比较难了,只能尽量制造门槛(辛苦了自己),好在我们的行业大部分抄袭者是菜鸟,只知道扒站和仿站,跟本不懂深入的技术;图片方面,真心没辙,人家来个 QQ 截图,我也没办法...只能自己努力,后期给自己的创作加版权
    33 条回复    2017-08-17 10:31:22 +08:00
    beyoung
        1
    beyoung  
       2017-08-16 23:35:49 +08:00
    来个加解密呗
    nfroot
        2
    nfroot  
       2017-08-16 23:54:38 +08:00   ❤️ 1
    用 jsfuck
    chinvo
        3
    chinvo  
       2017-08-16 23:57:22 +08:00   ❤️ 1
    Websocket 加载资源,js 内藏暗桩检查域名

    再用个 aaencode
    flaneurse
        4
    flaneurse  
       2017-08-17 00:14:12 +08:00 via Android
    别人不能禁用 js 么
    chinvo
        5
    chinvo  
       2017-08-17 00:15:30 +08:00
    哦,对了,页面内容记得用 js 的 document.write 输出,输出之前是混淆加密状态
    lslqtz
        6
    lslqtz  
       2017-08-17 02:28:23 +08:00 via iPhone
    你这么搞人家可以检查得到请求
    全部文件合一加密 到指定日期后弹窗(自己别忘了)更稳
    yangqi
        7
    yangqi  
       2017-08-17 02:32:59 +08:00
    呵呵,楼主很傻很天真
    cncqw
        8
    cncqw  
       2017-08-17 04:27:16 +08:00 via iPhone
    楼主的思路是需要请求你的服务器,但是直接在开发者工具中查看网络就可以看到你的网址,然后就知道怎么回事了,你觉得有用?
    Valyrian
        9
    Valyrian  
       2017-08-17 04:44:14 +08:00 via iPhone
    用 js 检查当前页面的域名就行了吧
    blanu
        10
    blanu  
       2017-08-17 04:48:53 +08:00 via iPhone   ❤️ 1
    websocket+protobuf,破解难度要大一些
    zjsxwc
        11
    zjsxwc  
       2017-08-17 05:46:42 +08:00 via Android
    感觉只是 js 的话不能防止内容被抄袭,比如可以用 PhantomJs 来爬取 js 渲染后的内容,这样内容被获取了,js 也被抄袭者略过了,最多只能和小说网站那样把文本内容变成图片,来增加复制成本。


    不过,如果楼主说的网页设计是指前端页面与样式,那么防止被抄袭就简单了,现代框架 react 之流不都是通过 js 来生产 html 的吗,楼主只要提供编译压缩后的 js 给别人就好了,然后再在这个 js 里加料,比如 xss 攻击代码
    R18
        12
    R18  
       2017-08-17 06:52:06 +08:00 via Android
    @chinvo aa 可以反解了 不知道 jj 如何
    zjqzxc
        13
    zjqzxc  
       2017-08-17 08:15:31 +08:00   ❤️ 2
    设计成分>技术成分,无解,只要能让别人看到,照葫芦画瓢写一个也用不了多久;
    设计成分<技术成分,所谓的加密技术只能增加抄袭难度,并不能根本解决问题;

    根据描述“呕心沥血做的网页设计和网站”,看来楼主更偏向于第一种情况。。。
    另外,那个愿景应该不可能起作用。抄袭者在看不到大意的情况下,肯定不会贸然使用你的 js 文件。如果抄袭者已经大致看懂每个函数是干啥的,那就意味着他已经通读代码了。看见代码中有那些稀奇古怪的绝对地址,怎么能不起疑心。总的来说,技术手段是防君子不防小人。

    最后还是那句话:“如果技术是万能的,还要法律干啥”。
    alwayshere
        14
    alwayshere  
       2017-08-17 08:19:30 +08:00
    GoogleBot and baiduBot:这 nm 是啥,一个破网站这么多弹窗,艹!劳资把你 K 了!
    misaka20038numbe
        15
    misaka20038numbe  
       2017-08-17 08:39:24 +08:00
    防抄袭是不可能的。如果是有经验的,不会连着 js 一起抄的,我只抄 HTML 和 css 样式。JS 自己重新写。然后 HTML 和 css 通过浏览器解析之后是无法加密的。就算你整个页面输出的是一张图片,如果需要的话,也能把你的设计抄了不是。
    laogui
        16
    laogui  
       2017-08-17 08:42:08 +08:00 via Android
    用 webpack 吧,我现在一看到这货打包后的 js 我就放弃抄袭了,嘿嘿。
    hantsy
        17
    hantsy  
       2017-08-17 08:45:47 +08:00
    js 怎么可能抄袭,生产环境全面 Uglify 了。
    rocksolid
        18
    rocksolid  
       2017-08-17 08:54:59 +08:00
    没办法阻止,大不了别人照着你的样式做一个也不用太多时间,关键还是快点把创意变现吧
    dong3580
        19
    dong3580  
       2017-08-17 09:17:04 +08:00
    @laogui
    哈哈,所以我开始喜欢这类压缩混淆的代码的小工具了。
    不过现在有好多人都扒你文章的内容挂在自己的网站上,这个解不了啊。
    Anshi
        20
    Anshi  
       2017-08-17 09:26:50 +08:00
    干脆开源吧...就不怕抄袭了...
    jorb
        21
    jorb  
       2017-08-17 09:37:03 +08:00
    既然别人要抄袭你了,代表创意肯定是不错的啦。
    这种抄袭防止不了的,就算防盗加密什么了,别人自己依葫芦画瓢做一个出来也不要多久呢。
    wizardoz
        22
    wizardoz  
       2017-08-17 09:40:31 +08:00
    你说的那种叫 copy,不叫抄袭。我认为抄袭是人家依照你的创意自己写代码实现,有可能代码比你的还好。
    zhongkouwei
        23
    zhongkouwei  
       2017-08-17 09:45:43 +08:00
    有个思路:很多开源系统免费版本都有 logo 和版权信息,如果用户使用免费版删掉这些信息,页面就会产生乱码、错误信息。这段 js 混淆在普通代码中
    mrl1996
        24
    mrl1996  
       2017-08-17 09:48:48 +08:00
    F12 就可以看到原貌
    yhxx
        25
    yhxx  
       2017-08-17 09:51:07 +08:00   ❤️ 1
    你这个需求的话,直接判断域名不是你自己的话就弹窗就行了吧。。。。
    EXDestroyer
        26
    EXDestroyer  
       2017-08-17 09:56:46 +08:00
    楼主太天真,我偷拍你的照片来做头像你除了法律途径还有什么办法吗?
    xAx
        27
    xAx  
       2017-08-17 09:58:55 +08:00
    js 还不好解?
    abcbuzhiming
        28
    abcbuzhiming  
       2017-08-17 10:25:28 +08:00
    前端是人家能直接看到效果的部分,不用你的 js,仿一个难度也不大,别瞎折腾了,给自己找不愉快
    justbilie
        29
    justbilie  
    OP
       2017-08-17 10:27:56 +08:00
    @EXDestroyer 遇到爱抄袭的技术大牛,那我肯定没辙的,但关键是我能恶心一下那些不是非常大牛的抄袭者啊,而且这些人是占大数的
    justbilie
        30
    justbilie  
    OP
       2017-08-17 10:28:58 +08:00
    @yhxx 对对对.....一语惊喜梦中人,我就是想要类似这样的功能!有没有案例求推荐啊
    justbilie
        31
    justbilie  
    OP
       2017-08-17 10:30:00 +08:00
    @zhongkouwei 好像有点复杂了些
    justbilie
        32
    justbilie  
    OP
       2017-08-17 10:30:44 +08:00
    @wizardoz 哈哈,总之都是很恶心的操作
    Arrowing
        33
    Arrowing  
       2017-08-17 10:31:22 +08:00
    @yhxx 没用,是抄袭,不是照搬,把判断域名部分去掉就好了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5931 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 03:02 · PVG 11:02 · LAX 19:02 · JFK 22:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.