Safari 26.4 WebKit 功能全覽:Grid Lanes、WebTransport、ReadableByteStream 同步登場
WebKit Blog · 2026-03-24
Safari 26.4 帶來了 44 項新功能與 191 個錯誤修正。以下依規格層面梳理主要技術變動。
CSS Grid Lanes:為 Masonry 佈局設計的新顯示模式
Grid Lanes 以 display: grid-lanes 與 display: inline-grid-lanes 啟用,搭配 flow-tolerance 屬性控制元素放置的積極程度,屬 CSS Grid Module Level 3 規格。Web Inspector 同步提供 order 數字覆蓋層以便除錯。
Scroll-Driven Animations 在 Compositor 上執行
凡使用 animation-timeline: scroll() 或 animation-timeline: view() 的捲動驅動動畫,現在自動移至 compositor thread 執行,主執行緒繁忙時仍可保持流暢,無需任何程式碼修改。
WebTransport:基於 HTTP/3 + QUIC 的低延遲雙向傳輸
WebTransport 是 WebSocket 的現代替代方案,在 HTTP/3 與 QUIC 上運行並提供 TCP 回退路徑。同一連線內可混用可靠與不可靠資料傳輸,API 建構於 Streams API 之上,適合多人遊戲、即時協作和視訊會議場景。
ReadableByteStream 與 BYOB Reader
位元組導向串流透過 BYOB(Bring Your Own Buffer)閱讀器實現緩衝區重用,在 fetch 請求/回應本體與 Blob.stream() 上均支援此模式,顯著降低大型二進位資料(影片、音訊)的記憶體開銷。
Keyboard Lock API
全螢幕應用程式可透過 element.requestFullscreen({ keyboardLock: "browser" }) 攔截瀏覽器快捷鍵(如 Escape),退出全螢幕或切換分頁時自動釋放。僅限安全上下文(HTTPS)。
WebAuthn PRF Extension
WebAuthn 新增 PRF(Pseudo-Random Function)擴充,對應 CTAP 的 hmac-secret,搭配 CTAP PIN/UV Auth Protocol 2(使用 HKDF-SHA-256 金鑰衍生),為企業與政府級 FIPS 合規身份驗證提供憑證綁定的加密秘密。
Resource Timing Level 3
新增 finalResponseHeadersStart 與 firstInterimResponseStart 屬性,可量測 103 Early Hints 的回應時序,區分中間回應與最終 HTTP 回應的到達時間。
Name-Only Container Queries
容器查詢現可僅按名稱查詢而無需尺寸條件:@container sidebar { },適用於組件作用域隔離但不需要響應式行為的場景。
Safari Technology Preview 242 的先行變動
同期發布的 TP 242(2026-04-23)預覽了 CSS Values Level 5 的 attr() 函數、CSS Fonts Level 4 的 font-synthesis-style: oblique-only、<dialog> 的 closedby 屬性,以及 IndexedDB 的 getAllRecords() / IDBGetAllOptions。
原始來源:WebKit Features for Safari 26.4、Safari Technology Preview 242
DBSC:Chrome 146 以 TPM 綁定 Session,阻斷 Cookie 竊取攻擊
Google Security Blog / Chrome for Developers · 2026-04-09
Device Bound Session Credentials(DBSC)是 W3C WebAppSec 工作組的新規格(w3c.github.io/webappsec-dbsc),Chrome 146 起在 Windows 平台正式全量推出,macOS 支援列為後續版本計畫。
攻擊模型與設計目標
Session 竊取攻擊(包括資訊竊取惡意程式)可在不知道使用者密碼的情況下,透過複製 cookie 至另一裝置上存取帳號。DBSC 的設計目標是讓 session 憑證無法被匯出至原始裝置以外的地方使用。
加密機制
每個 DBSC session 各自持有一個裝置綁定的金鑰對,私鑰儲存於 TPM(Windows)或 Secure Enclave(macOS),即使具有相同系統權限的惡意程式也無法匯出私鑰。支援的演算法包括 ECDSA_P256(ES256)與 RS256。Chrome 內部量測的 TPM 簽署延遲為 P50 200ms、P95 600ms,錯誤率約 0.001%。目前約 60% 的 Windows 使用者持有可用的 TPM。
HTTP 標頭 API
伺服器透過 Secure-Session-Registration 回應標頭啟動 session 綁定:
Secure-Session-Registration: (ES256 RS256);path="/endpoint";challenge="value"瀏覽器生成金鑰對後,將含有公鑰(JWK 格式)的 JWT 以私鑰簽署並 POST 至註冊端點。TPM 的憑證鏈不會傳送至伺服器,以防止裝置指紋識別。
Session 持久性機制
追蹤中的 cookie 到期時,瀏覽器先暫緩該作用域的外送請求,再透過 Sec-Secure-Session-Id 標頭向刷新端點提供持有私鑰的 JWT 證明,換取新的短效 cookie,最後恢復暫緩的請求。
隱私考量
每個 session 使用獨立的金鑰,網站無法透過 DBSC 跨 session 關聯使用者活動。規格要求協議不得揭露同一裝置上兩個不同 session 金鑰的關聯性。