Sommet des développeurs Chrome : récapitulatif des plates-formes Web ouvertes

de Greg Simon et Eric Seidel

Blink est le moteur de rendu Open Source de Chrome. L'équipe de Blink fait évoluer le Web et résout les problèmes rencontrés par les développeurs.

Un certain nombre d'améliorations ont été apportées en coulisses depuis le lancement de notre produit en avril.

Nous avons d'abord supprimé la moitié de la source, ce dont nous n'avions pas forcément besoin. Ce n'est pas fini ! Nous ne procédons pas à l'aveuglement: la suppression du code se base sur des statistiques globales fournies de manière anonyme par les utilisateurs de Google Chrome qui ont accepté de recevoir des rapports.

Nous publions une nouvelle API de développeur toutes les six semaines: le même calendrier d'expédition que Chrome.

L'un des changements majeurs que nous avons faits lorsque nous avons dupliqué Blink est l'ajout d'un système d'intents: chaque fois que nous allons modifier la plate-forme Web, nous envoyons une annonce publique au développeur Blink pour annoncer notre intention d'ajouter ou de supprimer une fonctionnalité. Ensuite, on part, et on la code ! Le lendemain de l'enregistrement de la fonctionnalité, elle est déjà disponible dans nos builds Canary. Cette fonctionnalité est désactivée par défaut, mais vous pouvez l'activer à l'aide de about:flags.

Ensuite, sur notre liste de diffusion publique, nous annonçons notre intention de livrer.

Sur la page chromestatus.com, vous trouverez la liste des fonctionnalités sur lesquelles nous avons travaillé, de celles que nous avons lancées et de celles que nous prévoyons d'abandonner. Vous pouvez également consulter le blog des versions de Chromium, qui contient des liens vers les bugs et vers le tableau de bord de notre outil de suivi.

Autre changement majeur : nous supprimons les préfixes WebKit. Le but n'est pas d'utiliser les préfixes Blink, mais d'avoir des indicateurs d'exécution (et pas seulement des indicateurs de compilation).

Android WebView a représenté un défi de taille, mais HTML5Test montre que les choses s'améliorent. Nous nous rapprochons beaucoup de l'ordinateur de bureau en ce qui concerne la présence d'un ensemble d'API de plate-forme Web partout (Web Audio en est un excellent exemple).

Mais comment fonctionne la machine à saucisses ? Chaque modification apportée à Blink est immédiatement soumise à plus de 30 000 tests, sans parler de tous les tests Chromium qui sont exécutés par la suite. Nous utilisons un shérif 24 heures sur 24, avec des milliers de bots, des milliers d'analyses comparatives et des systèmes qui envoient des millions de pages Web hors service à notre moteur pour s'assurer qu'elles ne tombent pas. Nous savons que les mobiles sont beaucoup plus lents et nous faisons tout notre possible pour améliorer cette fonctionnalité.

Quoi de neuf ?

  • Composants Web: découvrez le témoignage d'Eric Bidelman.
  • Animations Web:animations complexes, synchronisées et hautes performances utilisant le GPU autant que possible.
  • Partial Layout (Mise en page partielle) : calculez uniquement ce dont vous avez besoin.
  • Grille CSS
  • Images responsives: srcset, srcN ou ?
  • Redimensionnement automatique plus rapide du texte et polices cohérentes avec les sous-pixels
  • Skia, le système graphique utilisé par Blink, passe de GDI à DirectWrite sur Windows

Votre avis nous intéresse !

Si vous vous sentez C++ dans votre cœur et que vous souhaitez écrire C++ avec nous, tout notre code est ouvert. Vous n'avez pas à nous le dire ni à nous vanter. Il vous suffit de publier un correctif ou de signaler un bug.

Diapositives:Clignotement

Sécurité

de Parisa Tabriz

Aujourd'hui plus que jamais, les internautes sont connectés à Internet depuis toujours plus d'endroits.

Nous sommes connectés à l'aide de nos ordinateurs portables, de nos téléphones et de nos tablettes, et bientôt suffisamment d'appareils personnels et d'accessoires personnels. Nous accédons à Internet à partir de réseaux non fiables et parfois même hostiles. Nous passons énormément de vie en ligne, et il est impératif de prendre des mesures pour protéger nos données et celles de nos utilisateurs données.

Avant tout, en tant que développeurs, nous devons comprendre la nécessité et l'utilité de la technologie SSL.

Qu'est-ce que SSL ? L'acronyme "Secure Sockets Layer" correspond à un protocole cryptographique conçu pour assurer la sécurité des communications sur Internet. Il garantit la confidentialité par le biais du chiffrement et de l'intégrité, pour empêcher l'espionnage ou la falsification de votre connexion Internet. Le protocole SSL présente des failles, mais c'est le meilleur moyen, et le seul moyen, d'assurer la sécurité des communications de données sur Internet, quel que soit le type de sécurité.

Selon SSL Pulse, il y a un an, environ 15% des utilisateurs ont adopté SSL. nous avons adopté plus de 50 %.

Deux acronymes:

  • TLS:le même protocole que SSL pour la plupart des intents et des fins. Plus précisément, SSL 3.1 a été renommé TLS, et TLS est le nom standard IETF. Mais ils sont interchangeables !

  • HTTPS:il s'agit du protocole HTTP sur SSL, c'est-à-dire de la superposition des fonctionnalités de sécurité de SSL et du HTTP standard. D'abord, le handshake client-serveur, qui utilise la cryptographie à clé publique/privée pour créer une clé partagée, qui est utilisée par la deuxième partie du protocole SSL pour chiffrer les communications.

