Chrome 开发者峰会 - 开放网络平台摘要

作者:Greg Simon 和埃里克·塞德尔

Blink 是 Chrome 的开源渲染引擎。Blink 团队正在不断改进网络,并解决开发者遇到的问题。

自 4 月推出以来,我们已对后台进行了许多改进。

首先,我们删除了我们不一定需要的一半源代码。我们还没有大功告成!我们并非盲目地移除代码:根据选择启用报告功能的 Chrome 用户匿名报告的汇总统计信息,移除相应的代码。

我们每 6 周发布一次新的 Developer API:与 Chrome 的发货时间表相同。

从 Blink 派生时,我们做出的一项重大变更是添加了一个 intent 系统:每次要更改网络平台之前,我们都会向 Blink dev 发送一条公开声明,宣布我们计划添加或移除某项功能。然后我们就可以出发,并对其进行编码!在签入该功能的第二天,我们就已经在 Canary 版本中推出了这项功能。此功能默认处于关闭状态,但您可以使用 about:flags 开启。

然后,我们在公共邮寄名单中宣布计划发货

chromestatus.com 上,您可以查看我们开发的功能、已发布的功能以及我们计划弃用的功能。您也可以查看 Chromium 版本博客,其中包含指向错误的链接和我们的跟踪器信息中心的链接。

另一项重大更改是移除 WebKit 前缀。其意图不是使用 Blink 前缀,而是使用运行时标志(而不仅仅是编译时标志)。

Android WebView 一直是一个很大的挑战,但 HTML5Test 显示情况在不断改善。在各处都提供一组网络平台 API(网络音频就是一个很好的例子)方面,我们与桌面设备更接近了!

但香肠机是如何运作的呢?我们对 Blink 所做的每一项更改都会立即通过 30,000 多项测试,更不用说以后还会运行的所有 Chromium 测试了。我们使用 24 小时审查,包括数千个机器人、数以千计的基准,以及会向我们的引擎抛出数百万个损坏网页的系统以确保其不会失效。我们知道速度明显较慢,因此我们正在努力改进此功能。

那么,有哪些新功能呢?

  • Web 组件:来看看 Eric Bidelman 的演讲吧!
  • 网页动画:复杂、同步的高性能动画,尽可能使用 GPU
  • 部分布局:仅计算您需要的内容!
  • CSS 网格
  • 自适应图片 srcset、srcN 或 ?
  • 更快的文字调整大小和一致的子像素字体
  • Blink 使用的图形系统 Skia 将从 GDI 迁移至 Windows 上的 DirectWrite

我们希望了解您的看法!

如果您觉得 C++ 在您的血液中,想要与我们一起编写 C++,我们的所有代码都是开放的。您不需要告诉任何人或宣传我们。您可以直接发布补丁或提交 bug

幻灯片Blink

安全

制作人:Parisa Tabriz

如今,接入网络的人数比以往任何时候都多,而且用户来自更多地点。

笔记本电脑、手机和平板电脑都在上网,可能很快会用到个人设备和配件。我们访问互联网时所用的网络不受信任,有时甚至是恶意网络。如今人们的生活越来越多样化,因此我们必须采取措施来保护我们的数据和用户的数据。

最重要的是,作为开发者,我们需要了解 SSL 的必要性和实用性。

什么是 SSL?它的全称是“Secure Sockets Layer”(安全套接字层),是一种加密协议,旨在确保互联网通信的安全性。它通过加密和完整性保护隐私,防止他人窥探或篡改您的互联网连接。SSL 有一些缺陷,但它是确保互联网上任何类型的数据通信安全性的领先方式,也是唯一的方式。

根据 SSL Pulse,一年前我们只有不到 15% 的 SSL 采用率;现在已经超过了 50%

两个首字母缩写词:

  • TLS:对于大多数 intent 和用途而言,与 SSL 相同。准确地说,SSL 3.1 已改名为 TLS,TLS 是 IETF 标准名称。但它们可以互换!

  • HTTPS:这是基于 SSL 的 HTTP,仅叠加了 SSL 和标准 HTTP 的安全功能。首先是客户端与服务器握手,使用公钥/私钥加密创建一个共享密钥,该密钥供 SSL 协议的第二部分用于加密通信。

