[大牛在哪] 防止网站被抄袭的 JS 代码,加密的方式隐藏在重要 JS 文件中,谁抄袭我,我就针对性的弹窗 - V2EX
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 12123 次点击
    这是一个创建于 2982 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

    愿景:弄个 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.给关键原创图片做加密隐写,添加自己的版权水印上去,有能力就用傅里叶(这个麻烦了点),参考 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
    哈哈,所以我开始喜欢这类压缩混淆的代码的小工具了。
    不过现在有好多人都扒你文章的内容挂在自己的网站上,这个解不了啊。
    /div>
    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     Solana     2779 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 14:27 PVG 22:27 LAX 07:27 JFK 10:27
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86