Introducerea JScrambler Protejați-vă codul

Ce veți crea

Pe măsură ce importanța JavaScript crește, la fel trebuie să vă protejați proprietatea intelectuală. În acest tutorial vom arunca o privire la JScrambler, un instrument pe care îl puteți folosi pentru a vă proteja codul de concurenți și de hackeri.

Ce este JScrambler?

JScrambler este o soluție enterprise pentru a vă proteja codul JavaScript în aplicații destinate aplicațiilor web, HTML5, mobile, Node.js și jocurilor web.

În timp ce majoritatea eforturilor de protecție JavaScript depășesc rareori transformările simple de expresie regulată, JScrambler este un interpret și un motor de parsare JavaScript care creează un arbore de sintaxă abstractă care reprezintă codul dvs. sursă. Prin urmare, JScrambler vă poate asigura HTML5 și JavaScript într-un mod care să asigure executarea codului protejat cu aceeași funcționalitate ca și sursa. 

Abordarea lui JScrambler necesită o testare amănunțită și o analiză avansată a codului sursă pentru a crea optimizări de precizie care să funcționeze bine sub resurse limitate, 2) să nu degradeze performanța și 3) să execute fără probleme într-un mediu garantat 100% compatibil cu toate browserele și platformele. 

Adăugarea JScrambler la procesul de dezvoltare vă protejează proprietatea intelectuală și împiedică o serie de scenarii problematice:

  • concurenții construind pe codul dvs.
  • noii competitori își încep eforturile în ceea ce privește codul
  • clienții care deblochează caracteristici premium
  • redistribuirea codului dvs. pe Internet
  • încălcările acordurilor de licență
  • accesul neautorizat al codului dvs. găzduit în mediile cloud sau shared hosting
  • proliferarea litigiilor juridice IP

În acest tutorial, vă voi ajuta să vă protejați codul cu JScrambler și să vă prezint serviciile sale și diferitele opțiuni disponibile pentru dvs. În plus față de serviciul bazat pe cloud, puteți integra, de asemenea, JScrambler în mediul dvs. de dezvoltare prin API-ul său. Dacă aveți nevoie de performanță și securitate suplimentare, puteți găzdui soluția sa de întreprindere autonomă.

Ce tipuri de aplicații suportă JScrambler?

JScrambler funcționează cel mai bine cu următoarele medii de aplicații:

  • aplicații web pentru desktop
  • aplicații web mobile
  • Aplicații Node.js
  • Aplicații HTML5
  • aplicații de jocuri online

Beneficii pentru Node.js

Odată cu proliferarea Node.js, JavaScript poate fi folosit în afara contextului unui browser web, atât pe server, cât și pe partea clientului. Poate fi construit în afara browserului și mai târziu să fie împachetat și executat în interiorul browserului. Această flexibilitate și eleganță au contribuit cu siguranță la popularitatea sa. 

Cu toate acestea, indiferent dacă lucrați la o bibliotecă distribuită prin NPM, un client independent sau o aplicație de browser - și cum ar fi aplicațiile web obișnuite dezvoltate utilizând JavaScript, acesta este încă trimis sau instalat în text clar în dispozitivul utilizatorului final. Dacă utilizați servere partajate sau găzduite, este posibil să vă faceți griji că codul dvs. este stocat în text clar.

Evident, protecțiile codului JScrambler pot fi deosebit de valoroase pentru companiile care își construiesc proprietatea intelectuală extensiv în Node.js.

Ce beneficii oferă JScrambler?

Securitate îmbunătățită

JScrambler vă permite să ascundeți logica aplicației de la potențialii atacatori, cum ar fi informațiile pe care le colectează de la utilizator, modul în care acestea sunt procesate pe partea clientului și modul în care acesta este trimis către server. Obfuscatia lui introduce un anumit nivel de aleatorie, care va permite sa explorati tehnicile de morfing a codului; acestea pot ajuta la prevenirea automatizării atacurilor.

Protejează proprietatea dvs. intelectuală

JScrambler poate ascunde algoritmii JavaScript de la clienți de la concurenți care ar putea încerca să o analizeze și să o fure. Dar versiunile de dezvoltare și de producție ale codului dvs. nu trebuie să fie aceleași. Puteți să testați și să depanați codul neprotejat și să aplicați JScrambler pentru a implementa protecția exclusiv în testarea și producția.

Punerea în aplicare a acordurilor de licență

Dacă dezvoltați și vindeți aplicații JavaScript, fie standard JavaScript, aplicații web mobile sau HTML5, veți dori să împiedicați pe cineva care nu a plătit sau a cărui licență a expirat de la executarea codului. JScrambler vă permite să vă blocați codul la o listă predefinită de domenii și să setați datele de expirare. De exemplu, acum puteți furniza demo-uri expirate clienților dvs., fără a suferi teama de cod sau pierdere de client.

Optimizarea performanței

