當前位置:首頁 » 文件管理 » js壓縮加密

js壓縮加密

發布時間: 2022-06-27 20:32:10

❶ 求助前端JS都是用什麼加密

寫過 js混淆器,談一些淺顯的個人看法。

個人認為,js的不可讀化處理分為三個方面:壓縮(compression)、混淆(obfuscation) 和加密(encryption)。 (不可讀化處理,這是我自己發明的術語,一切會增加代碼不可讀性的代碼轉換, 都可以這么叫,「增加代碼不可讀性」可能是代碼轉換的結果或者目的).

1. 壓縮

這一操作的目的,是讓最終代碼傳輸量 (不代表代碼量, 也不代表文件體積)盡可能小。壓縮js的工具,常見的有:YUI Compressor、UglifyJS、Google Closure Compiler 等。

通常在代碼壓縮的過程中,只改變代碼的語法,代碼的語義和控制流不會有太大改變。

常見做法是把局部變數縮短化,把一些運算進行等價替換等。代碼壓縮對於代碼保護有一些幫助,但由於語義和控制流基本沒變,起不了太大作用。

在壓縮層面上,代碼不可讀只是一種附帶傷害,不是最終目的。

2. 混淆

這一操作的目的,是讓代碼盡可能地不可讀,主要用作代碼保護。

讓代碼不可讀,增加分析的難度,這是唯一目的。混淆過後文件體積變大一倍也沒關系,代碼量變多也沒關系,運算慢50% 也沒關系。

常見的做法有:分離常量、打亂控制流、增加無義代碼、檢查運行環境如果不對就罷工,等等。

在混淆層面上,代碼不可讀是最終目的。

值得一提的是,Google Closure Compiler 的 Advance Level Compression 會壓縮類和對象的成員,其壓縮結果很難分析,也可以認為是一種混淆,但兼容性不太好。

廣告時間:我寫的 js混淆器,中文名叫 「看起來很厲害的 JS 編譯器」, 英文名叫做 The Impressive JS.Segment.Compiler , 看起來很厲害的 JS 編譯器 。

3. 加密

說實話我很難對加密做一個定義,因為加密在Web界有太多歧義了。

有加密就有解密,意味著加密操作可逆,密文可以明文化。

就這樣看來,在Web界,可以稱之為加密的東西包括:HTTPS傳輸、javaScript實現對稱加密或者不對稱加密等等。

這樣看來,不可逆的代碼壓縮和混淆就不能列入加密這個范疇了。

非要找一個可以稱之為加密,又經常被人誤解為壓縮和混淆的東西,Dean Edwards 的 Dean Packer/Unpacker 可以拿來做個例子。

比如我們把 var num=1;alert(num);

輸入 Dean Packer,pack 一下,得到這么一串東西,是不是看著非常像被壓縮和混淆過的代碼?

把上面那串意義不明物拿來 unpack 一下,得到了原文。

實際上 Dean Packer 只是對源碼進行了一個字元串變換,沒有深入到代碼語法層面,你可以拿 "Hello world, 你好師姐" 來試試。

用Online JavaScript beautifier 能輕松把這串東西還原為 「Hello world, 你好師姐」。

可以看出,代碼加密意味著:將代碼明文進行可逆的變換(加密),生成密文;將密文進行逆變換(解密),可以還原明文;最終運行環境運行的是解密代碼。

結語

實際上大家對壓縮、混淆、加密這三個概念還是挺不清晰的,我在這里說一些個人見解,希望有幫助。

在現實項目中,我是多種手段結合的:

對於不需要做代碼保護的項目,比如個人博客,做代碼壓縮,加快載入速度,這就夠了。
對於需要做一些代碼保護,防止抄襲的項目,可以在源碼中加入一些開發者的信息和防護代碼,然後混淆和壓縮。很不幸的是,我這方面總是做得不太好,防君子防不了小人啊哈哈。
對於需要嚴格加密的項目,可以用 混淆、壓縮、加密、簽名檢查 等多種手段,這我就不清楚了,等大嬸來補充。

❷ 如何隱藏或加密js文件或代碼,瀏覽器客戶端不可以看到

壓縮你的js 代碼 ,變成min.js 這樣裡面的參數都被簡化了,代碼拿到也沒用

❸ 有關js壓縮,加密的事~急求!!!

壓縮是為了讓文件變小,文件小了對網路的要求就降低了,壓縮基本上就是把注釋和空格,回車換行等去掉。
加密應該說是混淆,就是把裡面的函數、變數定義換成沒有什麼意義的簡短字元,使程序的可讀性極差無比

❹ 如何js 加密綁定域名

把上邊這段代碼加入不讓其他域名載入的js文件的最開頭,加密的話其實就用一個js壓縮工具就可以了。上邊代碼我使用的是 google的 Closure Compiler。js文件加入以上代碼的話,只允許 www.test.com 的域名載入。

源文件如下:

(function(){
varchars='';
varhosts=location.host;
vars='';
for(vari=0;i<hosts.length;i++){
s+=hosts[i].charCodeAt(0);
}
if(s!=chars){
thrownewURIError('隨便寫點啥哇。。');
}
})();

❺ 怎麼加密js代碼

可以在網上搜索一下js的在線加密工具。
js真正可以加密的方法很少,大多數方法只能壓縮混淆代碼。

