ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Google ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ»Π° ΡΠ΅Π»ΠΈΠ· web-Π±ΡΠ°ΡΠ·Π΅ΡΠ° Chrome 93. ΠΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΠΉ Π²ΡΠΏΡΡΠΊ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Chromium, Π²ΡΡΡΡΠΏΠ°ΡΡΠ΅Π³ΠΎ ΠΎΡΠ½ΠΎΠ²ΠΎΠΉ Chrome. ΠΡΠ°ΡΠ·Π΅Ρ Chrome ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π»ΠΎΠ³ΠΎΡΠΈΠΏΠΎΠ² Google, Π½Π°Π»ΠΈΡΠΈΠ΅ΠΌ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ Π² ΡΠ»ΡΡΠ°Π΅ ΠΊΡΠ°Ρ Π°, ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ Π΄Π»Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π·Π°ΡΠΈΡΡΠ½Π½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π΅ΠΎΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° (DRM), ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ΠΉ ΠΏΡΠΈ ΠΏΠΎΠΈΡΠΊΠ΅ RLZ-ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ Π²ΡΠΏΡΡΠΊ Chrome 94 Π·Π°ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ Π½Π° 21 ΡΠ΅Π½ΡΡΠ±ΡΡ (ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΠ΅ΡΠ΅Π²Π΅Π΄Π΅Π½Π° Π½Π° 4-Π½Π΅Π΄Π΅Π»ΡΠ½ΡΠΉ ΡΠΈΠΊΠ» ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅Π»ΠΈΠ·ΠΎΠ²).
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Chrome 93:
- ΠΡΠΎΠ²Π΅Π΄Π΅Π½Π° ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΠ·Π°ΡΠΈΡ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ Π±Π»ΠΎΠΊΠ° Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ ΡΡΡΠ°Π½ΠΈΡΠ΅ (page info), Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ
Π±Π»ΠΎΠΊΠΎΠ², Π° Π²ΡΠΏΠ°Π΄Π°ΡΡΠΈΠ΅ ΡΠΏΠΈΡΠΊΠΈ Ρ ΠΏΡΠ°Π²Π°ΠΌΠΈ Π΄ΠΎΡΡΡΠΏΠ° Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ Π½Π° ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ. Π ΡΠΏΠΈΡΠΊΠ°Ρ
ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ Π²ΡΠ²ΠΎΠ΄ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ Π½Π΅ Π΄Π»Ρ Π²ΡΠ΅Ρ
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, Π΄Π»Ρ Π°ΠΊΡΠΈΠ²Π°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ «chrome://flags/#page-info-version-2-desktop».
- ΠΠ»Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅Π½ΡΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ° ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ Π·Π°ΡΠΈΡΡΠ½Π½ΠΎΠ³ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π² Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Π·Π°ΠΌΠ΅Π½ΡΠ½ Π½Π° Π±ΠΎΠ»Π΅Π΅ Π½Π΅ΠΉΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΈ Π½Π΅ Π²ΡΠ·ΡΠ²Π°ΡΡΠΈΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ ΡΡΠ°ΠΊΡΠΎΠ²ΠΊΠΈ ΡΠΈΠΌΠ²ΠΎΠ» (Π·Π°ΠΌΠΎΠΊ Π·Π°ΠΌΠ΅Π½ΡΠ½ Π½Π° Π·Π½Π°ΠΊ «V»). ΠΠ»Ρ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ, ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ
Π±Π΅Π· ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ «Π½Π΅ Π·Π°ΡΠΈΡΠ΅Π½ΠΎ». Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΡΠΈΠ½Ρ Π·Π°ΠΌΠ΅Π½Ρ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ° ΡΠΏΠΎΠΌΠΈΠ½Π°Π΅ΡΡΡ ΡΠΎ, ΡΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Π°ΡΡΠΎΡΠΈΠΈΡΡΡΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ Π·Π°ΠΌΠΊΠ° Ρ ΡΠ΅ΠΌ, ΡΡΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ ΡΠ°ΠΉΡΠ° ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ²Π΅ΡΡΡΡ, Π° Π½Π΅ Π²ΠΎΡΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΠΏΡΠΈΠ·Π½Π°ΠΊ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ. Π‘ΡΠ΄Ρ ΠΏΠΎ ΠΎΠΏΡΠΎΡΡ Google Π»ΠΈΡΡ 11% ΠΏΡΠΎΡΠ΅Π½ΡΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ ΡΠΌΡΡΠ» ΠΏΠΈΠΊΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Ρ Π·Π°ΠΌΠΊΠΎΠΌ.
- Π ΡΠΏΠΈΡΠΊΠ΅ Π½Π΅Π΄Π°Π²Π½ΠΎ Π·Π°ΠΊΡΡΡΡΡ
Π²ΠΊΠ»Π°Π΄ΠΎΠΊ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Π·Π°ΠΊΡΡΡΡΡ
Π³ΡΡΠΏΠΏ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ (ΡΠ°Π½ΡΡΠ΅ Π² ΡΠΏΠΈΡΠΊΠ΅ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π»ΠΎΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π³ΡΡΠΏΠΏΡ Π±Π΅Π· Π΄Π΅ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ) Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ ΡΠ°Π·ΠΎΠΌ Π²Π΅ΡΠ½ΡΡΡ ΠΊΠ°ΠΊ Π²ΡΡ Π³ΡΡΠΏΠΏΡ, ΡΠ°ΠΊ ΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ ΠΈΠ· Π³ΡΡΠΏΠΏΡ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°Π½Π° Π½Π΅ Π΄Π»Ρ Π²ΡΠ΅Ρ
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΏΠΎΡΡΠΎΠΌΡ Π΄Π»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ «chrome://flags/#tab-restore-sub-menus».
- ΠΠ»Ρ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠΉ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ Π½ΠΎΠ²ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ DefaultJavaScriptJitSetting, JavaScriptJitAllowedForSites ΠΈ JavaScriptJitBlockedForSites, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ΅ΠΆΠΈΠΌΠΎΠΌ JIT-less, ΠΎΡΠΊΠ»ΡΡΠ°ΡΡΠΈΠΌ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ JavaScript (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ Ignition) ΠΈ Π·Π°ΠΏΡΠ΅ΡΠ°ΡΡΠΈΠΌ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π°. ΠΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ JIT ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΎΠΏΠ°ΡΠ½ΡΠΌΠΈ web-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ ΡΠ΅Π½ΠΎΠΉ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ JavaScript ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π½Π° 17%. ΠΡΠΈΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Microsoft ΠΏΠΎΡΠ»Π° Π΅ΡΡ Π΄Π°Π»ΡΡΠ΅ ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»Π° Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ Edge ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ «Super Duper Secure», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ JIT ΠΈ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡ Π½Π΅ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠ΅ Ρ JIT Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ Π·Π°ΡΠΈΡΡ CET (Controlflow-Enforcement Technology), ACG (Arbitrary Code Guard) ΠΈ CFG (Control Flow Guard) Π΄Π»Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ web-ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ°. ΠΡΠ»ΠΈ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½Ρ ΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ ΡΠ΄Π°ΡΠ½ΡΠΌ, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΆΠΈΠ΄Π°ΡΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠ° Π΅Π³ΠΎ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠΎΡΡΠ°Π² Chrome.
- ΠΠ° ΡΡΡΠ°Π½ΠΈΡΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ Π²ΡΠ²ΠΎΠ΄ ΡΠΏΠΈΡΠΊΠ° Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²ΠΎΡΡΡΠ΅Π±ΠΎΠ²Π°Π½Π½ΡΡ
Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ², ΡΠΎΡ
ΡΠ°Π½ΡΠ½Π½ΡΡ
Π² Google Drive. Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠΏΠΈΡΠΊΠ° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠ°Π·Π΄Π΅Π»Ρ Priority Π² drive.google.com. ΠΠ»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎΠΊΠ°Π·ΠΎΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Google Drive ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ «chrome://flags/#ntp-modules» ΠΈ «chrome://flags/#ntp-drive-module».
- ΠΠ»Ρ ΡΡΡΠ°Π½ΠΈΡΡ ΠΎΡΠΊΡΡΡΠΈΡ Π½ΠΎΠ²ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΊΠ°ΡΡΡ, ΠΏΠΎΠΌΠΎΠ³Π°ΡΡΠΈΠ΅ Π½Π°ΠΉΡΠΈ Π½Π΅Π΄Π°Π²Π½ΠΎ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌΡΠΉ ΠΊΠΎΠ½ΡΠ΅Π½Ρ ΠΈ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ Π½ΠΈΠΌ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. ΠΠ°ΡΡΡ ΠΏΡΠΈΠ·Π²Π°Π½Ρ ΡΠΏΡΠΎΡΡΠΈΡΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ, ΠΏΡΠΎΡΠΌΠΎΡΡ ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ» ΠΏΡΠ΅ΡΠ²Π°Π½, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ°ΡΡΡ ΠΏΠΎΠΌΠΎΠ³ΡΡ Π½Π°ΠΉΡΠΈ ΡΠ΅ΡΠ΅ΠΏΡ Π±Π»ΡΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅Π΄Π°Π²Π½ΠΎ Π±ΡΠ» Π½Π°ΠΉΠ΄Π΅Π½ Π² ΡΠ΅ΡΠΈ, Π½ΠΎ ΡΡΠ΅ΡΡΠ½ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΊΡΡΡΠΈΡ ΡΡΡΠ°Π½ΠΈΡΡ, ΠΈΠ»ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ Π²ΡΠ±ΠΎΡ ΠΏΠΎΠΊΡΠΏΠΎΠΊ Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°Ρ . Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ Π΄Π²Π΅ Π½ΠΎΠ²ΡΠ΅ ΠΊΠ°ΡΡΡ: «Π Π΅ΡΠ΅ΠΏΡΡ» (chrome://flags/#ntp-recipe-tasks-module) Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΠΊΡΠ»ΠΈΠ½Π°ΡΠ½ΡΡ ΡΠ΅ΡΠ΅ΠΏΡΠΎΠ² ΠΈ ΠΏΠΎΠΊΠ°Π·Π° Π½Π΅Π΄Π°Π²Π½ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅Π½Π½ΡΡ ΡΠ΅ΡΠ΅ΠΏΡΠΎΠ²; «ΠΠΎΠΊΡΠΏΠΊΠΈ» (chrome://flags/#ntp-chrome-cart-module) Π΄Π»Ρ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡΡ ΠΎ Π²ΡΠ±ΡΠ°Π½Π½ΡΡ Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°Ρ ΡΠΎΠ²Π°ΡΠ°Ρ .
- Π Π²Π΅ΡΡΠΈΡ Π΄Π»Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Android Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠ°Π½Π΅Π»ΠΈ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ° (chrome://flags/#continuous-search), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅ΠΉ Π΄Π΅ΡΠΆΠ°ΡΡ Π½Π° Π²ΠΈΠ΄Ρ Π½Π΅Π΄Π°Π²Π½ΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΠΎΠΈΡΠΊΠ° Π² Google (ΠΏΠ°Π½Π΅Π»Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π° Π½Π° Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ).
- Π Π²Π΅ΡΡΠΈΡ Π΄Π»Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Android Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ ΠΎΠ±ΠΌΠ΅Π½Π° ΡΠΈΡΠ°ΡΠ°ΠΌΠΈ (chrome://flags/#webnotes-stylize), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΡΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΡΡΡΠ°Π½ΠΈΡΡ Π² ΡΠΎΡΠΌΠ΅ ΡΠΈΡΠ°ΡΡ ΠΈ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ ΠΈΠΌ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ.
- ΠΡΠΈ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ Π½ΠΎΠ²ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ Π²Π΅ΡΡΠΈΠΉ Π² Chrome Web Store ΡΠ΅ΠΏΠ΅ΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄Π²ΡΡ ΡΠ°ΠΊΡΠΎΡΠ½ΠΎΠΉ Π²Π΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°.
- ΠΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Google Account ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ Π΄Π»Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΏΠ»Π°ΡΠ΅ΠΆΠ°Ρ Π² ΡΠ²ΠΎΠ΅ΠΉ ΡΡΡΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π² Google.
- Π ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΈΠ½ΠΊΠΎΠ³Π½ΠΈΡΠΎ, Π² ΡΠ»ΡΡΠ°Π΅ Π°ΠΊΡΠΈΠ²Π°ΡΠΈΠΈ ΠΎΠΏΡΠΈΠΈ ΠΎΡΠΈΡΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π½ΠΎΠ²ΡΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΏΠΎΡΡΠ½ΡΡΡΠΈΠΉ, ΡΡΠΎ ΡΠΈΡΡΠΊΠ° Π΄Π°Π½Π½ΡΡ ΠΏΡΠΈΠ²Π΅Π΄ΡΡ ΠΊ Π·Π°ΠΊΡΡΡΠΈΡ ΠΎΠΊΠ½Π° ΠΈ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π²ΡΠ΅Ρ ΡΠ΅Π°Π½ΡΠΎΠ² Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΈΠ½ΠΊΠΎΠ³Π½ΠΈΡΠΎ.
- ΠΠ·-Π·Π° Π²ΡΡΠ²Π»Π΅Π½Π½ΡΡ Π½Π΅ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠ΅ΠΉ Ρ ΠΏΡΠΎΡΠΈΠ²ΠΊΠ°ΠΌΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΡΡΡΠΎΠΉΡΡΠ² Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡΠΊΠ»ΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π² Chrome 91 Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ, ΡΡΠΎΠΉΠΊΠΎΠ³ΠΎ ΠΊ ΠΏΠΎΠ΄Π±ΠΎΡΡ Π½Π° ΠΊΠ²Π°Π½ΡΠΎΠ²ΡΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ , ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π² TLSv1.3 ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ CECPQ2 (Combined Elliptic-Curve and Post-Quantum 2), ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΡΡΡΠ΅Π³ΠΎ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΊΠ»ΡΡΠ°ΠΌΠΈ X25519 ΡΠΎ ΡΡ Π΅ΠΌΠΎΠΉ HRSS, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π½Π° Π°Π»Π³ΠΎΡΠΈΡΠΌΠ΅ NTRU Prime, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΠΎΠΉ Π΄Π»Ρ ΠΏΠΎΡΡΠΊΠ²Π°Π½ΡΠΎΠ²ΡΡ ΠΊΡΠΈΠΏΡΠΎΡΠΈΡΡΠ΅ΠΌ.
- Π ΡΠΈΡΠ»ΠΎ Π·Π°ΠΏΡΠ΅ΡΡΠ½Π½ΡΡ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΏΠΎΡΡΠΎΠ² Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΠΏΠΎΡΡΡ 989 (ftps-data) ΠΈ 990 (ftps) Ρ ΡΠ΅Π»ΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π°ΡΠ°ΠΊΠΈ ALPACA. Π Π°Π½Π΅Π΅ c ΡΠ΅Π»ΡΡ Π·Π°ΡΠΈΡΡ ΠΎΡ Π°ΡΠ°ΠΊΠΈ NAT slipstreaming ΡΠΆΠ΅ Π±ΡΠ»ΠΈ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Ρ ΠΏΠΎΡΡΡ 69, 137, 161, 554, 1719, 1720, 1723, 5060, 5061, 6566 ΠΈ 10080.
- Π TLS ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΈΡΡΠΎΠ² Π½Π° Π±Π°Π·Π΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° 3DES. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ ΡΠ΄Π°Π»ΡΠ½ Π½Π°Π±ΠΎΡ ΡΠΈΡΡΠΎΠ² TLS_RSA_WITH_3DES_EDE_CBC_SHA, ΠΏΠΎΠ΄Π²Π΅ΡΠΆΠ΅Π½Π½ΡΠΉ Π°ΡΠ°ΠΊΠ΅ Sweet32.
- ΠΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Ubuntu 16.04.
- ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ API WebOTP ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π½ΡΠΌΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠΌΠΈ ΡΠ΅ΡΠ΅Π· ΠΎΠ±ΡΡΡ ΡΡΡΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ Π² Google. WebOTP ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ web-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΈΡΠ°ΡΡ ΠΎΠ΄Π½ΠΎΡΠ°Π·ΠΎΠ²ΡΠ΅ ΠΊΠΎΠ΄Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ, ΠΏΡΠΈΡΡΠ»Π°Π΅ΠΌΡΠ΅ ΡΠ΅ΡΠ΅Π· SMS. ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊΠΎΠ΄ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ Ρ Chrome Π΄Π»Ρ Android, Π° ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ Π΅Π³ΠΎ Π½Π° Π½Π°ΡΡΠΎΠ»ΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅.
- Π Π°ΡΡΠΈΡΠ΅Π½ API User-Agent Client Hints, ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΠΌΡΠΉ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π·Π°ΠΌΠ΅Π½Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° User-Agent. User-Agent Client Hints ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Π²ΡΠ±ΠΎΡΠΎΡΠ½ΡΡ ΠΎΡΠ΄Π°ΡΡ Π΄Π°Π½Π½ΡΡ
ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ
ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°Ρ
Π±ΡΠ°ΡΠ·Π΅ΡΠ° ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ (Π²Π΅ΡΡΠΈΡ, ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° ΠΈ Ρ.Π΄.) ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΠΎΡΠ° ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΊΠ°ΠΊΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π²Π»Π°Π΄Π΅Π»ΡΡΠ°ΠΌ ΡΠ°ΠΉΡΠΎΠ². ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ User-Agent Client Hints ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π±ΡΠ°ΡΠ·Π΅ΡΠ° Π½Π΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π±Π΅Π· ΡΠ²Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°, Π° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ Π»ΠΈΡΡ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, ΡΡΠΎ Π·Π°ΡΡΡΠ΄Π½ΡΠ΅Ρ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠ°ΡΡΠΈΠ²Π½ΠΎΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ.
Π Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° Sec-CH-UA-Bitness Π΄Π»Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΎ ΡΠ°Π·ΡΡΠ΄Π½ΠΎΡΡΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΎΡΠ΄Π°ΡΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π±ΠΈΠ½Π°ΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ². ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° ΠΎΡΠΏΡΠ°Π²ΠΊΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° Sec-CH-UA-Platform Ρ ΠΎΠ±ΡΠΈΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΎ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅. Π Π·Π½Π°ΡΠ΅Π½ΠΈΠΈ UADataValues, Π²ΡΠ΄Π°Π²Π°Π΅ΠΌΠΎΠΌ ΠΏΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ getHighEntropyValues(), ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π² ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΎΡΠ΄Π°ΡΠ° ΠΎΠ±ΠΎΠ±ΡΡΠ½Π½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², Π΅ΡΠ»ΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²Π΅ΡΠ½ΡΡΡ Π΄Π΅ΡΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ. Π ΠΎΠ±ΡΠ΅ΠΊΡ NavigatorUAData Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΌΠ΅ΡΠΎΠ΄ toJSON, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π²ΠΈΠ΄Π° JSON.stringify(navigator.userAgentData).
- Π‘ΡΠ°Π±ΠΈΠ»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π° ΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ ΡΠ΅ΡΡΡΡΠΎΠ² Π² ΠΏΠ°ΠΊΠ΅ΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ Web Bundle, ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠ΅ Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΡΠΎΠΏΡΡΡΡΠ²ΡΡΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² (CSS-ΡΡΠΈΠ»ΠΈ, JavaScript, ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, iframe). Π‘ΡΠ΅Π΄ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠ² Π² ΠΈΠΌΠ΅ΡΡΠ΅ΠΉΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π΄Π»Ρ ΡΠ°ΠΉΠ»ΠΎΠ² JavaScript (webpack), ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΡΠ°ΡΡΡΡ ΡΡΡΡΠ°Π½ΠΈΡΡ Π² Web Bundle: Π² HTTP-ΠΊΡΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ΅Π΄Π°ΡΡ ΡΠ°ΠΌ ΠΏΠ°ΠΊΠ΅Ρ, Π½ΠΎ Π½Π΅ Π΅Π³ΠΎ ΡΠΎΡΡΠ°Π²Π½ΡΠ΅ ΡΠ°ΡΡΠΈ; ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΡΠ°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ»Π½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ°; Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ CSS ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡΡΡ Π² ΡΠΎΡΠΌΠ΅ JavaScript-ΡΡΡΠΎΠΊ, ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΅ΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠ°Π΄ΠΈΠΈ ΡΠ°Π·Π±ΠΎΡΠ°.
- ΠΠΊΠ»ΡΡΡΠ½ API WebXR Plane Detection, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΠΏΠ»ΠΎΡΠΊΠΈΡ ΠΏΠΎΠ²Π΅ΡΡ Π½ΠΎΡΡΡΡ Π² Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΌ 3D-ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΈ. Π£ΠΊΠ°Π·Π°Π½Π½ΡΠΉ API Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠ±ΠΎΠΉΡΠΈΡΡ Π±Π΅Π· ΡΠ΅ΡΡΡΡΠΎΡΠΌΠΊΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ , ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ ΡΠ΅ΡΠ΅Π· Π²ΡΠ·ΠΎΠ² MediaDevices.getUserMedia(), Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΉ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ Π·ΡΠ΅Π½ΠΈΡ. ΠΠ°ΠΏΠΎΠΌΠ½ΠΈΠΌ, ΡΡΠΎ API WebXR ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ½ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΊΠ»Π°ΡΡΠ°ΠΌΠΈ ΡΡΡΡΠΎΠΉΡΡΠ² Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅Π°Π»ΡΠ½ΠΎΡΡΠΈ, ΠΎΡ ΡΡΠ°ΡΠΈΠΎΠ½Π°ΡΠ½ΡΡ 3D-ΡΠ»Π΅ΠΌΠΎΠ² Π΄ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ Π½Π° Π±Π°Π·Π΅ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ².
- Π ΡΠ΅ΠΆΠΈΠΌΠ΅ Origin Trials (ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΡΡΠ΅Π±ΡΡΡΠΈΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ Π°ΠΊΡΠΈΠ²Π°ΡΠΈΠΈ) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π½ΠΎΠ²ΡΡ
API. Origin Trial ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ API ΠΈΠ· ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΡΡ
Ρ localhost ΠΈΠ»ΠΈ 127.0.0.1, ΠΈΠ»ΠΈ ΠΏΠΎΡΠ»Π΅ ΠΏΡΠΎΡ
ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠΊΠ΅Π½Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ°.
- ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ API Multi-Screen Window Placement, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡ ΠΎΠΊΠ½Π° Π½Π° Π»ΡΠ±ΠΎΠΌ Π΄ΠΈΡΠΏΠ»Π΅Π΅, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΡΠ½Π½ΠΎΠΌ ΠΊ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΎΠΊΠ½Π° ΠΈ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠ°ΡΠΊΡΡΠ²Π°ΡΡ ΠΎΠΊΠ½ΠΎ Π½Π° Π²Π΅ΡΡ ΡΠΊΡΠ°Π½. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ API web-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΏΠΎΠΊΠ°Π·Π° ΠΏΡΠ΅Π·Π΅Π½ΡΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Π²ΡΠ²ΠΎΠ΄ ΡΠ»Π°ΠΉΠ΄ΠΎΠ² Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΡΠΊΡΠ°Π½Π΅, Π° ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ Π΄Π»Ρ Π΄ΠΎΠΊΠ»Π°Π΄ΡΠΈΠΊΠ° Π½Π° Π΄ΡΡΠ³ΠΎΠΌ.
- Π Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Cross-Origin-Embedder-Policy, ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌΠΎΠΌ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ Cross-Origin ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΏΡΠ°Π²ΠΈΠ»Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° «credentialless» Π΄Π»Ρ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΉ Ρ ΡΡΡΡΠ½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ, ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Cookie ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡ.
- ΠΠ»Ρ ΠΎΠ±ΠΎΡΠΎΠ±Π»Π΅Π½Π½ΠΎ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌΡΡ
web-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (PWA, Progressive Web Apps), ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΡ
ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΎΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° ΠΈ Π·Π°Π½ΠΈΠΌΠ°ΡΡΠΈΡ
ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ Π²Π²ΠΎΠ΄Π°, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ ΠΎΠ²Π΅ΡΠ»Π΅ΠΉ Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΎΠΊΠ½ΠΎΠΌ, ΡΠ°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ ΠΎΠ±Π»Π°ΡΡΡ Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΡΠ°ΡΠΊΡΡΡΠΈΡ/ΡΠ²ΠΎΡΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΠΎΠΊΠ½Π°. ΠΠ²Π΅ΡΠ»Π΅ΠΉ ΡΠ°ΡΡΠΈΡΡΠ΅Ρ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΠ±Π»Π°ΡΡΡ Π½Π° Π²ΡΡ ΠΎΠΊΠ½ΠΎ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΠ²ΠΎΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π² ΠΎΠ±Π»Π°ΡΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ PWA-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² URL. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ music.example.com ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅Π±Ρ ΠΊΠ°ΠΊ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ URL https://*.music.example.com ΠΈ Π²ΡΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ ΠΈΠ· Π²Π½Π΅ΡΠ½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎ Π΄Π°Π½Π½ΡΠΌ ΡΡΡΠ»ΠΊΠ°ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ· ΠΌΠ΅ΡΡΠ΅Π½Π΄ΠΆΠ΅ΡΠΎΠ² ΠΈ ΠΏΠΎΡΡΠΎΠ²ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², Π±ΡΠ΄ΡΡ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ ΠΊ ΠΎΡΠΊΡΡΡΠΈΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ PWA-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π° Π½Π΅ Π½ΠΎΠ²ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅.
- ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ CSS-ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ «import» ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΎΠΉ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ JavaScript, ΡΡΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ±ΠΎΠΉΡΠΈΡΡ Π±Π΅Π· Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠΈΠ»Π΅ΠΉ ΠΊΠΎΠ΄ΠΎΠΌ Π½Π° JavaScript. import sheet from ‘./styles.css’ assert { type: ‘css’ }; document.adoptedStyleSheets = [sheet]; shadowRoot.adoptedStyleSheets = [sheet];
- ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ Π½ΠΎΠ²ΡΠΉ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄ AbortSignal.abort(), Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ AbortSignal, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠΆΠ΅ Π²ΡΡΡΠ°Π²Π»Π΅Π½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ aborted. ΠΠΌΠ΅ΡΡΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° AbortSignal Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ aborted ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠΉΡΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΎΠΉ «return AbortSignal.abort()».
- Π ΡΠ»Π΅ΠΌΠ΅Π½Ρ Flexbox Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠ»ΠΎΠ² start, end, self-start, self-end, left ΠΈ right, Π΄ΠΎΠΏΠΎΠ»Π½ΡΡΡΠΈΡ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ»ΠΎΠ²Π° center, flex-start ΠΈ flex-end ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ Π΄Π»Ρ ΡΠΏΡΠΎΡΡΠ½Π½ΠΎΠ³ΠΎ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ flex-ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ².
- Π ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ΅ Error() ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π½ΠΎΠ²ΠΎΠ΅ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ «cause», ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΠ²ΡΠ·ΡΠ²Π°ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ. const parentError = new Error(‘parent’); const error = new Error(‘parent’, { cause: parentError }); console.log(error.cause === parentError); // → true
- Π ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ HTMLMediaElement.controlsList Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ΅ΠΆΠΈΠΌΠ° noplaybackrate, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅Π³ΠΎ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΊΠΎΡΠΎΡΡΠΈ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΌΡΠ»ΡΡΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ°.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Sec-CH-Prefers-Color-Scheme, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ Π½Π° ΡΡΠ°ΠΏΠ΅ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ Π·Π°ΠΏΡΠΎΡΠ° ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π΅ΠΌΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΡΠ²Π΅ΡΠΎΠ²ΠΎΠΉ ΡΡ Π΅ΠΌΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ Π² ΠΌΠ΅Π΄ΠΈΠ°Π·Π°ΠΏΡΠΎΡΠ°Ρ «prefers-color-scheme», ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΡΠ°ΠΉΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π·Π°Π³ΡΡΠ·ΠΊΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠΉ ΡΡ Π΅ΠΌΠΎΠΉ CSS ΠΈ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Π²ΠΈΠ΄ΠΈΠΌΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ Ρ Π΄ΡΡΠ³ΠΈΡ ΡΡ Π΅ΠΌ.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ Object.hasOwn, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠ΅Π΅ ΡΠΎΠ±ΠΎΠΉ ΡΠΏΡΠΎΡΡΠ½Π½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ Object.prototype.hasOwnProperty, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ Π² ΡΠΎΡΠΌΠ΅ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°. Object.hasOwn({ prop: 42 }, ‘prop’) // → true
- Π JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Sparkplug, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ Π΄Π»Ρ ΠΎΡΠ΅Π½Ρ Π±ΡΡΡΡΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π³ΡΡΠ±ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΡΠ΅ΠΆΠΈΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΡΠ½ΠΈΠ·ΠΈΡΡ Π½Π°ΠΊΠ»Π°Π΄Π½ΡΠ΅ ΡΠ°ΡΡ
ΠΎΠ΄Ρ ΠΎΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠ°Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅ΠΆΠΈΠΌΠΎΠΌ Π·Π°ΠΏΠΈΡΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. Sparkplug ΡΠ΅ΠΏΠ΅ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π·Π° ΡΠ°Π· ΡΡΠ°Π·Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈ Π²ΡΠ·ΡΠ²Π°Π΅Ρ mprotect ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΡΠ°Π² Π΄ΠΎΡΡΡΠΏΠ° Π²ΡΠ΅ΠΉ Π³ΡΡΠΏΠΏΡ. ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠΊΡΠ°ΡΠ°Π΅Ρ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ (Π΄ΠΎ 44%) Π±Π΅Π· Π½Π΅Π³Π°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ Π²Π»ΠΈΡΠ½ΠΈΡ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ JavaScript.
- Π Π²Π΅ΡΡΠΈΠΈ Π΄Π»Ρ Android ΠΎΡΠΊΠ»ΡΡΠ΅Π½Ρ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ Π² Π΄Π²ΠΈΠΆΠΎΠΊ V8 ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΡ Π·Π°ΡΠΈΡΡ ΠΎΡ Π°ΡΠ°ΠΊ ΠΏΠΎ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠΌ ΠΊΠ°Π½Π°Π»Π°ΠΌ, ΡΠ°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ Spectre, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ·Π½Π°Π½Ρ Π½Π΅ Π½Π°ΡΡΠΎΠ»ΡΠΊΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌΠΈ, ΠΊΠ°ΠΊ ΠΈΠ·ΠΎΠ»ΡΡΠΈΡ ΡΠ°ΠΉΡΠΎΠ² Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
ΠΏΡΠΎΡΠ΅ΡΡΠ°Ρ
. Π Π½Π°ΡΡΠΎΠ»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΡ Π±ΡΠ»ΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½Ρ Π΅ΡΡ Π² Π²ΡΠΏΡΡΠΊΠ΅ Chrome 70. ΠΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π»ΠΈΡΠ½ΠΈΡ
ΠΏΡΠΎΠ²Π΅ΡΠΎΠΊ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ ΠΏΠΎΠ΄Π½ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π½Π° 2-15%.
- ΠΠ½Π΅ΡΠ΅Π½Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ web-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². Π ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ ΡΡΠΈΠ»Π΅ΠΉ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ @container. Π ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΏΡΠ΅Π΄ΠΏΡΠΎΡΠΌΠΎΡΡ ΡΠ΅ΡΡΡΡΠΎΠ² Π² ΡΠΎΡΠΌΠ°ΡΠ΅ Web bundle. Π web-ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠ΅ ΠΌΠ΅Π½Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΠΎΠΏΡΠΈΠΈ Π΄Π»Ρ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΡΠΎΠΊ Π² ΡΠΎΡΠΌΠ΅ Π»ΠΈΡΠ΅ΡΠ°Π»ΠΎΠ² JavaScript ΠΈΠ»ΠΈ JSON. Π£ΠΏΡΠΎΡΠ΅Π½Π° ΠΎΡΠ»Π°Π΄ΠΊΠ° ΠΎΡΠΈΠ±ΠΎΠΊ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ
Ρ CORS (Cross-Origin Resource Sharing).
ΠΡΠΎΠΌΠ΅ Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ Π² Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΡΡΡΡΠ°Π½Π΅Π½ΠΎ 27 ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ. ΠΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ Π²ΡΡΠ²Π»Π΅Π½Ρ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer ΠΈ AFL. ΠΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΎΠ±ΠΎΠΉΡΠΈ Π²ΡΠ΅ ΡΡΠΎΠ²Π½ΠΈ Π·Π°ΡΠΈΡΡ Π±ΡΠ°ΡΠ·Π΅ΡΠ° ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠ΄ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Π°ΠΌΠΈ sandbox-ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ, Π½Π΅ Π²ΡΡΠ²Π»Π΅Π½ΠΎ. Π ΡΠ°ΠΌΠΊΠ°Ρ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎ Π²ΡΠΏΠ»Π°ΡΠ΅ Π΄Π΅Π½Π΅ΠΆΠ½ΠΎΠ³ΠΎ Π²ΠΎΠ·Π½Π°Π³ΡΠ°ΠΆΠ΄Π΅Π½ΠΈΡ Π·Π° ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠ΅Π»ΠΈΠ·Π° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Google Π²ΡΠΏΠ»Π°ΡΠΈΠ»Π° 19 ΠΏΡΠ΅ΠΌΠΈΠΉ Π½Π° ΡΡΠΌΠΌΡ 136500 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² Π‘Π¨Π (ΡΡΠΈ ΠΏΡΠ΅ΠΌΠΈΠΈ $20000, ΠΎΠ΄Π½Π° ΠΏΡΠ΅ΠΌΠΈΡ $15000, ΡΡΠΈ ΠΏΡΠ΅ΠΌΠΈΠΈ $10000, ΠΎΠ΄Π½Π° ΠΏΡΠ΅ΠΌΠΈΡ $7500, ΡΡΠΈ ΠΏΡΠ΅ΠΌΠΈΠΈ $5000 ΠΈ ΡΡΠΈ ΠΏΡΠ΅ΠΌΠΈΠΈ $3000). Π Π°Π·ΠΌΠ΅Ρ 5 Π²ΠΎΠ·Π½Π°Π³ΡΠ°ΠΆΠ΄Π΅Π½ΠΈΠΉ ΠΏΠΎΠΊΠ° Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru