Présentation de JScrambler Protégez votre code

Ce que vous allez créer

Au fur et à mesure que l'importance de JavaScript augmente, il est de plus en plus nécessaire de protéger votre propriété intellectuelle. Dans ce didacticiel, nous allons examiner JScrambler, un outil que vous pouvez utiliser pour protéger votre code contre les concurrents et les pirates..

Qu'est-ce que JScrambler??

JScrambler est une solution d'entreprise en nuage permettant de protéger votre code JavaScript dans des applications destinées aux applications Web de bureau, HTML5, mobile, Node.js et aux jeux Web..

Alors que la plupart des efforts de protection de JavaScript vont rarement au-delà des simples transformations d'expression régulière, JScrambler est un moteur d'interpréteur et d'analyse de JavaScript qui crée un arbre de syntaxe abstraite représentant votre code source. Par conséquent, JScrambler peut sécuriser votre HTML5 et votre code JavaScript de manière à ce que le code protégé s'exécute avec les mêmes fonctionnalités que le code source.. 

L'approche de JScrambler nécessite des tests approfondis et une analyse avancée du code source afin de créer des optimisations de précision qui 1) fonctionnent bien avec des ressources limitées, 2) ne nuisent pas aux performances et 3) s'exécutent parfaitement dans un environnement garanti à 100% conforme à tous les navigateurs et plates-formes.. 

L'ajout de JScrambler à votre processus de développement protège votre propriété intellectuelle et évite un certain nombre de scénarios problématiques:

  • concurrents construisant sur votre code
  • nouveaux concurrents amorçant leur travail sur votre code
  • clients débloquant des fonctionnalités premium
  • redistribution de votre code sur Internet
  • violations des accords de licence
  • accès non autorisé à votre code hébergé dans le cloud ou dans des environnements d'hébergement partagé
  • la prolifération des litiges juridiques en matière de propriété intellectuelle

Dans ce tutoriel, je vais vous expliquer les avantages de la protection de votre code avec JScrambler et vous présenter ses services et les différentes options disponibles. En plus de son service basé sur le cloud, vous pouvez également intégrer JScrambler à votre environnement de développement via son API. Si vous avez besoin de performances et de sécurité supplémentaires, vous pouvez héberger sa solution d'entreprise autonome..

Quels types d'applications sont pris en charge par JScrambler?

JScrambler fonctionne mieux avec les environnements d'application suivants:

  • applications web de bureau
  • applications web mobiles
  • Applications Node.js
  • Applications HTML5
  • applications de jeux en ligne

Avantages pour Node.js

Avec la prolifération de Node.js, JavaScript peut être utilisé en dehors du contexte d'un navigateur Web, aussi bien du côté serveur que du côté client. Il peut également être construit en dehors du navigateur, puis être compressé et exécuté dans le navigateur. Cette souplesse et cette élégance ont sûrement contribué à sa popularité. 

