javascript实现的加解密,请高手解密原理

最近在看一个域名被路由劫持的一段JAVASCRIPT代码,有一段实现了数据的解密工作,代码如下,请教大牛解密各个过程的实现原理,该加密算法是何种加密算法?


de = function (n) {
    // K貌似是校验字符串,共26个字符
    var l = 1,
        k = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
    var c = n.charAt(0) * l;
    if (isNaN(c)) return '';
    c = n.substr(l, c) * l;
    if (isNaN(c)) return '';
    var d = n.length,
        t = [],
        a, f, b, x = String(c).length + l,
        m = function (z) {
            return k.indexOf(n.charAt(z))
        },
        i = k.length; // 26
    if (d != x + c) return '';
    while (x < d) {
        a = m(x++);
        if (a < 5)
            f = a * i + m(x);
        else
            f = (a - 5) * i * i + m(x) * i + m(x += l);
        t[t.length] = String.fromCharCode(f);
        x++;
    }
    return t.join('');
};

// 解密过程
console.log(de("3406ETBIEMEGBICGBIEMEGCJCFBWCBCECFCDBYBYDREADTEHDREIDZBIBSBIENEIBICGBIEKELEODRDUEICJBWBMDUDTEKCJBMEKELEODRELEIEMCJBZBMEBDXCJENEMDYBTCEBMEKELEODRELENDZBZCJDNCABSBZBWDPBMEKELEODRELENDZCACJDNCBBWBSBZBWBWDPBMEKELEODRELENDZBXCJDNEKELEODRELENDZBZBTBXDPBMEKELEODRELENDZBYCJBWBMEBEGEIENEMDGCJDNCBBSBYCBDPBIBSBIENEABICGBIEKELEODRDUEICJBWBMEKELEODRELENDZBZCJDNCABSBZBWDPBMEBDXCJENEMDYBTCEBMEBEGEIENEMDGCJDNCBBSBYCBDPBIEV"));

代码编写有误,已经更新,不好意思。

阅读 4.4k
1 个回答

首先这个代码运行不了啊
另外这种加解密没任何意义 无论什么牛B得算法 执行的结果一定是一段正规的js代码 最多是做了变量混淆 改了某些函数的名字而已

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题