Introduktion till JScrambler Skydda din kod

Vad du ska skapa

Eftersom vikten av JavaScript växer, så behöver du skydda din immateriella äganderätt. I den här handledningen tar vi en titt på JScrambler, ett verktyg som du kan använda för att skydda din kod från konkurrenter och hackare.

Vad är JScrambler?

JScrambler är en molnbaserad företagslösning för att skydda din JavaScript-kod i program som är avsedda för skrivbordswebben, HTML5, mobil, Node.js-appar och webbspel.

Medan de flesta JavaScript-skyddsåtgärder sällan går utöver enkla reguljära uttryckstransformationer, är JScrambler en JavaScript-tolk och tolkningsmotor som skapar ett abstrakt syntaxträd som representerar källkoden. Därför kan JScrambler säkra din HTML5 och JavaScript på ett sätt som säkerställer att den skyddade koden körs med samma funktionalitet som källan. 

JScramblers tillvägagångssätt kräver noggrann testning och avancerad källkodsanalys för att skapa precisionsoptimeringar som 1) fungerar bra under begränsade resurser, 2) försämrar inte prestanda och 3) exekveras felfritt i en miljö som garanteras 100% kompatibel med alla webbläsare och plattformar. 

Att lägga till JScrambler i din utvecklingsprocess skyddar din immateriella äganderätt och förhindrar ett antal problematiska scenarier:

  • konkurrenter bygger på din kod
  • Nya konkurrenter startar upp sitt arbete på din kod
  • kunder låser upp premiumfunktioner
  • omfördelning av din kod på Internet
  • Överträdelser av licensavtal
  • obehörig åtkomst av din kod värd i molnet eller delade värdmiljöer
  • spridningen av IP-tvister

I denna handledning går jag igenom fördelarna med att skydda din kod med JScrambler och presentera dig för sina tjänster och de olika alternativen som finns tillgängliga för dig. Förutom sin molnbaserade tjänst kan du även integrera JScrambler i din utvecklingsmiljö via dess API. Om du behöver ytterligare prestanda och säkerhet, kan du vara värd för sin självständiga företagslösning.

Vilken typ av ansökan stöder JScrambler?

JScrambler fungerar bäst med följande applikationsmiljöer:

  • stationära webbapplikationer
  • mobila webbapplikationer
  • Node.js-applikationer
  • HTML5-applikationer
  • webbspelapplikationer

Fördelar för Node.js

Med spridningen av Node.js kan JavaScript användas utanför en webbläsares sammanhang, både på servern och på kundsidan. Det kan också byggas utanför webbläsaren och senare packas och exekveras i webbläsaren. Denna flexibilitet och elegans har säkert bidragit till dess popularitet. 

Om du arbetar på ett bibliotek som distribueras via NPM, en fristående klient eller en webbläsarapplikation och som vanliga webbapplikationer som utvecklats med hjälp av JavaScript, skickas eller installeras det fortfarande i klar text i slutanvändarenheten. Om du använder delade eller hostade servrar kan du vara orolig att veta att din kod lagras i tydlig text.

Självklart kan JScrambler kodskydd vara särskilt värdefull för företag som bygger sin intellektuella egendom i stor utsträckning i Node.js.

Vilka fördelar ger JScrambler?

Förbättrad säkerhet

JScrambler gör att du kan dölja logiken i din ansökan från potentiella angripare, till exempel vilken information som samlas in från användaren, hur det behandlas på klientsidan och hur det skickas till serverns sida. Dess obfuscation introducerar en viss grad av slumpmässighet, som låter dig utforska kodmorferingstekniker; Dessa kan hjälpa till att förhindra attackautomatisering.

Skyddar din immateriella äganderätt

JScrambler kan dölja dina JavaScript-algoritmer från klientsidan från konkurrenter som kan försöka analysera och stjäla det. Men dina utvecklings- och produktionsversioner av din kod behöver inte vara samma. Du kan testa och felsöka din oskyddade kod och tillämpa JScrambler att distribuera skydd uteslutande i testning och produktion.

Förverkliga licensavtal

Om du utvecklar och säljer JavaScript-program, vare sig det är standard JavaScript, mobila webbapplikationer eller HTML5, vill du förhindra någon som inte betalade eller vars licens har löpt ut från att köra din kod. JScrambler låter dig låsa din kod till en fördefinierad lista över domäner och ställa utgångsdatum. Till exempel kan du nu leverera expirable demos till dina kunder utan att drabbas av rädsla för kod eller klientförlust.

Prestandaoptimering