Toutefois, que vous travailliez sur une bibliothèque distribuée via NPM, un client autonome ou une application de navigateur (et les applications Web classiques développées à l'aide de JavaScript), elle est toujours envoyée ou installée en texte clair sur le périphérique de l'utilisateur final. Si vous utilisez des serveurs partagés ou hébergés, vous pouvez être inquiet de savoir que votre code est stocké en texte clair..

De toute évidence, les protections de code de JScrambler peuvent être particulièrement utiles aux entreprises qui développent leur propriété intellectuelle dans Node.js..

Quels sont les avantages de JScrambler??

Sécurité renforcée

JScrambler vous permet de dissimuler la logique de votre application aux attaquants potentiels, telles que les informations collectées auprès de l'utilisateur, son traitement, côté client, et son envoi au serveur. Son obscurcissement introduit un certain niveau de hasard, ce qui vous permet d’explorer des techniques de morphing de code; ceux-ci peuvent aider à empêcher l'automatisation des attaques.

Protège votre propriété intellectuelle

JScrambler peut dissimuler vos algorithmes JavaScript côté client des concurrents qui pourraient essayer de l’analyser et de le voler. Mais vos versions de développement et de production de votre code ne doivent pas nécessairement être identiques. Vous pouvez tester et déboguer votre code non protégé et appliquer JScrambler pour déployer des protections exclusivement dans les tests et la production..

Appliquer les contrats de licence

Si vous développez et vendez des applications JavaScript, qu’il s’agisse de JavaScript standard, d’applications Web mobiles ou de HTML5, vous voudrez empêcher une personne qui n’a pas payé ou dont la licence a expirée d’exécuter votre code. JScrambler vous permet de verrouiller votre code sur une liste de domaines prédéfinie et de définir des dates d'expiration. Par exemple, vous pouvez désormais livrer des démos intéressantes à vos clients sans craindre le code ou la perte de clients..

Optimisation des performances

JScrambler fournit des transformations d'optimisation qui rendent votre code plus petit et plus rapide à charger. Ces transformations sont conçues spécifiquement pour votre type d'application et vos exigences de performance. Par exemple, les applications Web mobiles ne peuvent pas supporter le même degré de brouillage qu'une application JavaScript standard s'exécutant sur un processeur de bureau..

Quelles sont les fonctionnalités fournies par JScrambler??

L'approche de JScrambler permet de protéger votre produit tout en le maintenant facilement et à un prix abordable. Votre processus de développement peut évoluer naturellement en intégrant des méthodes de sécurité et anti-débogage au niveau de l'entreprise. Voici certaines des fonctionnalités fournies par JScrambler:

Intégration flexible des processus de développement

JScrambler peut être utilisé de différentes manières. Vous pouvez:

  1. Utiliser le service Web basé sur un nuage et appliquer des protections à volonté.
  2. Utilisez ses services API avec diverses bibliothèques clientes pour les intégrer à vos scripts de construction et de déploiement. Reportez-vous à la documentation de l'API Web JScrambler et au téléchargement du client API pour plus d'informations..
  3. Utilisez son dispositif virtuel JScrambler autonome au sein du réseau de votre propre entreprise avec sa solution d'entreprise..

Minification et Compression

JavaScript voyage du serveur au client avant d'être interprété par le navigateur. Par conséquent, réduire la taille en octets brute améliore le temps de chargement et contribue à une réponse plus rapide pour votre application. De plus, si elles sont utilisées avec des techniques d’obscurcissement, les transformations de réduction de code de taille contribuent à la dissimulation de la logique et réduisent la taille du code qui aurait pu s’accroître du fait de l’utilisation de ces transformations..

Optimisation

JScrambler peut fournir une optimisation en termes de performances de calcul. bien sûr, cette technique ne fournit aucune protection pour le code.

Obscurcissement

L'obscurcissement du code source consiste à transformer le code source pour le rendre plus difficile à comprendre, sans modifier ses fonctionnalités d'origine. L'approche technologique de JScrambler sécurise votre HTML5 et votre JavaScript de manière à ce que le code protégé s'exécute avec les mêmes fonctionnalités que le code source..

Pièges à code

JScrambler vous permet de verrouiller votre JavaScript sur un domaine spécifique ou une liste de domaines, par exemple. mywebsite.com. Votre code protégé ne fonctionnera pas dans des domaines autres que ceux que vous avez choisis. Vous pouvez également limiter le code à une certaine date d'expiration pour des démonstrations ou des licences acceptables, ou le limiter à certains navigateurs et systèmes d'exploitation..

Code d'autodéfense

L'une des principales utilisations de l'obscurcissement de code est de protéger la propriété intellectuelle de votre logiciel en dissimulant sa logique, plutôt que d'essayer simplement de faire respecter une licence de logiciel et de s'appuyer sur des solutions juridiques. L'obscurcissement associé à des techniques anti-débogage permet de déjouer les tentatives d'ingénierie inverse et de réutilisation du code, principalement parce que les qualités de maintenabilité et de réutilisation du code sont dégradées à cette fin..

JScrambler fournit des fonctionnalités d'auto-défense pour les applications HTML5 et JavaScript. Votre application peut se protéger activement en détectant les tentatives de modification du code source et les activités de débogage, et en procédant intentionnellement à une panne afin d'atténuer l'attaque. Et tout ce qu'il faut pour déclencher cette défense, c'est qu'un seul personnage change.

L'anti-débogage vise à contrecarrer le processus d'ingénierie inverse et de débogage. Idéal pour entraver l'analyse de code (dynamique), rendant plus difficile toute tentative de dé-obscurcissement.

Anti-falsification vise à contrecarrer les modifications de votre code en utilisant (par exemple) des techniques qui changent le comportement de votre code ou le cassent si une tentative de falsification est détectée..

Voici une démonstration de l'anti-falsification de JScrambler.

Documentation détaillée

Le centre d’aide JScrambler fournit des descriptions détaillées de chacune de ses caractéristiques et de ses transformations, par exemple. Approches d’obscurcissement et d’optimisation:

Localisation pour six langues

L’interface de JScrambler est actuellement disponible en six langues:

Plans de tarification

JScrambler fournit un plan gratuit qui offre une minification et une optimisation. L’aide aux projets plus vastes et aux environnements plus larges commence à 35 $ par mois lorsqu’elle est facturée chaque année:

Débuter avec JScrambler

S'inscrire à JScrambler est simple:

Une fois que vous êtes inscrit, vous serez présenté avec le Nouveau projet écran. JScrambler inclura un projet statique de démonstration sur le Web.

Avec chaque nouveau projet, vous pouvez demander à JScrambler d’utiliser l’un de ses modes d’application:

Mode standard: Comportement standard de JScrambler en matière de protection et d'optimisation. Assez pour la plupart des applications JavaScript. Ne cible pas entièrement les fonctionnalités HTML5 ou ne gère pas les performances mobiles.

Compatibilité mobile: Les transformations sont appliquées en tenant compte des limitations et des besoins des appareils mobiles.

Compatibilité HTML5: JScrambler protège et optimise vos applications HTML5 et de jeux Web en ciblant les nouvelles fonctionnalités HTML5.

Compatibilité Node.js: JScrambler protège et optimise vos applications Node.js.

Ensuite, vous devez spécifier un ou plusieurs modèles de protection et d'optimisation. plans avancés peuvent choisir des combinaisons. Vous pouvez également configurer des modèles pour votre projet en choisissant des transformations spécifiques:

L'interface fournit des explications utiles pour chaque option:

Si vous sélectionnez des transformations spécifiques, vous devrez peut-être fournir des paramètres de configuration. Par exemple, fournir une liste de domaines pour le verrouillage de domaine:

Une fois que vous avez appliqué les transformations de JScrambler, vous revenez à la Projets menu. Ici vous pouvez télécharger votre code résultant:

Voici une comparaison côte à côte du code JavaScript de mon projet avant et après mes transformations:

Bien entendu, l’utilisation statique de JScrambler peut ne pas avoir de sens pour toutes les équipes de développement. L'API JScrambler fournit des options d'intégration continue.

JScrambler Votre code avec l'API

Avec l'API, vous pourrez automatiser le déploiement de tous les fichiers de votre projet en exécutant une simple commande..

L'API offre une interface REST simple, ce qui signifie que vous ne devez implémenter que quelques requêtes HTTP pour l'utiliser. Vous pouvez voir des exemples dans le centre de documentation de l'API JScrambler. JScrambler fournit des stubs clients pour PHP, Java, Node.js, Atom, Grunt, Gulp et Python. Visitez la liste complète des clients à télécharger.

Intégration facile à la construction

Que vous construisiez votre application à l'aide d'un script de ligne de commande ou d'un exécuteur de tâches, il est très facile d'intégrer JScrambler dans votre processus de construction existant.. 

JScrambler est déjà intégré dans tous les principaux exécuteurs de tâches. Si cela ne fonctionne pas pour vous, vous pouvez appeler un exécutable CLI API JScrambler à partir de vos scripts ou de votre IDE préféré.. 

De plus, l'API vous permet d'intégrer la transformation continue de JScrambler dans votre processus de développement.. 

Voici un exemple de code que vous utiliseriez avec PHP pour télécharger du code pour JScrambler:

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

Voici un exemple du paquet JSON que JScrambler renverrait:

"id": "401c600215aab40ea4709a3a0075ef196000cdf0", "extension": "zip", "receive_at": "2012-01-31 18:50:57", "sources": ["id": "a3b85573d493d80353555555559a" ":" html "," nom du fichier ":" index.html "," taille ": 125025, " id ":" 091306a8d92c5f8ad61bbfd134367bf5961be436 "," extension ":" js "," nom_fichier ":" script ". "taille": 113235]

JScrambler Enterprise

Si vous travaillez dans une grande entreprise ou si vous avez des exigences élevées en matière de sécurité et de propriété intellectuelle, vous aurez peut-être besoin d'un accès plus sécurisé aux services de JScrambler..

JScrambler Enterprise est une appliance virtuelle que vous téléchargez et exécutez dans votre propre infrastructure, ce qui signifie que vous ne devez jamais transmettre aucun de vos codes. Il garantit également une disponibilité à 100% et une priorité maximale.

En clôture

JScrambler est un produit sophistiqué facile à utiliser. Voici un bref récapitulatif de ce que nous avons couvert:

  • L'interface Web de JScrambler est simple à utiliser
  • Il donne une protection complète pour votre code
  • Il utilise un algorithme pour vérifier que votre code protégé fonctionnera sur toutes les plateformes.
  • Il est disponible sur le Web (il n'est pas nécessaire de télécharger quoi que ce soit)
  • Il y a une API pour l'intégration avec votre processus de construction
  • Il existe une solution d'entreprise disponible pour l'installation sur site (si vous ne voulez pas envoyer votre code nulle part)

J'espère que vous avez trouvé cet aperçu des fonctionnalités de JScrambler intéressant et utile.. 

Si vous souhaitez en voir plus de moi, vous pouvez parcourir mes autres tutoriels Tuts + sur ma page d’instructeur ou me suivre sur Twitter @reifman..

Liens connexes

  • JScrambler
  • Documentation de l'API Web JScrambler / Téléchargements client API
  • JScrambler Enterprise
  • JScrambler Blog