JS代碼混淆初步
更新時(shí)間:2006年09月05日 00:00:00 作者:
一直以來(lái),JS前端代碼因?yàn)楸仨毥?jīng)過(guò)IE明文解析,某些加密的JS如:JScript.Encode也因?yàn)闃?shù)大招風(fēng),早就被人破解了。還有些加密的手段,通過(guò)復(fù)雜的變換,改變?cè)创a,但最終都逃不脫最后的審判,像unescape,document.write,eval語(yǔ)句來(lái)還原。對(duì)于JS代碼的保護(hù),最好的手段就是混淆,混淆的目的就是讓讀懂代碼的成本比直接寫(xiě)代碼的成本高,混淆不是不可破解的,只是增加破解成本,JAVA,C#的加密都是采用混淆。這樣對(duì)于非常核心的代碼,混淆起不到保護(hù)代碼的作用,不過(guò)JS有這樣的代碼么?本程序沒(méi)有用到編譯原理,其分詞解析思想是基于mechiland(http://www.jzchen.net)的代碼高亮程序,參考了藍(lán)色經(jīng)典的加密混淆專(zhuān)題討論。
最后,本人原則上不贊成代碼混淆加密,寫(xiě)本程序是出于研究目的,本程序本人原創(chuàng),后續(xù)的代碼壓縮等功能陸續(xù)加上,程序中有任何問(wèn)題請(qǐng)指正,任何轉(zhuǎn)載請(qǐng)寫(xiě)明出處。
最后,本人原則上不贊成代碼混淆加密,寫(xiě)本程序是出于研究目的,本程序本人原創(chuàng),后續(xù)的代碼壓縮等功能陸續(xù)加上,程序中有任何問(wèn)題請(qǐng)指正,任何轉(zhuǎn)載請(qǐng)寫(xiě)明出處。
相關(guān)文章
JavaScript動(dòng)畫(huà)原理之如何使用js進(jìn)行動(dòng)畫(huà)效果的實(shí)現(xiàn)
在現(xiàn)在做頁(yè)面很多時(shí)候都會(huì)用上動(dòng)畫(huà)效果,比如下拉菜單,側(cè)邊搜索欄,層的彈出與關(guān)閉等等,下面這篇文章主要給大家介紹了關(guān)于JavaScript動(dòng)畫(huà)原理之如何使用js進(jìn)行動(dòng)畫(huà)效果實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下2023-04-04JS解決position:sticky的兼容性問(wèn)題的方法
本篇文章主要介紹了JS解決position:sticky的兼容性問(wèn)題的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-10-10利用JavaScript實(shí)現(xiàn)一個(gè)日期范圍選擇器
日期范圍選擇器是一個(gè)常見(jiàn)的Web應(yīng)用功能,它允許用戶(hù)選擇一個(gè)日期范圍,本文我們將使用JavaScript來(lái)實(shí)現(xiàn)這個(gè)功能,感興趣的小伙伴可以了解下2024-01-01Javascript 判斷 object 的特定類(lèi)轉(zhuǎn)載
Javascript 判斷 object 的特定類(lèi)轉(zhuǎn)載...2007-02-02