JScrambler oferă transformări de optimizare care fac codul dvs. mai mic și mai rapid să se încarce. Aceste transformări sunt concepute special pentru tipul de aplicație și cerințele de performanță. De exemplu, aplicațiile web mobile nu pot realiza același grad de obfuscare pe care o aplicație standard JavaScript care rulează pe un procesor desktop poate.

Ce caracteristici oferă JScrambler?

Abordarea lui JScrambler permite protejarea produsului dvs. în timp ce este ușor de întreținut. Procesul de dezvoltare poate evolua în mod natural în timp ce se integrează metode de securitate la nivel de întreprindere și de depanare. Iată câteva dintre caracteristicile pe care JScrambler le oferă:

Dezvoltarea flexibilă a procesului de dezvoltare

JScrambler poate fi folosit în mai multe moduri diferite. Poti:

  1. Utilizați serviciul web bazat pe cloud și aplicați protecția la alegere.
  2. Utilizați serviciile sale API cu o varietate de biblioteci de clienți pentru a le integra în scripturile de construire și implementare. Consultați documentația JScrambler Web API și descărcările clientului API pentru mai multe informații.
  3. Utilizați aparatul virtual JScrambler autonom în rețeaua organizației proprii cu soluția Enterprise.

Minificare și compresie

JavaScript se deplasează de la server la client înainte de a fi interpretat de browser. Prin urmare, reducerea mărimii primei octeți îmbunătățește timpul de încărcare, contribuind la un răspuns mai rapid pentru aplicația dvs. Mai mult, dacă se utilizează tehnici de obfuscare, transformările de reducere a codului de dimensiune contribuie la ascunderea logică și reduc dimensiunea codului care ar putea fi crescut datorită utilizării acestor transformări.

Optimizare

JScrambler poate oferi optimizare în termeni de performanță computațională; desigur, această tehnică izolată nu oferă nici o protecție pentru cod.

Confuzie

Scurtarea codului sursă constă în transformarea codului sursă pentru a face mai greu de înțeles, fără a schimba funcționalitatea sa originală. Abordarea tehnologică a lui JScrambler vă asigură HTML5 și JavaScript într-un mod care asigură executarea codului protejat cu aceeași funcționalitate ca și sursa.

Capcane de cod

JScrambler vă permite să vă închideți JavaScript pentru un anumit domeniu sau o listă de domenii, de ex. mywebsite.com. Codul dvs. protejat nu va funcționa în alte domenii decât cele pe care le-ați ales. De asemenea, puteți restricționa codul la o anumită dată de expirare pentru demonstrații sau licențe care pot fi extirpate sau pentru a le restricționa anumite browsere și sisteme de operare.

Codul de auto-apărare

Una dintre principalele utilizări ale obfuscării de coduri este de a proteja proprietatea intelectuală a software-ului prin ascunderea logicii sale, mai degrabă decât să încercați să impuneți o licență software și să vă bazați pe soluții legale. Obfuscația folosită în combinație cu tehnicile anti-depanare ajută la înfrângerea încercărilor de inginerie inversă și reutilizarea codului, în cea mai mare parte datorită faptului că calitățile de mentenabilitate și reutilizare a codului sunt degradate în acest scop.

JScrambler oferă capabilități de auto-apărare pentru aplicațiile HTML5 și JavaScript. Aplicația dvs. se poate proteja în mod activ prin detectarea încercărilor de modificare a codului sursă și a activităților de depanare și prin ruperea intenționată pentru a atenua atacul. Tot ceea ce este nevoie pentru a declanșa această apărare este schimbarea unui singur caracter.

Anti-debugging-ul vizează anularea procesului de inginerie inversă și depanare. Este ideal pentru a împiedica analiza (dinamică) a codului, făcând orice încercare de de-obfuscate mai dificilă.

Anti-manipularea are rolul de a atenua modificările aduse codului dvs. utilizând tehnici (de exemplu) care schimbă comportamentul codului dvs. sau îl pot sparge dacă este detectată o încercare de tamper.

Iată o demonstrație a anti-manipulării lui JScrambler.

Documentație detaliată

Centrul de ajutor JScrambler oferă descrieri detaliate ale fiecărei caracteristici și transformări, de ex. Obfuscări și abordări de optimizare:

Localizarea pentru șase limbi

Interfața JScrambler este disponibilă în prezent în șase limbi:

Planuri de tarifare

JScrambler oferă un plan gratuit care oferă miniere și optimizare. Sprijinul pentru proiecte mai mari și medii mai largi începe la 35 USD pe lună când se facturează anual:

Noțiuni de bază cu JScrambler

Înscrierea în JScrambler este ușoară:

După ce te-ai înscris, vei fi prezentat Proiect nou ecran. JScrambler va include un proiect web demonstrativ static.

Cu fiecare proiect nou, puteți să direcționați JScrambler la unul dintre modurile sale de aplicare:

Mod standard: Standardul de protecție și optimizare JScrambler. Suficient pentru majoritatea aplicațiilor JavaScript. Nu vizează în totalitate funcțiile HTML5 sau nu gestionează performanța mobilă.

