一個免費且高效的JavaScript混淆器(包括ES2017)。使您的代碼難以復制,并防止人們竊取您的作品。該工具是javascript-obfuscator@0.18.7
?Timofey Kachalov創建的優秀(開源)Web UI?。
- 官方網站: https://obfuscator.io/
- Github:詳情
本站下載:
來源于Github
[b2_file link="https://cdn.getimg.net/npc/2019/github/javascript-obfuscator-t191218.zip" name="Obfuscator" pass="" code=""]
這是什么?
此工具可將您的原始JavaScript源代碼轉換為新的表示形式,未經授權,該表示形式將更難理解,復制,重用和修改。混淆后的結果將具有原始代碼的確切功能。
因此,就像UglifyJS,Closure Compiler等?
是的,沒有。盡管UglifyJS(和其他壓縮程序)確實使輸出代碼更難理解(壓縮和丑陋),但可以使用JS Beautifier將其輕松轉換為可讀的代碼。
該工具通過使用各種轉換和“陷阱”(例如?自衛和調試保護)來防止這種情況的發生。
混淆如何工作?
通過一系列轉換,例如變量/函數/參數重命名,字符串刪除等,您的源代碼被轉換為不可讀的內容,而工作方式卻與以前一樣。
聽起來不錯!
只需粘貼您的代碼或將其上傳到下面,然后單擊“混淆”即可。
另外,請務必閱讀所有選項,以了解代碼保護與代碼大小/速度之間的所有權衡。
常問問題
我為什么要混淆我的JavaScript代碼?
保護代碼是個好主意的原因有很多,例如:
- 防止任何人簡單地復制/粘貼您的作品。這對于100%客戶端項目(例如HTML5游戲)尤其重要。
- 刪除不需要的注釋和空格。使加載更快,更難以理解;
- 保護尚未支付的工作。您可以向客戶展示您的工作,知道他們在支付發票之前不會擁有源代碼。
這個混淆器絕對萬無一失嗎?
不,雖然不可能恢復確切的原始源代碼,但有時間,知識和耐心的人可以對其進行反向工程。
由于JavaScript在瀏覽器上運行,因此瀏覽器的JavaScript引擎必須能夠讀取和解釋它,因此無法阻止這種情況。任何承諾不誠實的工具。
為什么我的混淆代碼比原始代碼大?
因為混淆器引入了新的代碼段,旨在保護和防御調試和逆向工程。字符串也被轉換為\xAB
十六進制代碼,使事情變得有些難以理解。您不必太擔心代碼的大小,因為重復的次數很多,混淆的代碼將被您的Web服務器很好地壓縮(如果您的服務器上啟用了GZIP壓縮,則如今大多數情況下都如此)。
我可以在混淆后的輸出上運行諸如UglifyJS或Google Closure Compiler之類的壓縮程序嗎?
不,不建議這樣做,在某些情況下,它會破壞代碼(例如,如果您啟用了自衛)。不過,您可以先通過minifier運行代碼,以確保它刪除了無效代碼并進行了其他優化。
您存儲我的源代碼嗎?
不會。源代碼是由我們的應用程序服務器處理的,然后由混淆器處理,然后又返回到瀏覽器,因此源代碼僅在我們的服務器內存上保留很短的時間(通常為毫秒)。
我可以從經過混淆的代碼中恢復原始源代碼嗎?
不,不可能將混淆后的代碼恢復為原始代碼,因此請確保原始代碼的安全。
此工具可與Node.js源代碼一起使用嗎?
是。
我想在自己的服務器/機器上運行混淆器。可能嗎?
當然。該工具使用以TypeScript編寫的免費開放源代碼(BSD-2-Clause許可)混淆器。您可以轉到其GitHub頁面并在此處閱讀更多信息。
還有許多插件,例如:webpack-obfuscator,gulp?-javascript-obfuscator?和?grunt-contrib-obfuscator。
此外,此Web應用程序也是開源的。查看我們的GitHub。
還有哪些其他類似工具?
如果您只喜歡丑陋的代碼和壓縮的代碼,建議使用JSCompress.com。