首页 > 前端代码混淆怎么做?

前端代码混淆怎么做?

总是听说前端代码混淆,那么,用什么工具来混淆?混淆后能还原吗?


讲真,真的没有必要


很多自动化工具都可以,在线的也有很多,本地一般gulp,grunt这种,混淆会用一些简单的字母代替你的变量名,这个是没法还原的,但是还是遵循js基本规则的,可以读懂,还有一种是加密混淆,

eval(function (p, a, c, k, e, d) {
    e = function (c) {
        return (c < a ? "" : e(parseInt(c / a))) + ((c = c % a) > 35 ? String.fromCharCode(c + 29) : c.toString(36))
    };
    if (!''.replace(/^/, String)) {
        while (c--)d[e(c)] = k[c] || e(c);
        k = [function (e) {
            return d[e]
        }];
        e = function () {
            return '\\w+'
        };
        c = 1;
    }
    ;
    while (c--)if (k[c])p = p.replace(new RegExp('\\b' + e(c) + '\\b', 'g'), k[c]);
    return p;
}('P r$=["","","","","","\\k\\k","","","","","\\U\\w\\j\\x\\b\\k\\i\\j\\t\\1H\\1G\\t\\3e\\t\\2o\\j\\f\\b\\k\\X\\a\\t\\x\\i\\o\\a\\2m\\t\\3f","\\2q\\1P","\\2p\\1P","\\2H\\1P","\\2G\\1P","\\2L\\1P","\\2K\\1P","\\4j\\1P","\\4l\\1P","\\3Z\\1P","\\2I\\1P","\\2I\\2q\\1P","\\2I\\2p\\1P","\\1s","\\2d\\2c\\2Y","\\2d\\2c\\2q","\\2d\\2c\\2p","\\2d\\2c\\2H","\\2d\\2c\\2G","\\2d\\2c\\2L","\\2d\\2c\\2K","\\2e\\2Y","\\2e\\2q","\\2e\\2p","\\2e\\2H","\\2e\\2G","\\2e\\2L","\\2e\\2K","\\1s","\\1s","\\1s","\\1s","\\1s","\\2q\\1P","\\2p\\1P","\\2H\\1P","\\2G\\1P","\\2L\\1P","\\2K\\1P","\\4j\\1P","\\4l\\1P","\\3Z\\1P","\\2I\\1P","\\2I\\2q\\1P","\\2I\\2p\\1P","\\1s","\\2d\\2c\\2Y","\\2d\\2c\\2q","\\2d\\2c\\2p","\\2d\\2c\\2H","\\2d\\2c\\2G","\\2d\\2c\\2L","\\2d\\2c\\2K","\\2e\\2Y","\\2e\\2q","\\2e\\2p","\\2e\\2H","\\2e\\2G","\\2e\\2L","\\2e\\2K","\\1s","\\1s","\\1s","\\1s","\\1s","\\1Y\\1T\\1s\\1T\\2Q\\1T\\1Y\\1Y","\\2F\\1s\\1Y\\2F\\1w\\1Y\\1s\\1w\\3k\\1s","","\\O\\1w\\1j\\f\\l\\a\\1w\\p\\a\\b\\1g\\a\\b\\B\\b\\f\\b\\a","\\1S\\x\\i\\j\\j\\1T\\q\\j\\p\\2N",

这种的就得解一下才能读,代码主体全在最后那一行


前端那个叫压缩,混淆的话只能说因人而异,因为调试实在太容易了,任何js无论混淆成什么样一定有一段是标准js的代码,从那里突破有耐心就能还原出来
何况css id url 资源这些一般是没法混淆的 对照前端一下看个七七八八了


目前普遍用的最多的是UglifyJS, 他是运行在Node.js环境上的, 有各种工具对应的插件:


没必要吧讲真,真的没有必要


在前端做加密只能防一防小白,最好不要把重要的东西放到前端里面去,例如各种配置的 key 和 secret

移动时代的前端加密


使用前端工作流gulp来混淆,gulp呢有很多插件,比如http://www.open-open.com/lib/view/open1419559364328.html 就可以实现混淆;
混淆后的代码我们可以覆盖,也可以新开一个目录存放混淆后的代码,所以不存在还原这个问题


用webpack或者gulp皆可


混淆之后不易阅读 没有办法还原

但是格式化后还是可以读懂的


代码写得漂亮就是给人看的,这和妹子长得漂亮也是给人看的一样。
前端代码何必藏着掖着

【热门文章】
【热门文章】