Vous avez probablement tout entendu sur le fait que le plug-in de navigateur Java n’est pas sécurisé. 91% des compromis système en 2013 étaient contre ce plug-in Java non sécurisé. Mais Java n’est pas la même chose que JavaScript – en fait, ils ne sont pas vraiment liés.
La plupart de nos lecteurs comprennent probablement la différence, mais tout le monde ne le sait pas. Toute confusion n’est pas accidentelle – JavaScript a été initialement appelé JavaScript juste pour l’associer à Java dans l’esprit des gens.
Principes de base de Java
Java est un langage de programmation populaire utilisé pour tout, du logiciel serveur aux applications de bureau et même aux applications Android. Vous avez probablement entendu parler de Minecraft, qui est écrit en Java. L’exécution d’une application Java nécessite le runtime Java d’Oracle sur votre ordinateur. Il était auparavant développé par Sun, mais Oracle a acheté Sun – il s’agit donc désormais d’Oracle Java au lieu de Sun Java.
Mais Java n’est pas seulement utilisé pour les applications traditionnelles. Dans les années 90, Sun a développé un plug-in de navigateur qui vous permettait d’exécuter des programmes Java – ou «applets Java» – dans des navigateurs Web. Le plug-in Java n’est plus largement utilisé et il a été une source de problèmes de sécurité sans fin. Vous ne souhaitez pas exécuter d’applets Java dans votre navigateur si possible. Le plug-in Java – et le contenu Java dans les navigateurs Web – s’est avéré non sécurisé et mauvais.
Il n’y a qu’un seul plug-in Java, créé par Oracle et fourni avec l’environnement d’exécution Java. S’il y a un problème, vous devez attendre qu’Oracle le répare. Il n’y a pas de concurrence pour l’améliorer.
Bases de JavaScript
JavaScript est un langage de programmation utilisé par les pages Web. HTML est le langage de mise en page qui définit la façon dont les pages Web sont mises en page et JavaScript est le langage qui permet aux pages Web d’être plus dynamiques. JavaScript est ce qui permet aux applications Web telles que Gmail de fonctionner, et JavaScript est utilisé par pratiquement tous les sites Web à ce stade.
JavaScript a été initialement conçu pour être un langage de script léger à exécuter dans les navigateurs Web. Ce n’est pas un plug-in de navigateur distinct provenant d’une seule entreprise – chaque navigateur comprend son propre moteur JavaScript. Les navigateurs exécutent le code JavaScript en mode natif sans recourir à un plug-in tiers. Il y a eu beaucoup de concurrence entre les fournisseurs de navigateurs pour rendre JavaScript plus rapide et meilleur.
Pourquoi s’appelle-t-il alors JavaScript?
JavaScript n’a vraiment rien à voir avec Java; ce n’est pas seulement un sous-ensemble simplifié de Java. JavaScript a été développé sous le nom de «Mocha» et a été nommé «LiveScript» lorsqu’il est apparu dans une version bêta du navigateur Web Netscape Navigator en 1995.
En 1995, Netscape a annoncé que le langage serait nommé «JavaScript» dans une annonce conjointe avec Sun. Cela s’est produit à peu près au moment où Netscape a ajouté la prise en charge des applets Java de Sun. Nous pouvons regarder en arrière l’annonce aujourd’hui:
«Le langage JavaScript complète Java, le principal langage de programmation orienté objet et multiplateforme de Sun…
JavaScript est un langage de script d’objet facile à utiliser conçu pour créer des applications en ligne en direct qui relient des objets et des ressources sur les clients et les serveurs. Alors que Java est utilisé par les programmeurs pour créer de nouveaux objets et applets, JavaScript est conçu pour être utilisé par les auteurs de pages HTML et les développeurs d’applications d’entreprise pour créer un script dynamique du comportement des objets s’exécutant sur le client ou le serveur. »
L’annonce continue comme ça, parlant à la fois de Java et de JavaScript. Ceci est généralement considéré comme une tentative par Sun et Netscape d’associer le nouveau langage – JavaScript – au langage Java qui était populaire à l’époque. Le nom a rendu les gens un peu confus et les a amenés à associer le nouveau langage à Java, donnant à JavaScript un respect instantané. Si cela s’appelle JavaScript et a été annoncé par Sun dans une annonce qui parlait beaucoup de Java, c’était sûrement lié à Java – n’est-ce pas? Non.
En 1998, Brendan Eich, qui a inventé JavaScript, a déclaré dans une interview que JavaScript était destiné à «ressembler à Java, mais être un langage de script» pour une utilisation légère. Cela peut ressembler un peu à Java, mais c’est très différent.
JavaScript est pratiquement obligatoire pour le Web moderne
Nous nous sommes éloignés du contenu Java dans le navigateur au fil des ans. Bien que Java soit encore largement utilisé, il est devenu un nom sale lorsqu’il est associé à des navigateurs Web. Java est également devenu un logiciel grand public de plus en plus détesté, connu pour regrouper des logiciels indésirables avec des mises à jour de sécurité.
Là où le nom Java était à l’origine destiné à ajouter de la crédibilité à JavaScript, l’association Java est en train de ternir son nom. Il est facile pour JavaScript de venir à l’esprit lorsque vous voyez des titres apocalyptiques sur les vulnérabilités des plug-ins Java. C’était tout l’intérêt du nom – pour les faire paraître apparentés.
Certaines personnes font tout leur possible pour désactiver JavaScript dans leurs navigateurs Web avec des modules complémentaires comme NoScript. Mais JavaScript n’est pas non plus sûr que Java dans le navigateur. Oui, il y a une vulnérabilité de sécurité occasionnelle dans un navigateur Web qui peut être exploitée via JavaScript, mais le trou est corrigé et nous passons à autre chose. Ce n’est pas propre à JavaScript – il pourrait y avoir une faille de sécurité dans un navigateur Web qui pourrait être exploitée via HTML, CSS ou d’autres technologies. Il n’y a aucun moyen de vous protéger complètement contre d’éventuelles vulnérabilités futures du navigateur. Gardez simplement votre navigateur et ses plug-ins à jour.
JavaScript alimente le Web moderne, que vous utilisiez un navigateur sur votre ordinateur ou votre smartphone. La désactiver rendrait de nombreux sites Web inutilisables.
D’autre part, le plug-in de navigateur Java est utilisé sur très, très peu de sites Web. Si vous désactivez le plug-in de navigateur Java, le Web continuera à fonctionner normalement. Vous ne remarquerez probablement jamais que vous ne l’avez pas.
Crédit d’image: nyuhuhuu sur Flickr, Marcin Wichary sur Flickr