Depuis la naissance du web, de nombreuses technologies ont tenté de rendre les navigateurs plus interactifs. Nous pouvons notamment citer Javascript, les applets Java, Flash, Silverlight, ActiveX... Mais toutes ces technologies, à l'exception d'ActiveX, présentent un certain niveau de sécurité, pour protéger l'internautes des virus ou autres codes malveillants. Ainsi, certains types d'opération sont tout simplement bloqués.
En revanche, ActiveX n'impose aucune limite, et permet de faire absolument tout. À partir du moment où vous acceptez l'exécution d'un code ActiveX, ce dernier possède autant de privilèges qu'un programme directement installé sur votre machine. Accéder à vos documents, aux fichiers systèmes, ou agir directement sur les ressources de votre ordinateur. Malgré l'alerte affichée par Internet Explorer avant l'exécution d'un tel code, ActiveX a souvent été source de vulnérabilité, à cause du manque de vigilance des internautes.
Ainsi, pour des raisons de sécurité, la possibilité d'utiliser du code natif dans les navigateurs avait été écartée, privilégiant l'utilisation de Javascript, pourtant plus lent. Cependant, Google relance cette idée, en proposant Native Client, un nouveau projet opensource permettant d'exécuter du code x86 dans un navigateur web. Contrairement à ActiveX, cette technologie est conçue pour fonctionner sur toutes les plateformes (Linux, MacOS, Windows).
Google Native Client est prévu pour les gros traitements, généralement trop lourds pour Javascript. Par exemple, pour retoucher des images en ligne : actuellement, les applications en ligne proposant cela couple l'utilisation de Javascript avec un traitement serveur, ce qui nécessite de nombreux transferts de fichiers entre le navigateur et le serveur. Cette technologie permettra de faire travailler directement le processeur de votre machine, sans passer en permanence par le serveur. Vous gagnerez donc en intéractivité, et surtout en temps de réponse.
D'un point de vue sécurité, le problème est délicat. Lorsqu'un exécutable est chargé, Google Native Client le décompile pour s'assurer de la non-dangerosité du code. Cependant, Google admet qu'une telle sécurité n'est pas évidente à mettre en place, et ne peut détecter toutes les actions frauduleuses. En bref, pour peu que vous ayez quelques dons pour masquer votre code, vous arriverez à contourner ce système de sécurité sans trop de soucis. Pratique pour infecter un système.
Vos réflexions
On peut en déduire que c'est tout de même plus pernicieux, tout comme c'est le cas déjà maintenant avec ActiveX.