JavaScript加密注意事项,怎么加密JS脚本最安全?

Dec 14, 2019 2:06:56 AM 1791

JavaScript加密话题

#.  JavaScript  需不需要加密?

#.怎么  加密JS  最安全?

#.怎么把  JS  中的URL地址、秘钥隐藏起来?

#.  JavaScript加密  注意事项是什么?

下面一一说来... ...


一、JavaScript需不需要加密?

前段时间看见几个“JavaScript大牛”再某平台讨论,在讨论JavaScript是否需要加密,大部分“JavaScript大牛”说没必要加密。

我来说说我的看法把。

1、一般的业务JavaScript代码,如正常的业务JavaScript,基本没必要加密,做一个压缩变量名、方法名,做整体的压缩,为了减少JavaScript代码体积,从而加快加载速度。而加密都会把体积变大,越复杂的加密越把代码体积变大了。

2、如果是敏感的业务,那肯定肯定肯定肯定是要加密的,但是不是单纯的加密,不是说写完业务代码后加个密就解决了,也就是就要整体设计了。

二、怎么加密JS最安全?

    JS加密就是套路,  JavaScript加密  没有最安全的,只有套路最深的。  JavaScript  不管您怎么加密最终需要给浏览器认识,就有一个解密的过程。所以JS加密最后还是能解密,解密 不等于 还原 ,所以不管怎么加密,最终都可以还原个大概,这个只是时间问题,有的人看到这里就会慌了,就会说那加密还有什么意思?

那我问问?DES对称加密美国中情局采用的类似加密能不能解密?我可以肯定回答您,“可以”,只是时间问题,但凡本身就是可逆的加密,不管是有秘钥还是没秘钥都能解密,只是时间问题,一天、一月、一年、五年、十年、一百年、总可以解密,因为代码本身是可逆的。

总结:

在书写业务代码的时候就要设计到安全问题,一般最好是把整体业务做拆分,核心计算的业务最好放到后台,宁愿加载多次也不要把核心代码放到前端完成。把简单的代码复杂化。把简单的逻辑搞复杂化然后加密。

三、怎么把JS中的URL地址、秘钥隐藏起来?

如果  JS代码  中有URL地址,不想让别人看到,加密即可解决。但是要复杂化,那就需要复杂化了,下面看个例子。

//原来的代码
$.get("https://www.jsjiami.com/demo/load.js");


//人工复杂化
(function (a,b,c,d,e) {
    e = e || {
        e:'w'+'ww',
        j:'jsji'+'ami',
        a:'.co'+'m/d'+'emo/loa'+'d',
        c:'ht'+'tps://',
        d:'ge'+'t'
    };
    a[e?e.d:e](e.c+e.e+e.j+e.a+c+d);
})($,'g','.j','s');

虽然不加密比较容易看出来,但是这个代码再加密一下,效果比源码好得多。秘钥也一样。

另外可以再A页面获取秘钥、B页面加工秘钥、C页面再使用秘钥,可以存储到  cookie  、cache/item中。

四、JavaScript加密注意事项是什么?

1、尽量采用闭包的方式,像  JQuery  一样。采用一个全局变量赋值闭包的方式调用。如果需要加密的JS是多个JS依赖调用,那么可能会出现方法名或者变量名加密后修改成其他的了,所以会出现方法名或者变量名未定义。

2、加密的  JS代码  中不能有其他语言代码,比如  PHP  、  Java  等代码。如果不明白为什么,请先了解JS /PHP等代码运行的顺序。

3、加密的代码不要省略”;”“{ 和 }” 最牛加密里面有讲解。






版权所属:JavaScript加密

原文地址:https://www.jsjiami.com/article/jsencode-complicate.html

转载时必须以链接形式注明原始出处及本声明。


本文标签:
最新文章
Chrome浏览器模拟微信客户端访问网址,方法图文讲解模拟微信 46
JavaScript在线加密,最牛加密按次加密计费方式讲解。 163
丁香公开课请求 sign(签名) 分析过程讲解 355
JavaScript优雅的跳转,作弊跳转方式,JS防检测跳转。 2321
JS代码书写注意事项,JavaScript代码压缩后为什么报错? 1190
JavaScript 加密混淆之后运行 xxxx is not defined,Javascript 提示xxxx is not defined 怎么办? 1727
模仿支付宝输入支付密码的UI,带JavaScript 密码输入校验功能 1608
获取当前北京时间API 3185
JS从数组中随机获取一个值 724
Autojs怎么安全加密?Autojs在线加密工具注意事项。 9756

      商务合作:1#vfan.cn(把#换成@),或者联系QQ:84034666

      业务咨询:i#itboy.net(把#换成@),或者联系QQ:8446666

再次输入密码