JScrambler ger optimeringstransformationer som gör din kod mindre och snabbare att ladda. Dessa omvandlingar är utformade speciellt för din applikationstyp och prestandakrav. Till exempel kan mobila webbapplikationer inte genomföra samma grad av obfuscation som en vanlig JavaScript-applikation som körs på en stationär CPU kan.

Vilka funktioner tillhandahåller JScrambler?

JScramblers tillvägagångssätt låter din produkt skyddas samtidigt som den är enkelt och billigt underhålls. Din utvecklingsprocess kan utvecklas naturligt när du integrerar säkerhetsnivåer och antispelningsmetoder på företagsnivå. Här är några av de funktioner som JScrambler erbjuder:

Flexibel utvecklingsprocessintegration

JScrambler kan användas på flera olika sätt. Du kan:

  1. Använd den molnbaserade webbtjänsten och tillämpa skydd på vila.
  2. Använd dess API-tjänster med en mängd olika kundbibliotek för att integrera dem i dina bygg- och installationsskript. Se JScrambler Web API-dokumentation och API-klientdownloads för mer information.
  3. Använd sin fristående virtuella JScrambler-apparat i din företags organisation med sin Enterprise-lösning.

Minifiering och kompression

JavaScript reser från server till klient innan tolkas av webbläsaren. Därför minskar dess råa byte storlek förbättrad laddningstid, vilket bidrar till ett snabbare svar för din ansökan. Dessutom, om de används med obfuscationstekniker, bidrar storleken kodreduktionstransformationer både till logisk döljning och reducera storleken på koden som kan ha ökat på grund av användningen av dessa omvandlingar.

Optimering

JScrambler kan ge optimering när det gäller beräkningsprestanda; Naturligtvis ger denna teknik inte något skydd för koden.

Obfuscation

Källkodsbekämpning består i omvandlingen av källkoden för att göra det svårare att förstå, utan att ändra dess ursprungliga funktionalitet. JScramblers tekniska tillvägagångssätt säkerställer din HTML5 och JavaScript på ett sätt som säkerställer att den skyddade koden körs med samma funktionalitet som källan.

Kodfält

JScrambler låter dig låsa din JavaScript till en specifik domän eller en lista med domäner, t.ex. mywebsite.com. Din skyddade kod kommer inte att fungera på andra domäner än de som du har valt. Du kan också begränsa koden till ett visst utgångsdatum för expirable demos eller licenser eller begränsa det till vissa webbläsare och operativsystem.

Självförsvarskod

En av de viktigaste användningsområdena för kodbekämpning är att skydda din programvaras immateriella äganderätt genom att dölja sin logik, snarare än att bara försöka driva en programlicens och förlita sig på juridiska lösningar. Obfuscation som används i samband med anti-debugging tekniker hjälper till att besegra försök mot omvänd teknik och kodåteranvändning, för det mesta eftersom kodens underhållsförmåga och återanvändbarhetskvaliteter försämras för detta ändamål.

JScrambler ger självförsörjande funktioner för HTML5 och JavaScript-applikationer. Din ansökan kan aktivt skydda sig genom att upptäcka källkodsmodifieringsförsök och felsökningsaktiviteter och bryta ned avsiktligt för att mildra attacken. Och allt som krävs för att utlösa detta försvar är att en enda karaktär ändras.

Anti-debugging syftar till att motverka processen med omvänd teknik och felsökning. Det är idealiskt för att hindra (dynamisk) kodanalys, vilket gör något försök att deformera svårare.

Anti-manipulering syftar till att motverka förändringar i din kod genom att använda (till exempel) tekniker som ändrar uppförandet av din kod eller bryter den om det finns ett manipulationsförsök.

Här är en demonstration av JScrambler's anti-manipulering.

Detaljerad dokumentation

Hjälpcenteret för JScrambler ger detaljerade beskrivningar av var och en av dess egenskaper och transformationer, t.ex. Obfuscation and Optimization Approaches:

Lokalisering för sex språk

JScrambler gränssnittet är för närvarande tillgängligt på sex språk:

Prissättning planer

JScrambler erbjuder en gratis plan som erbjuder minifiering och optimering. Stöd till större projekt och bredare miljöer börjar vid $ 35 per månad när de faktureras årligen:

Komma igång med JScrambler

Att registrera dig med JScrambler är enkelt:

När du är registrerad kommer du att presenteras med Nytt projekt skärm. JScrambler kommer att innehålla ett demonstration statiskt webbprojekt.

Med varje nytt projekt kan du styra JScrambler för att använda ett av dess applikationslägen:

