Dean Edwards씨가 만든 자바스크립트 압축기(Compressor)이자 암호화기(Obfuscator)이다. 특징으로는 다양한 패킹방식을 지원하며, 품질 및 용량이 매우 우수하다. 이미 MooTools의 배포에 사용되어 그 성능이 입증된 바 있다. 자바스크립트 패커는 PHP5 이상의 환경에서 작동하고(PHP4에서 작동하는 버전도 있다.) LGPL 2.1 라이센스를 따른다. 서버에 직접 설치하여 자신이 만든 라이브러리를 배포하는 용도로도 사용할 수 있다. 인코딩(packer) 옵션으로는 None(Basic compression only), Numeric (Base 10), Normal (Base 62), High ASCII (Base 95)를 지원하고 있으며, 빠른 디코딩(unpacker) 기능까지 가지고 있다. 특수문자(Special Characters) 옵션을 사용하면 지역변수를 암호화한다고 한다.

최근, 자바스크립트의 사용량이 폭등(?)하면서 웹사이트의 적잖은 오버해드 요인으로 주목받고 있기도 하다. 특히, 소스가 그대로 드러나 버리는 자바스크립트는 이번 네이버 소스코드 무단복제 논란에서 보듯이 무단도용의 문제도 없지않다. 자바스크립트 패커를 사용함으로 이러한 문제를 일부분 해결할 수 있을지도 모르겠다.

// 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};

Comments