Le réseautage sur Internet peut sembler sûr, immédiat et rapide. J'ai l'impression de s'adresser directement au site Web. Mais en réalité, ce n'est pas un lien direct. Nos communications passent par un routeur Wi-Fi, un FAI et éventuellement d'autres proxys intermédiaires entre votre appareil et le site Web. Sans HTTPS, toutes nos communications sont rédigées en texte brut.

Le problème est que les utilisateurs saisissent rarement une URL complète en spécifiant HTTPS, ou ils cliquent sur un lien utilisant HTTP. Pire encore, il est possible de monter une attaque de type "homme du milieu" et de remplacer HTTPS par HTTP. Un outil appelé SSLstrip lancé en 2009 fait c’est exactement cela. Firesheep, de 2010, écoute les réseaux Wi-Fi ouverts pour l'envoi de cookies en clair: vous pouvez ainsi écouter le chat ou vous connecter au compte Facebook de quelqu'un.

Toutefois, SSL est (relativement) bon marché, rapide et facile à déployer (consultez ssllabs.com et l'ouvrage "High Performance Browser Networking" publié par Ilya Grigorik). L'épinglage de clé publique permet aux opérateurs de sites Web de limiter les autorités de certification autorisées à délivrer des certificats pour leurs sites.

"En janvier 2010, Gmail est passé par défaut au protocole HTTPS pour tous ses services. Pour ce faire, nous n'avons pas dû déployer de machines supplémentaires ni de matériel spécial. Sur nos interfaces de production, SSL représente < 1% de la charge du processeur, < 10 Ko de mémoire par connexion ; 2% de la surcharge réseau...

Si vous arrêtez la lecture maintenant, il vous suffit de retenir une seule chose: SSL n'est plus coûteux en calcul."

Overclocking SSL, Adam Langley (Google)

Voici enfin quelques bugs les plus courants:

  • Contenu mixte:sites qui utilisent HTTP et HTTPS. L'utilisateur va être agacé, car il devra cliquer sur un bouton d'autorisation pour charger le contenu. En fait, le contenu mixte des cadres iFrame est exclu de Chrome et Firefox. Assurez-vous que toutes les ressources d'une page HTTPS sont chargées via HTTPS, en utilisant des URL relatives ou relatives au schéma, par exemple <style src="//foo.com/style.css">.
  • Cookies non sécurisés:envoyés en clair via une connexion HTTP. Pour éviter cela, définissez l'attribut "secure" sur les en-têtes de cookie. Vous pouvez également utiliser une nouvelle pour exiger la conformité Transport Security (HSTS).

Points à retenir

  • Si vous vous souciez de la confidentialité et de l'intégrité des données vous devez utiliser SSL. C'est plus rapide, plus simple et moins cher que jamais.
  • Évitez les pièges courants liés à l'implémentation, comme les bugs de contenu mixte ou les bits d'en-tête HTTP incorrects.
  • Utilisez des URL relatives ou comportant un schéma relatif.
  • Découvrez de nouveaux avantages, comme le mécanisme HSTS et l'épinglage de certificats

Diapositives:Vous avez un accès SSL ?

API multimédias pour le Web multi-appareil

de Sam Dutton et Jan Linden

Parallèlement à la prolifération de nouveaux appareils et de nouvelles plates-formes sur le Web, nous constatons une énorme croissance dans la communication audio, vidéo et en temps réel. Les médias en ligne transforment notre façon de consommer des médias de toutes sortes.

Une étude du gouvernement britannique a révélé que 53% des adultes "multitâches médiatiques" lorsqu'ils regardent la télévision: ils utilisent des appareils mobiles pour partager et consommer des contenus multimédias. Dans de nombreux pays, la télévision est en baisse et la lecture en ligne est en hausse. En Chine, par exemple, en 2012, seulement 30% des foyers de Pékin ont regardé la télévision, contre 70% en 2009. Selon le rapport W3C Highlights 2013, "l'année dernière, le visionnage de vidéos sur des appareils mobiles a doublé. Cette année, aux États-Unis, le temps moyen passé chaque jour sur des médias numériques dépassera celui de la télévision. Le visionnage n'est plus un acte passif. Aux États-Unis, 87% des consommateurs de divertissement déclarent utiliser au moins un appareil doté d'un second écran lorsqu'ils regardent la télévision. D'après Cisco, "la vidéo ..." représentera 80 à 90 % du trafic mondial des consommateurs d'ici 2017. Cela équivaut à près d'un million de minutes de vidéo par seconde.

Alors, qu'est-ce qu'on a pour les développeurs Web ? Un écosystème d'API multimédias pour le Web ouvert: technologies standardisées et interopérables qui fonctionnent sur plusieurs plates-formes.

Points à retenir

  • WebRTC permet de communiquer en temps réel dans le navigateur et est désormais largement compatible avec les appareils mobiles et les ordinateurs. Au total, il existe déjà plus de 1,2 milliard de points de terminaison WebRTC.
  • Web Audio fournit des outils sophistiqués pour la synthèse et le traitement audio.
  • L'application Web MIDI, intégrée à Web Audio, permet d'interagir avec les appareils MIDI.
  • Les éléments audio et vidéo sont désormais compatibles avec plus de 85% des navigateurs pour mobile et pour ordinateur.
  • Les extensions de source multimédia peuvent être utilisées pour le streaming adaptatif et le décalage temporel.
  • EME permet de lire du contenu protégé.
  • Les transcriptions, les sous-titres et l'élément de piste permettent d'activer les sous-titres, les métadonnées minutées, les liens profonds et la recherche approfondie.

Slides:API multimédias pour le Web multi-appareil