Standardläge: JScrambler standardskydd och optimeringsbeteende. Tillräckligt för de flesta JavaScript-applikationer. Inriktar sig inte helt på HTML5-funktioner eller hanterar mobilprestanda.

Mobilkompatibilitet: Transformationer tillämpas med hänsyn till begränsningar och behov hos mobila enheter.

HTML5-kompatibilitet: JScrambler skyddar och optimerar dina HTML5 och Web Gaming-applikationer genom att rikta in de nya HTML5-funktionerna.

Node.js Kompatibilitet: JScrambler skyddar och optimerar dina Node.js-applikationer.

Då måste du ange en eller flera skydds- och optimeringsmallar. avancerade planer kan välja kombinationer. Du kan också skapa mallar för ditt projekt som väljer specifika omvandlingar:

Gränssnittet ger användbara förklaringar för varje alternativ:

Om du väljer specifika omvandlingar kan du behöva tillhandahålla konfigurationsinställningar. Till exempel tillhandahåller en domänlista för domänlåsning:

När du har tillämpat JScrambler omvandlingar kommer du tillbaka till projekt meny. Här kan du ladda ner din resulterande kod:

Här är en sida-vid-sida jämförelse av JavaScript-koden i mitt projekt före och efter mina omvandlingar:

Självklart kanske JScrambler inte kan ge mening för varje utvecklingslag. JScrambler API erbjuder alternativ för kontinuerlig integration.

JScrambler Din kod med API

Med API kan du automatisera utplaceringen av alla filer i ditt projekt genom att köra ett enkelt kommando.

API: n erbjuder ett enkelt REST-gränssnitt, vilket innebär att du bara behöver implementera några HTTP-förfrågningar för att kunna använda det. Du kan se exempel på dokumentationen för JScrambler API. JScrambler ger klientstubbar för PHP, Java, Node.js, Atom, Grunt, Gulp och Python. Besök hela listan över nedladdningsklienter.

Enkel byggnadsintegration

Oavsett om du bygger din applikation med ett kommandoradsskript eller en arbetslöpare är det väldigt lätt att integrera JScrambler i din befintliga byggprocess. 

JScrambler är redan integrerad i alla större uppgiftslöpare, och om det inte fungerar för dig finns det en JScrambler API CLI-körbar som du kan ringa från dina skript eller din favorit IDE. 

Dessutom tillåter API: n att integrera kontinuerlig JScrambler-omvandling i din utvecklingsprocess. 

Här är ett exempel på kod du skulle använda med PHP för att ladda upp kod för JScrambler:

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

Här är ett exempel på JSON-paketet som JScrambler skulle återvända:

"id": "401c600215aab40ea4709a3a0040ef196000cdf0", "förlängning": "zip", "received_at": "2012-01-31 18:50:57", "källor": ["id": "a3b85573d493d803537555f48a1a7ac9778ec19f" ":" html "," filnamn ":" index.html "," storlek ": 125025, " id ":" 091306a8d92c5f8ad61bbfd134367bf5961be436 "," förlängning ":" js "," filnamn ":" script.js " "storlek": 113235]

JScrambler Enterprise

Om du arbetar för ett stort företag eller en med hög säkerhets- och immateriella krav, kan du behöva säkrare tillgång till JScramblers tjänster.

JScrambler Enterprise är en virtuell apparat som du laddar ner och kör i din egen infrastruktur, vilket innebär att du aldrig behöver överföra någon av din kod. Det garanterar också 100% tillgänglighet och högsta prioritet.

I stängning

JScrambler är en lättanvänd sofistikerad produkt. Här är ett kort sammanfattning av vad vi täckte:

  • JScramblers webbgränssnitt är enkelt att använda
  • Det ger noggrant skydd för din kod
  • Den använder en algoritm för att verifiera att din skyddade kod fungerar över plattformar
  • Den finns tillgänglig på webben (det finns inget behov av att ladda ner någonting)
  • Det finns ett API för integration med din byggprocess
  • Det finns en företagslösning tillgänglig för installation i lokaler (om du inte vill skicka din kod någonstans)

Jag hoppas att du har hittat denna översikt över JScramblers möjligheter intressant och användbar. 

Om du vill se mer från mig kan du bläddra i mina andra Tuts + handledning på min instruktörssida eller följa mig på Twitter @reifman.

relaterade länkar

  • JScrambler
  • JScrambler Web API-dokumentation / API-klientdownloads
  • JScrambler Enterprise
  • JScrambler Blog