通过互联网享受网络带来的安全、即时和快捷。感觉就像我们在与网站直接交谈。但实际上,这并不是直接联系。我们的通信会通过 Wi-Fi 路由器、ISP 以及设备与网站之间的其他中间代理进行通信。如果没有 HTTPS,我们的所有通信都将采用纯文本格式。

问题在于,用户很少输入指定 HTTPS 的完整网址,也很少点击使用 HTTP 的链接。更糟糕的是,有可能发生(女)中间人攻击并将 HTTPS 替换为 HTTP。2009 年推出的一个名为 SSLstrip 的工具正好可以满足此条件。Firesheep 从 2010 年开始,只是监听打开的 Wi-Fi 网络以明确发送 Cookie:这意味着您可以在聊天中监听,或登录到某人的 Facebook 账号。

但 SSL(相对)便宜、快速且易于部署(请参阅 ssllabs.com 和 Ilya Grigorik 的《高性能浏览器网络》一书)。公钥固定旨在为网站运营商提供一种方式,用于限制哪些证书授权机构可以实际为其网站颁发证书。

“今年(2010 年 1 月),Gmail 在默认情况下改为使用 HTTPS。为此,我们无需部署额外的机器和特殊的硬件。在我们的生产前端机器上,<1% 的 CPU 负载,<每个连接 10 KB 的内存,并且 <网络开销的 2%...

如果您现在停止阅读,只需记住一件事:SSL 的计算成本已经不高了。”

Overclocking SSL,Adam Langley(Google)

最后,我们了解几个最常见的 bug:

  • 混合内容:使用 HTTP 和 HTTPS 的网站。您的用户会很生气,因为他们必须点击权限按钮才能加载内容。(Chrome 和 Firefox 实际上会禁止来自 iframe 的混合内容。)使用相对网址或相对架构网址(例如 <style src="//foo.com/style.css">),确保 HTTPS 网页上的所有资源都通过 HTTPS 加载
  • 不安全的 Cookie:通过 HTTP 连接以明文形式发送。为避免这种情况,您可以在 Cookie 标头上设置 secure 属性。您还可以使用新的“严格传输安全”标头来要求使用 SSL 传输安全 (HSTS)。

要点总结

  • 如果您重视用户隐私权和完整性,则需要使用 SSL比以往更快、更轻松、更便宜。
  • 避免常见的实现问题,例如混合内容 bug 或未设置正确的 HTTP 标头位。
  • 使用相对网址或架构相对网址。
  • 体验一些炫酷的新功能,例如 HSTS 和证书固定

幻灯片有 SSL 吗?

适用于多设备网页的媒体 API

作者:Sam Dutton简·林登

随着网络上新设备和平台的涌现,音频、视频和实时通信也在显著增长。在线媒体正在改变我们消费各种媒体的方式。

英国政府研究发现,53% 的成年人会“媒体多任务”看电视时:使用移动设备分享和观看媒体内容。在许多国家/地区,电视观看量有所下降,而在线观看量则有所提高。以中国为例,2012 年,只有 30% 的北京家庭会看电视,而 2009 年这一比例为 70%。根据 W3C Highlights 2013,“在过去一年中,通过移动设备观看视频的次数增加了一倍。今年,美国用户每天在数字媒体上所花的平均时间将超过电视观看时间。观看不再是一种被动的行为。在美国,87% 的娱乐消费者表示他们至少会在看电视时使用一部第二屏设备。根据 Cisco 的研究,“视频...到 2017 年,视频流量将占全球消费者流量的 80% 至 90%”。相当于每秒接近 100 万分钟的视频。

那么,我们能为 Web 开发者提供哪些帮助呢?面向开放网络的媒体 API 生态系统:跨多个平台的标准化、可互操作的技术。

要点总结

  • WebRTC 可在浏览器中实现实时通信,现已在移动设备和桌面设备上获得广泛支持。WebRTC 端点总数已经超过 12 亿。
  • 网络音频提供了用于合成和处理音频的高级工具。
  • 与 Web 音频集成的 Web MIDI 允许与 MIDI 设备交互。
  • 现在,超过 85% 的移动设备和桌面浏览器均支持音频和视频元素。
  • 媒体来源扩展可用于自适应流式传输和时移。
  • EME 支持播放受保护的内容。
  • 转写、字幕和跟踪元素可以启用字幕、字幕、定时元数据、深层链接和深层链接。

幻灯片适用于多设备网页的 Media API