DOMHighResTimeStamp

DOMHighResTimeStamp 类型是一个 double,用于存储以毫秒为单位的时间值。

此类型可用于描述一个离散的时间点或一个时间间隔(两个离散时间点之间的时间差)。起始时间可以是脚本为某个网站或应用确定的特定时间,也可以是 时间原点

以毫秒为单位的时间应精确到 5 µs(微秒),数字的小数部分表示毫秒的分数。但是,如果浏览器因硬件或软件限制等原因无法提供精确到 5 µs 的时间值,则浏览器可以将该值表示为精确到毫秒的时间。另请注意下面关于浏览器首选项控制的降低时间精度以避免计时攻击和 指纹识别 的部分。

此外,如果用户代理运行的设备或操作系统没有达到微秒级精度的时钟,它们可能仅达到毫秒级精度。

安全要求

为了防范计时攻击和 指纹识别DOMHighResTimeStamp 类型会根据站点的隔离状态进行粗化。

  • 隔离上下文中的分辨率:5 微秒
  • 非隔离上下文中的分辨率:100 微秒

使用 Cross-Origin-Opener-PolicyCross-Origin-Embedder-Policy 标头使您的网站跨源隔离

http
Cross-Origin-Opener-Policy: same-origin
Cross-Origin-Embedder-Policy: require-corp

这些标头可确保顶级文档不与跨源文档共享浏览上下文组。COOP 可对您的文档进行进程隔离,潜在攻击者无法在弹出窗口中访问您的全局对象,从而防止了一系列被称为 XS-Leaks 的跨源攻击。

规范

规范
高精度时间
# dom-domhighrestimestamp

另见