js 代码混淆的另一种思路

2016-12-15 20:58:13 +08:00
 pysama
不想让自己的成果被人快速窃取,常规的代码保护方式就是代码压缩、混淆变量名和函数名。针对这种加密,格式化+变量名逐个还原,也能逐步的解密代码。

我的思路是:通过自动化工具,在代码中故意加入各种干扰代码,即:一本正经的胡说八道。这样一来,即使格式化后,也会因为颇为庞大的代码量和莫名其妙的代码而极大降低了代码的可阅读和可维护性。

当然也有局限性,真正对外的项目肯定不能这么干。只适用于公司内部的一些自研项目。通过这种方式,以避免拿来主意的同事拿着你的代码随便改改就去邀功。
4619 次点击
所在节点    程序员
37 条回复
SourceMan
2016-12-15 23:14:49 +08:00
压缩后基本就不可读了
sagaxu
2016-12-15 23:15:39 +08:00
你这种员工,直接开除就行了
schezukNewTos
2016-12-15 23:21:00 +08:00
FrankFang128
2016-12-15 23:22:00 +08:00
加一个反义词库就行了
alqaz
2016-12-15 23:48:57 +08:00
大家那么忙,谁会在意的你 js 代码,当真的到达这个地步了,买一个专业工具吧。
q397064399
2016-12-16 06:28:22 +08:00
全都是脱了裤子放屁,

如果代码有被偷的价值>反混淆成本,无论你怎么搞 都是没有意义的
techmoe
2016-12-16 06:30:09 +08:00
往里加东西的话体积不就大了么
Kokororin
2016-12-16 08:38:42 +08:00
haocity
2016-12-16 09:12:47 +08:00
@jarlyyn +1 过两天...这是谁写的代码?
misaka19000
2016-12-16 09:16:12 +08:00
@nfroot 这个是怎么转化的?
nfroot
2016-12-16 11:02:20 +08:00
@misaka19000 这个东西叫 jsfuck , jsfuck.com
nfroot
2016-12-16 11:03:55 +08:00
@q397064399 一般来说反混淆成本太高,所以平常保护一下还是有意义的。(毕竟不是每个项目都那么有价值)
yivanus
2016-12-16 12:18:58 +08:00
你有值得别人借鉴的代码证明实力比别人强啊。一直被模仿,从未被超越。。怕啥。你防着的这些时间可能已经比别人进步更多了。
jyf007
2016-12-16 12:37:48 +08:00
虚拟机
stormpeach
2016-12-16 14:14:51 +08:00
一般的业务代码没有被偷的价值,有价值的一般是某些算法代码,这些代码可以用能编译成二进制的语言来写;但是如果对方能够反编译+看懂你的算法代码,那也只能说他厉害了。然而有这个实力的为什么还要偷你的代码呢。。。。
Warder
2016-12-16 20:50:35 +08:00
楼主的动机真是奇怪,居然是为了防同事。
chiuan
2021-09-28 16:08:43 +08:00
为什么要防同事????

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/327925

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX