Come proteggere codice javascript
1.244 visiteA meno che non si voglia creare codice open source, chiunque crei un software vuole preservarne il copyright e proteggerne il codice.
Purtroppo possiamo proteggerlo quando per sviluppare usiamo linguaggi di programmazione ad alto livello (come il C/C++) o linguaggi di programmazione interpretati lato server (come il PHP) ma quando parliamo di javascript che è un linguaggio di scripting orientato agli oggetti e interpretato dai browser, quindi lato client, è impossibile.
E’ anche impossibile evitare che il file contenente il nostro codice javascript possa essere trasferito sul computer dell’utente dato che per essere letto ed eseguito deve proprio essere scaricato fisicamente nella cache del browser.
Quindi come possiamo proteggere codice javascript o almeno rendere difficile la vita ai “ladri di codice” ?
L’ unica cosa che possiamo fare è offuscarlo (usando un obfuscator), criptarlo (con un encrypter) e comprimerlo (con un compressor o minifier) in modo da renderlo illeggibile agli occhi di utenti malintenzionati !
Attenzione a non criptarlo solamente dato che potrà essere facilemente de-criptato.
Esistono delle librerie famose javascript come YuiCompressor scritto in Java che fanno un ottimo lavoro creandone direttamente il minify del file js e altre per offuscare e criptare ma su internet, tuttavia, possiamo trovare molti siti che offrono questo servizio direttamente online e vogliamo citarne alcuni dei più usati:
– http://refresh-sf.com/yui/ che usa YuiCompresso per comprimere testo, file o da url
– http://www.javascriptobfuscator.com/ offuscatore di codice javascript testuale
– http://www.daftlogic.com/projects-online-javascript-obfuscator.htm altro offuscatore
– http://marijnhaverbeke.nl/uglifyjs produce un file compresso minify
– http://jsutility.pjoneil.net/ qui è possibile fare un pò tutto dal comprimere a offuscare e criptare
– https://jscrambler.com/ che offusca, comprime e protegge
– http://www.obfuscriptor.com/ offusca e comprime
– http://javascript-minifier.com/ comprime (ottimo!)