Compatibilitate mobilă: Transformările sunt aplicate luând în considerare limitările și nevoile dispozitivelor mobile.

Compatibilitate HTML5: JScrambler protejează și optimizează aplicațiile HTML5 și Gaming Web prin direcționarea noilor caracteristici HTML5.

Node.js Compatibilitate: JScrambler protejează și optimizează aplicațiile Node.js.

Apoi trebuie să specificați una sau mai multe șabloane de protecție și optimizare; planurile avansate pot alege combinații. De asemenea, puteți configura șabloane pentru proiectul dvs. care aleg transformări specifice:

Interfața oferă explicații utile pentru fiecare opțiune:

Dacă selectați transformări specifice, este posibil să vi se solicite să furnizați setări de configurare. De exemplu, furnizarea unei liste de domenii pentru blocarea domeniului:

Odată ce ați aplicat transformările lui JScrambler, veți fi returnat la proiecte meniul. Aici puteți descărca codul rezultat:

Iată o comparație comparativă a codului JavaScript în proiectul meu înainte și după transformările mele:

Desigur, utilizarea JScrambler-ului static nu are sens pentru fiecare echipă de dezvoltare. API-ul JScrambler oferă opțiuni pentru integrarea continuă.

JScrambler codul dvs. Cu API

Cu API veți putea automatiza desfășurarea tuturor fișierelor din proiect prin executarea unei comenzi simple.

API-ul oferă o interfață REST simplă, ceea ce înseamnă că trebuie să implementați doar câteva cereri HTTP pentru al utiliza. Puteți vedea exemple în centrul de documentare API JScrambler. JScrambler oferă clienți pentru PHP, Java, Node.js, Atom, Grunt, Gulp și Python. Vizitați lista completă a Descărcați clienți.

Integrare ușoară în construcție

Indiferent dacă construiți aplicația folosind un script de linie de comandă sau un runner de activități, este foarte ușor să integrați JScrambler în procesul dvs. de construcție existent. 

JScrambler este deja integrat în toți alergătorii principali de sarcini, iar dacă acest lucru nu funcționează pentru dvs., există un executabil JScrambler API CLI pe care îl puteți apela din script-urile sau IDE-ul favorit. 

Mai mult, API vă permite să integrați transformarea JScrambler continuă în procesul de dezvoltare. 

Iată un exemplu de cod pe care l-ați folosi cu PHP pentru a încărca codul pentru JScrambler:

requ_once 'jscrambler.php'; $ accessKey = 'YOUR_ACCESS_KEY'; $ secretKey = 'YOUR_SECRET_KEY'; $ apiHostname = 'api.jscrambler.com'; $ port = '443'; $ jscrambler = noul Jscrambler ($ accessKey, $ secretKey, $ apiHostname, $ port); $ response = $ jscrambler-> post ('/ code.json', array ('fișiere' => array ('index.html', 'script.js'), 'domain_lock' expiration_date '=>' 2099/12/31 '));

Iată un exemplu de pachet JSON pe care JScrambler l-ar reveni:

"id": "401c600215aab40ea4709a3a0075ef196000cdf0", "extensie": "zip", "received_at": "2012-01-31 18:50:57", "surse": "a3b85573d493d803537555f48a1a7ac9778ec19f" ":" html "," nume fișier ":" index.html "," dimensiune ": 125025, " id ":" 091306a8d92c5f8ad61bbfd134367bf5961be436 "," extensie ":" js "," filename ":" script.js " "dimensiune": 113235]

JScrambler Enterprise

Dacă lucrați pentru o companie mare sau una cu cerințe de securitate ridicată și de proprietate intelectuală, este posibil să aveți nevoie de acces mai sigur la serviciile JScramblerului.

JScrambler Enterprise este un dispozitiv virtual pe care îl descărcați și rulați în propria infrastructură, ceea ce înseamnă că nu trebuie să transmiteți niciodată codul dvs. De asemenea, garantează 100% disponibilitate și prioritate maximă.

În încheiere

JScrambler este un produs ușor de utilizat, sofisticat. Iată o scurtă recapitulare a ceea ce am acoperit:

  • Interfața web JScrambler este simplă de utilizat
  • Oferă o protecție completă pentru codul dvs.
  • Utilizează un algoritm pentru a verifica dacă codul dvs. protejat va funcționa pe platforme
  • Este disponibil pe web (nu este nevoie să descărcați nimic)
  • Există un API pentru integrarea cu procesul dvs. de construire
  • Există o soluție de întreprindere disponibilă pentru instalarea la fața locului (dacă nu doriți să trimiteți codul dvs. oriunde)

Sper că ați găsit această imagine de ansamblu a capabilităților lui JScrambler interesantă și utilă. 

Dacă doriți să vedeți mai multe de la mine, puteți să căutați alte tutoriale Tuts + pe pagina mea de instructor sau să urmați-mă pe Twitter @reifman.

Link-uri conexe

  • JScrambler
  • Documentație API JScrambler Web / Descărcări API client
  • JScrambler Enterprise
  • JScrambler Blog
Cod