首页 >> 编码加密 >> Javascript Packer压缩
工具简介

什么是JavaScript Packer混淆

有人将Packer称为JavaScript的加密工具(混淆工具),也有人将其称为压缩工具。不管怎么说,Packer实质上是一个编码工具,不过经过它编码后可以被浏览器直接识别。使用也非常简单,在“Encoding”选项中,有四个项目可以选择:None:简单压缩,移除空格和注释,编码特殊字符
Numeric:所有的字符都被编码成数字
Normal :所有的字符都被编码成字母与数字符号构成的值。这是推荐的方式。
High ASCII:这种方式的压缩率较高。不推荐,会有兼容性

Fast Decode(快速还原):该选项被选中的话,将插入一小段代码(120 bytes),以使代码能够更快的还原(decode)

Special Characters(特殊字符):为了让压缩能区分全局变量和局部变量,压缩工具会将变量转换成下面的格式,由于 Javascript 并不存在确切意义上的全局变量和局部变量,我们可以用下面的方式定义:

局部变量 Local ($)
变量只在当前范围内有效,参数和函数内部的变量就是一个典型例子,将局部变量用 $ 标识,压缩时会截取他们的第一个字符,附加的 $ 将使截取的字符加长,数字将会被保留。

// unpacked:  function test($left, $top1, $top2, $$length) {  // do something  };  // packed:  function test(l,t1,t2,le){};

全局变量 Private (_)
全局变量可以在整个代码中使用,用 “ _ ” (下划线)来标识,有下划线标识的全局变量将会被转换成下划线加上一个数字:

// unpacked:
var _CONSTANT = 42;
function _test($left, $top1, $top2, $$length) {
return ($top1 / $top2) + _CONSTANT;
};
// packed:
var _0=42;
function _1(l,t1,t2,le){
return(t1/t2)+_0;
};