第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何混淆(保護(hù))JavaScript?

如何混淆(保護(hù))JavaScript?

搖曳的薔薇 2019-05-23 13:02:59
如何混淆(保護(hù))JavaScript?我想創(chuàng)建一個(gè)非開源的JavaScript應(yīng)用程序,因此我希望學(xué)習(xí)如何模糊我的JS代碼?這可能嗎?
查看完整描述

4 回答

?
茅侃侃

TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超21個(gè)贊

混淆:

試試YUI Compressor。它是一個(gè)非常受歡迎的工具,由Yahoo UI團(tuán)隊(duì)構(gòu)建,增強(qiáng)和維護(hù)。

您也可以使用:

私人字符串?dāng)?shù)據(jù):

將字符串值保密是一個(gè)不同的問題,混淆不會(huì)帶來太大的好處。當(dāng)然,通過將您的源代碼打包成亂碼,縮小的混亂,您可以通過默默無聞來獲得輕松的安全性。大多數(shù)情況下,您的用戶正在查看源,并且客戶端上的字符串值是供其使用的,因此通常不需要這種私有字符串值。

如果你真的有一個(gè)你從未想讓用戶看到的價(jià)值,你會(huì)有幾個(gè)選擇。首先,您可以進(jìn)行某種加密,在頁面加載時(shí)解密。這可能是最安全的選擇之一,但也可能是許多不必要的工作。您可能可以對(duì)某些字符串值進(jìn)行base64編碼,這會(huì)更容易..但是真正想要這些字符串值的人可以輕松解碼它們。加密是真正阻止任何人訪問您的數(shù)據(jù)的唯一方法,并且大多數(shù)人發(fā)現(xiàn)它比他們需要的更安全。

邊注:

眾所周知,Javascript中的混淆會(huì)導(dǎo)致一些錯(cuò)誤?;煜髡谧兊酶靡恍S多服裝決定他們從縮小gzipping中看到足夠的好處,并且混淆的額外節(jié)省并不總是值得的。如果您正在嘗試保護(hù)自己的源代碼,也許您會(huì)認(rèn)為這是值得的,只是為了讓您的代碼更難閱讀。JSMin是一個(gè)很好的選擇


查看完整回答
反對(duì) 回復(fù) 2019-05-23
?
Cats萌萌

TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超9個(gè)贊

我很驚訝沒人提到Google的Closure Compiler。它不只是縮小/壓縮,它分析以查找和刪除未使用的代碼,并重寫以實(shí)現(xiàn)最大限度的縮小。它也可以進(jìn)行類型檢查,并會(huì)警告語法錯(cuò)誤。

JQuery最近從YUI Compresser切換到Closure Compiler,看到了“ 堅(jiān)實(shí)的改進(jìn) ”


查看完整回答
反對(duì) 回復(fù) 2019-05-23
?
鴻蒙傳說

TA貢獻(xiàn)1865條經(jīng)驗(yàn) 獲得超7個(gè)贊

混淆永遠(yuǎn)不會(huì)真正起作用。對(duì)于任何真正想要獲取代碼的人來說,這只是一個(gè)減速帶。更糟糕的是,它可以防止用戶修復(fù)錯(cuò)誤(并將修復(fù)程序發(fā)回給您),并使您更難以診斷現(xiàn)場問題。浪費(fèi)你的時(shí)間和金錢。

與律師討論知識(shí)產(chǎn)權(quán)法以及您的法律選擇。“開源”并不意味著“人們可以閱讀來源”。相反,Open Source是一種特定的許可模式,允許自由使用和修改代碼。如果您沒有授予此類許可,那么復(fù)制您的代碼的人將被違反,并且(在世界上大多數(shù)地方)您有合法的選擇來阻止它們。

您可以真正保護(hù)代碼的唯一方法是不發(fā)貨。移動(dòng)重要的代碼服務(wù)器端并讓您的公共Javascript代碼對(duì)它進(jìn)行Ajax調(diào)用。

請(qǐng)?jiān)诖颂幉榭搓P(guān)于混淆器的完整答案。


查看完整回答
反對(duì) 回復(fù) 2019-05-23
?
慕無忌1623718

TA貢獻(xiàn)1744條經(jīng)驗(yàn) 獲得超4個(gè)贊

您可以隨心所欲地混淆javascript源代碼,但只需要將所有源代碼實(shí)際運(yùn)行在客戶端計(jì)算機(jī)上就可以反向工作...我能想到的最佳選擇是完成所有處理使用服務(wù)器端代碼,javascript所做的所有客戶端代碼都是將處理請(qǐng)求發(fā)送到服務(wù)器本身。否則,任何人都將始終能夠跟蹤代碼正在執(zhí)行的所有操作。

有人提到base64來保持字符串安全。這是一個(gè)糟糕的主意。Base64可以立即被想要對(duì)代碼進(jìn)行反向工程的人員識(shí)別。他們要做的第一件事就是取消編碼,看看它是什么。


查看完整回答
反對(duì) 回復(fù) 2019-05-23
  • 4 回答
  • 0 關(guān)注
  • 1182 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)