一直以来,JS前端代码因为必须经过IE明文解析,某些加密的JS如:JScript.Encode也因为树大招风,早就被人破解了。还有些加密的手段,通过复杂的变换,改变源码,但最终都逃不脱最后的审判,像unescape,document.write,eval语句来还原。对于JS代码的保护,最好的手段就是混淆,混淆的目的就是让读懂代码的成本比直接写代码的成本高,混淆不是不可破解的,只是增加破解成本,JAVA,C#的加密都是采用混淆。这样对于非常核心的代码,混淆起不到保护代码的作用
站长工具有一个在线js混淆工具,通过它,我们可以直接把写好的js代码通过工具混淆一下,起到保护的作用,比如:
function aa()
{
alert("hello");
}
混淆后
function aa()
{
window["\x61\x6c\x65\x72\x74"]("\x68\x65\x6c\x6c\x6f");
}
这样就看不到了吧