2017-05-22 206 views
0

這個問題知道混淆的Javascript代碼的好方法絕不是爲保護代碼的強大的方式...混淆在咕嘟咕嘟

使用咕嘟咕嘟,我正在尋找一種方法來阻止我的應用程序的內容出現太明顯了。不處理敏感數據,但我仍然不希望我的縮小代碼顯得太明顯而無法修改。

一直在嘗試吞噬和吞噬uglify,但無論我使用它們是錯誤的,要麼他們不滿足我的需要。

需要在被: - 功能重命名 - 可變重命名 - 串混淆(至少阻止乍一看人類可讀串) - 比2倍的存儲需求

不會是什麼建議的方法,線索,插件?

由於提前,

+0

[我怎樣才能混淆(保護)JavaScript?](https://stackoverflow.com/questions/194397/how-can-i-obfuscate-protect-javascript) –

+0

謝謝。這些解決方案也行不通,我會逐步審查我的流程。胸圍是某個地方的問題。 – Jem

回答

0

到目前爲止,最有效的(對我來說)是管下面的代碼,這只是適用字符旋轉:

function obfuscate(text, key, n = 126) { 
     // return String itself if the given parameters are invalid 
     if (!(typeof(key) === 'number' && key % 1 === 0) 
      || !(typeof(key) === 'number' && key % 1 === 0)) { 
      return text.toString(); 
     } 

     var chars = text.toString().split(''); 

     for (var i = 0; i < chars.length; i++) { 
      var c = chars[i].charCodeAt(0); 

      if (c <= n) { 
       chars[i] = String.fromCharCode((chars[i].charCodeAt(0) + key) % n); 
      } 
     } 

     return chars.join(''); 
    }, 

    function defuse(text, key, n = 126) { 
     // return String itself if the given parameters are invalid 
     if (!(typeof(key) === 'number' && key % 1 === 0) 
      || !(typeof(key) === 'number' && key % 1 === 0)) { 
      return text.toString(); 
     } 

     return obfuscate(text.toString(), n - key); 
    } 
1

就試試這個:Javascript Obfuscator。 據我所知,幾乎不可能將混淆的代碼恢復爲原始代碼。