❻ 如何壓縮javascript和css文件

一、壓縮html和javascript:
我們用站長工具的JavaScript-HTML格式化工具,我們打開頁面,我今天要壓縮的文件js文件:common.js ,把js代碼復制到到JavaScript/HTML格式化工具裡面如下圖所示:

點擊下面的「普通壓縮」和「加密壓縮」按鈕,經過我的精心測試,使用「加密壓縮」,對文件壓縮率是最好的,所以點擊「加密壓縮」,壓縮後如圖:

javascript代碼壓縮後,我們就把這些代碼在復制到common.js文件裡面,在吧這個文件上傳到空間原來的位置,進行訪問是否存在一些錯誤,如果沒有什麼問題說明壓縮成功;

我的common.js 文件壓縮前和壓縮後的對比:
壓縮前:

壓縮後:

文件壓縮前和壓縮後確實有明確的減少,說明壓縮確實減少文件的大小,
我們來測試文件壓縮前和壓縮後所有能的時間做對比(我是用火狐插件測試傳輸速度):
壓縮前所用時間:

壓縮後所用時間:

壓縮前所用時間是:125ms,壓縮後所用時間:78ms ,文件壓縮後給我們節省大量的時間,如果每個js都進行壓縮,我們房子訪問速度會更快的。

(註:html文件和javascript壓縮原來一樣的,當時壓縮html要用到「普通壓縮」按鈕壓縮)

二、壓縮css文件:
我們打開站長工具的Css壓縮/格式化工具頁面,我要壓縮的文件是五色旗保健品商城的css主文件style.css,首先我們打開站長工具的Css壓縮/格式化工具頁面 ,把style.css 代碼放到Css壓縮/格式化工具裡面,如下圖所示:

點擊「壓縮代碼」按鈕後,css代碼壓縮成功,如下圖所示:

後邊就是壓縮後的css代碼,你要不右邊的代碼復制到源文件style.css裡面在上傳到伺服器空間裡面,在訪問一下網,看看網頁樣式有沒有改變,如果有點變化就需要簡單的調試一下,如果沒有變樣,說明你的css壓縮成功了;
下面我們來看看styl.css文件壓縮前和壓縮後的大小和放在訪問速度的大小:
文件大小對比:
壓縮前:

壓縮後:

壓縮前30kb,壓縮後23kb,明顯的文件大小減小了
壓縮前所用時間:

css壓縮前的時間.jpg (7.36 KB, 下載次數: 0)
下載附件
css壓縮前的時間.jpg
2013-11-2 00:35 上傳

壓縮後所用時間:

壓縮前所用時間是:188ms,壓縮後所用時間:93ms ,css壓縮後明顯的節省了95ms;

總結:一個大的網站可能會有很多的javascript和css,如果沒有都進行壓縮的話,一定會減少很多文件大小的,其實減少文件大少並不是很重要,最重要的是,文件容量減少了,能夠快速的提高網站訪問的速度,給用戶帶來好的體驗,我們盡量的把文件壓縮到最小,這樣才有利於用戶快速的打開網站,至此我的五色旗保健品商城優化後,我的每天的訪問量也增加了很多。

❼ 關於ajax調用、JS 加密解密的問題!

直接用js壓縮、混淆工具就可以了。
你這樣子加密解密意義不大。最後總是要輸出為js代碼的,隨便用個代碼格式化工具刷一下,你的代碼就被還原了。

❽ js如何加密源代碼,頁面樣式全部用js寫,如何操作

js是不能加密源碼的,換個說法,作為一種解釋性語言,如果你加密了源碼,瀏覽器怎麼解釋你的js腳本
不過可以用插件自動壓縮。壓縮過程中,會把一些變數用a/b/c代替,而且會移除空格和換行。這會大大增加源碼閱讀難度,但是也起不到加密的作用。
如果是electron開發,可以用asar對源碼進行打包,不過這種就屬於客戶端,不是網頁了。

❾ 如何將js加密

簡單的說: javascript是一種客戶端語言,即是在用戶的瀏覽器中被執行的,由於許可權不被伺服器控制,所以不可能加密.
多說一點: 雖然js不能加密,但是如果你不太想被別人太容易拿去使用,你可以使用一些工具對javascript的代碼進行壓縮和代碼混淆. 這種工具你搜一下就是一大堆的.

熱點內容
fmp腳本 發布:2025-01-16 08:12:23 瀏覽:230
nagios自定義腳本 發布:2025-01-16 08:09:52 瀏覽:364
安卓為什麼下不了方舟生存進化 發布:2025-01-16 08:02:32 瀏覽:194
如何登錄男朋友的微信密碼 發布:2025-01-16 07:41:14 瀏覽:194
寶駿解壓流程 發布:2025-01-16 07:35:35 瀏覽:2
兩匹壓縮機多少錢 發布:2025-01-16 07:29:19 瀏覽:635
個人pc搭建游戲伺服器 發布:2025-01-16 07:27:09 瀏覽:970
存儲剩餘照片 發布:2025-01-16 07:25:01 瀏覽:50
ftp解除限制上傳文件個數 發布:2025-01-16 07:16:26 瀏覽:348
梯度下降法python 發布:2025-01-16 07:10:43 瀏覽:520