WebGL En publiant Firefox 5 le mois dernier, Mozilla a fait le choix de faire barrage au chargement de textures cross-domain pour du contenu WebGL. WebGL est pour rappel une spécification libre de droits pour l'exécution de graphismes 3D dans le navigateur. La 3D est calculée par le GPU de la carte graphique grâce à un lien JavaScript vers OpenGL.

Avec Firefox, Google Chrome est l'autre navigateur à se positionner pour une promotion du Web 3D via WebGL. Pour Google Chrome 13  ( actuellement en bêta ), il a aussi été décidé d'un tel blocage.

Ces choix interviennent suite à la découverte d'une vulnérabilité de sécurité. Des textures cross-domain peuvent permettre à des attaquants d'utiliser des shaders spéciaux afin d'avoir accès en lecture à de l'information d'un autre site Web. À noter que The Khronos Group, qui chapeaute le développement de WebGL, a mis à jour la spécification pour faire face au problème.

Google explique néanmoins comment les développeurs peuvent profiter du support de CORS ( Cross Origin Resource Sharing ) du W3C afin de disposer d'une alternative : " les applications peuvent encore utiliser les images et vidéos d'un autre domaine avec la coopération d'un serveur hébergeant le média, autrement connu en tant que CORS ".

Plus de détails sont donnés dans ce billet publié sur Chromium Blog où Google annonce travailler avec des services tiers d'hébergement d'images et vidéos comme Flikr afin de promouvoir l'utilisation de CORS.

Le problème de sécurité avec WebGL avait fait dire à Microsoft que cette technologie est " dangereuse ". Pour le moment, Microsoft ne supporte pas WebGL avec Internet Explorer.