Google ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈ Π²Π΅ΡΡΠΈΡΡΠ° Π½Π° ΡΠ΅Π± Π±ΡΠ°ΡΠ·ΡΡΠ° Chrome 91. Π ΡΡΡΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ Π΅ Π½Π°Π»ΠΈΡΠ½Π° ΡΡΠ°Π±ΠΈΠ»Π½Π° Π²Π΅ΡΡΠΈΡ Π½Π° Π±Π΅Π·ΠΏΠ»Π°ΡΠ½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡ Chromium, ΠΊΠΎΠΉΡΠΎ ΡΠ»ΡΠΆΠΈ ΠΊΠ°ΡΠΎ ΠΎΡΠ½ΠΎΠ²Π° Π½Π° Chrome. ΠΡΠ°ΡΠ·ΡΡΡΡ Chrome ΡΠ΅ ΠΎΡΠ»ΠΈΡΠ°Π²Π° Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π»ΠΎΠ³Π° Π½Π° Google, Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΠΈΠ·ΠΏΡΠ°ΡΠ°Π½Π΅ Π½Π° ΠΈΠ·Π²Π΅ΡΡΠΈΡ Π² ΡΠ»ΡΡΠ°ΠΉ Π½Π° ΡΡΠΈΠ², ΠΌΠΎΠ΄ΡΠ»ΠΈ Π·Π° Π²ΡΠ·ΠΏΡΠΎΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π·Π°ΡΠΈΡΠ΅Π½ΠΎ Π²ΠΈΠ΄Π΅ΠΎ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ (DRM), ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ Π½Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° RLZ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ ΠΏΡΠΈ ΡΡΡΡΠ΅Π½Π΅. Π‘Π»Π΅Π΄Π²Π°ΡΠΎΡΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° Chrome 92 Π΅ Π½Π°ΡΡΠΎΡΠ΅Π½ΠΎ Π·Π° 20 ΡΠ»ΠΈ.
ΠΠ»ΡΡΠΎΠ²ΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π² Chrome 91:
- ΠΠ½Π΅Π΄ΡΠ΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΡΠΏΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° JavaScript Π² ΡΠ²ΠΈΡΠ° Π³ΡΡΠΏΠ° ΡΠ°Π·Π΄Π΅Π»ΠΈ. Chrome 85 Π²ΡΠ²Π΅Π΄Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°Π·Π΄Π΅Π»ΠΈ Π² Π³ΡΡΠΏΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΡΠ²ΡΡ ΠΈ Π΅ΡΠΈΠΊΠ΅Ρ. ΠΠΎΠ³Π°ΡΠΎ ΡΡΠ°ΠΊΠ½Π΅ΡΠ΅ Π²ΡΡΡ Ρ Π΅ΡΠΈΠΊΠ΅Ρ Π½Π° Π³ΡΡΠΏΠ°, ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ Π½Π΅Π³ΠΎ, ΡΠ΅ ΡΠ²ΠΈΠ²Π°Ρ ΠΈ Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ²Π° ΠΎΡΡΠ°Π²Π° Π΅Π΄ΠΈΠ½ Π΅ΡΠΈΠΊΠ΅Ρ (ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΡΠΎ ΡΡΠ°ΠΊΠ²Π°Π½Π΅ Π²ΡΡΡ Ρ Π΅ΡΠΈΠΊΠ΅ΡΠ° ΠΎΡΠ²Π°ΡΡ Π³ΡΡΠΏΠ°ΡΠ°). Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ, Π·Π° Π΄Π° ΡΠ΅ Π½Π°ΠΌΠ°Π»ΠΈ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ° ΠΈ Π΄Π° ΡΠ΅ ΡΠΏΠ΅ΡΡΠΈ Π΅Π½Π΅ΡΠ³ΠΈΡ, Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΠ° Π² ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΠ°Π·Π΄Π΅Π»ΠΈ Π΅ ΡΠΏΡΡΠ½Π°. ΠΠ·ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ ΠΏΡΠ°Π²ΠΈ ΡΠ°ΠΌΠΎ Π·Π° ΡΠ°Π·Π΄Π΅Π»ΠΈ, ΠΊΠΎΠΈΡΠΎ Π²ΡΠ·ΠΏΡΠΎΠΈΠ·Π²Π΅ΠΆΠ΄Π°Ρ Π·Π²ΡΠΊ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Web Locks ΠΈΠ»ΠΈ IndexedDB API, ΡΠ²ΡΡΠ·Π²Π°Ρ ΡΠ΅ ΠΊΡΠΌ USB ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΠΈΠ»ΠΈ Π·Π°ΡΠ½Π΅ΠΌΠ°Ρ Π²ΠΈΠ΄Π΅ΠΎ, Π·Π²ΡΠΊ ΠΈΠ»ΠΈ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠ·ΠΎΡΠ΅Ρ. ΠΡΠΎΠΌΡΠ½Π°ΡΠ° ΡΠ΅ Π±ΡΠ΄Π΅ Π²ΡΠ²Π΅Π΄Π΅Π½Π° ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ, ΠΊΠ°ΡΠΎ ΡΠ΅ Π·Π°ΠΏΠΎΡΠ½Π΅ Ρ ΠΌΠ°Π»ΡΠΊ ΠΏΡΠΎΡΠ΅Π½Ρ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ.
- ΠΠΊΠ»ΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΌΠ΅ΡΠΎΠ΄ Π½Π° ΠΊΠ»ΡΡΠΎΠ²ΠΎ ΡΠΏΠΎΡΠ°Π·ΡΠΌΠ΅Π½ΠΈΠ΅, ΠΊΠΎΠΉΡΠΎ Π΅ ΡΡΡΠΎΠΉΡΠΈΠ² Π½Π° Π³ΡΡΠ±Π° ΡΠΈΠ»Π° Π½Π° ΠΊΠ²Π°Π½ΡΠΎΠ²ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΡΡΡΠΈ. ΠΠ²Π°Π½ΡΠΎΠ²ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΡΡΡΠΈ ΡΠ° ΡΠ°Π΄ΠΈΠΊΠ°Π»Π½ΠΎ ΠΏΠΎ-Π±ΡΡΠ·ΠΈ ΠΏΡΠΈ ΡΠ΅ΡΠ°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ ΡΠ°Π·Π»Π°Π³Π°Π½Π΅ΡΠΎ Π½Π° Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½ΠΎ ΡΠΈΡΠ»ΠΎ Π½Π° ΠΏΡΠΎΡΡΠΈ ΠΌΠ½ΠΎΠΆΠΈΡΠ΅Π»ΠΈ, ΠΊΠΎΠ΅ΡΠΎ Π΅ Π² ΠΎΡΠ½ΠΎΠ²Π°ΡΠ° Π½Π° ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈΡΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ Π·Π° Π°ΡΠΈΠΌΠ΅ΡΡΠΈΡΠ½ΠΎ ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅ ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ΅ΡΠ΅Π½ΠΎ Π½Π° ΠΊΠ»Π°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈ. ΠΠ° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π² TLSv1.3 Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅Π½ ΠΏΠ»ΡΠ³ΠΈΠ½ΡΡ CECPQ2 (Combined Elliptic-Curve and Post-Quantum 2), ΡΡΡΠ΅ΡΠ°Π²Π°Ρ ΠΊΠ»Π°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΡΠΌ Π·Π° ΠΎΠ±ΠΌΠ΅Π½ Π½Π° ΠΊΠ»ΡΡ X25519 ΡΡΡ ΡΡ Π΅ΠΌΠ°ΡΠ° HRSS, Π±Π°Π·ΠΈΡΠ°Π½Π° Π½Π° Π°Π»Π³ΠΎΡΠΈΡΡΠΌΠ° NTRU Prime, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π·Π° ΠΏΠΎΡΡ-ΠΊΠ²Π°Π½ΡΠΎΠ²ΠΈ ΠΊΡΠΈΠΏΡΠΎΡΠΈΡΡΠ΅ΠΌΠΈ.
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈΡΠ΅ TLS 1.0 ΠΈ TLS 1.1, ΠΊΠΎΠΈΡΠΎ Π±ΡΡ Π° ΠΎΠ±ΡΠ²Π΅Π½ΠΈ Π·Π° ΠΎΡΡΠ°ΡΠ΅Π»ΠΈ ΠΎΡ ΠΊΠΎΠΌΠΈΡΠ΅ΡΠ° Π½Π° IETF (Internet Engineering Task Force), Π±Π΅ΡΠ΅ Π½Π°ΠΏΡΠ»Π½ΠΎ ΠΏΡΠ΅ΡΡΡΠ°Π½ΠΎΠ²Π΅Π½Π°. ΠΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° Π²ΡΡΡΠ°Π½Π΅ Π½Π° TLS 1.0/1.1 ΡΡΠ΅Π· ΠΏΡΠΎΠΌΡΠ½Π° Π½Π° ΠΏΡΠ°Π²ΠΈΠ»ΠΎΡΠΎ Π·Π° SSLVersionMin Π΅ ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠΎ.
- Π‘Π³Π»ΠΎΠ±ΠΊΠΈΡΠ΅ Π·Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Linux Π²ΠΊΠ»ΡΡΠ²Π°Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ΅ΠΆΠΈΠΌΠ° βDNS ΠΏΡΠ΅Π· HTTPSβ (DoH, DNS ΠΏΡΠ΅Π· HTTPS), ΠΊΠΎΠΉΡΠΎ ΠΏΡΠ΅Π΄ΠΈ Π±Π΅ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅Π½ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π½Π° Windows, macOS, ChromeOS ΠΈ Android. DNS-over-HTTPS ΡΠ΅ ΡΠ΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ Π·Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ, ΡΠΈΠΈΡΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΠΎΡΠΎΡΠ²Π°Ρ DNS Π΄ΠΎΡΡΠ°Π²ΡΠΈΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΡΠ°Π·ΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ (Π·Π° DNS-over-HTTPS ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΡΡΠΈΡΡ Π΄ΠΎΡΡΠ°Π²ΡΠΈΠΊ ΠΊΠ°ΡΠΎ Π·Π° DNS). ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π°ΠΊΠΎ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΡ ΠΈΠΌΠ° DNS 8.8.8.8, ΡΠΊΠ°Π·Π°Π½ Π² ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ, ΡΠΎΠ³Π°Π²Π° ΡΡΠ»ΡΠ³Π°ΡΠ° DNS-over-HTTPS Π½Π° Google (βhttps://dns.google.com/dns-queryβ) ΡΠ΅ Π±ΡΠ΄Π΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π° Π² Chrome, Π°ΠΊΠΎ DNS Π΅ 1.1.1.1 , ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° ΡΡΠ»ΡΠ³Π°ΡΠ° DNS-over-HTTPS Cloudflare (βhttps://cloudflare-dns.com/dns-queryβ) ΠΈ Ρ.Π½.
- ΠΠΎΡΡ 10080, ΠΊΠΎΠΉΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² Amanda backup ΠΈ VMWare vCenter, Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ ΠΊΡΠΌ ΡΠΏΠΈΡΡΠΊΠ° ΡΡΡ Π·Π°Π±ΡΠ°Π½Π΅Π½ΠΈ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΏΠΎΡΡΠΎΠ²Π΅. ΠΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° Π²Π΅ΡΠ΅ Π±ΡΡ Π° Π±Π»ΠΎΠΊΠΈΡΠ°Π½ΠΈ ΠΏΠΎΡΡΠΎΠ²Π΅ 69, 137, 161, 554, 1719, 1720, 1723, 5060, 5061 ΠΈ 6566. ΠΠ° ΠΏΠΎΡΡΠΎΠ²Π΅ Π² ΡΠ΅ΡΠ½ΠΈΡ ΡΠΏΠΈΡΡΠΊ ΠΈΠ·ΠΏΡΠ°ΡΠ°Π½Π΅ΡΠΎ Π½Π° HTTP, HTTPS ΠΈ FTP Π·Π°ΡΠ²ΠΊΠΈ Π΅ Π±Π»ΠΎΠΊΠΈΡΠ°Π½ΠΎ, Π·Π° Π΄Π° ΡΠ΅ Π·Π°ΡΠΈΡΠΈ ΡΡΠ΅ΡΡ NAT slipstreaming Π°ΡΠ°ΠΊΠ° , ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΏΡΠΈ ΠΎΡΠ²Π°ΡΡΠ½Π΅ Π½Π° ΡΠ΅Π± ΡΡΡΠ°Π½ΠΈΡΠ°, ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½Π° ΠΎΡ Π°ΡΠ°ΠΊΡΠ²Π°ΡΠΈΡ Π² Π±ΡΠ°ΡΠ·ΡΡΠ°, Π΄Π° ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈ ΠΌΡΠ΅ΠΆΠΎΠ²Π° Π²ΡΡΠ·ΠΊΠ° ΠΎΡ ΡΡΡΠ²ΡΡΠ° Π½Π° Π°ΡΠ°ΠΊΡΠ²Π°ΡΠΈΡ ΠΊΡΠΌ Π²ΡΠ΅ΠΊΠΈ UDP ΠΈΠ»ΠΈ TCP ΠΏΠΎΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ, Π²ΡΠΏΡΠ΅ΠΊΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π²ΡΡΡΠ΅ΡΠ½ΠΈΡ Π°Π΄ΡΠ΅ΡΠ΅Π½ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ (192.168.xx, 10 .xxx).
- ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ Π΄Π° ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»Π½ΠΈ ΡΠ΅Π± ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (PWA - Progressive Web Apps), ΠΊΠΎΠ³Π°ΡΠΎ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΡ Π²Π»Π΅Π·Π΅ Π² ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° (Windows ΠΈ macOS). ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎΡΠΎ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½ΠΎ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ°ΡΠ° chrome://apps. Π ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ° ΡΠ΅ ΡΠ΅ΡΡΠ²Π° Π²ΡΡΡ Ρ ΠΌΠ°Π»ΡΠΊ ΠΏΡΠΎΡΠ΅Π½Ρ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ, Π° Π·Π° ΠΎΡΡΠ°Π½Π°Π»ΠΈΡΠ΅ ΠΈΠ·ΠΈΡΠΊΠ²Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π΅ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ° βchrome://flags/#enable-desktop-pwas-run-on-os-loginβ.
- ΠΠ°ΡΠΎ ΡΠ°ΡΡ ΠΎΡ ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΠΏΠΎ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ Π½Π° Π±ΡΠ°ΡΠ·ΡΡΠ° ΠΊΡΠΌ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π²ΠΊΠ»ΡΡΠ²Π°ΡΠ° ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΡ, ΡΠ°ΠΉΠ»ΡΡ βmaster_preferencesβ Π΅ ΠΏΡΠ΅ΠΈΠΌΠ΅Π½ΡΠ²Π°Π½ Π½Π° βinitial_preferencesβ. ΠΠ° Π΄Π° ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡΠ°, ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π·Π° βmaster_preferencesβ ΡΠ΅ ΠΎΡΡΠ°Π½Π΅ Π² Π±ΡΠ°ΡΠ·ΡΡΠ° ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ Π²ΡΠ΅ΠΌΠ΅. ΠΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° Π±ΡΠ°ΡΠ·ΡΡΡΡ Π²Π΅ΡΠ΅ ΡΠ΅ Π±Π΅ΡΠ΅ ΠΎΡΡΡΠ²Π°Π» ΠΎΡ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π΄ΡΠΌΠΈΡΠ΅ βΠ±ΡΠ» ββΡΠΏΠΈΡΡΠΊβ, βΡΠ΅ΡΠ΅Π½ ΡΠΏΠΈΡΡΠΊβ ΠΈ βΡΠΎΠ΄Π΅Π½β.
- Π Π΅ΠΆΠΈΠΌΡΡ Π½Π° ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ ΡΡΡΡΠΈΡΠ°Π½Π΅, ΠΊΠΎΠΉΡΠΎ Π°ΠΊΡΠΈΠ²ΠΈΡΠ° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π·Π° Π·Π°ΡΠΈΡΠ° ΡΡΠ΅ΡΡ ΡΠΈΡΠΈΠ½Π³, Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ΅Π½Π° Π΄Π΅ΠΉΠ½ΠΎΡΡ ΠΈ Π΄ΡΡΠ³ΠΈ Π·Π°ΠΏΠ»Π°Ρ ΠΈ Π² ΠΌΡΠ΅ΠΆΠ°ΡΠ°, Π²ΠΊΠ»ΡΡΠ²Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·ΠΏΡΠ°ΡΠ°Π½Π΅ Π½Π° ΠΈΠ·ΡΠ΅Π³Π»Π΅Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π·Π° ΡΠΊΠ°Π½ΠΈΡΠ°Π½Π΅ ΠΎΡ ΡΡΡΠ°Π½Π° Π½Π° Google. Π Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅, ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΎΡΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ ΡΡΡΡΠΈΡΠ°Π½Π΅ ΠΏΡΠΈΠ»Π°Π³Π° ΠΎΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠΎΠΊΠ΅Π½ΠΈ, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ Π°ΠΊΠ°ΡΠ½Ρ Π² Google, ΠΏΡΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΠΏΠΈΡΠΈ Π·Π° ΡΠΈΡΠΈΠ½Π³, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΈΠ·ΠΏΡΠ°ΡΠ°Π½Π΅ Π½Π° ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ Π½Π° Π·Π°Π³Π»Π°Π²ΠΊΠ°ΡΠ° Π½Π° Referrer Π΄ΠΎ ΡΡΡΠ²ΡΡΠΈΡΠ΅ Π½Π° Google, Π·Π° Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΡΡ Π·Π° ΠΏΡΠ΅ΠΏΡΠ°ΡΠ°Π½Π΅ ΠΎΡ Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ΅Π½ ΡΠ°ΠΉΡ.
- Π ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ΡΠΎ Π·Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Android Π΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ Π΄ΠΈΠ·Π°ΠΉΠ½ΡΡ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅ Π½Π° ΡΠ΅Π± ΡΠΎΡΠΌΡΠ»ΡΡΠ°, ΠΊΠΎΠΈΡΠΎ ΡΠ° ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠ΅Π½Π·ΠΎΡΠ½ΠΈ Π΅ΠΊΡΠ°Π½ΠΈ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° Ρ
ΠΎΡΠ° Ρ ΡΠ²ΡΠ΅ΠΆΠ΄Π°Π½ΠΈΡ (Π·Π° Π½Π°ΡΡΠΎΠ»Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π΄ΠΈΠ·Π°ΠΉΠ½ΡΡ Π΅ ΠΏΡΠ΅ΡΠ°Π±ΠΎΡΠ΅Π½ Π² Chrome 83). Π¦Π΅Π»ΡΠ° Π½Π° ΠΏΡΠ΅ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π±Π΅ΡΠ΅ Π΄Π° ΡΠ΅ ΠΎΠ±Π΅Π΄ΠΈΠ½ΠΈ Π΄ΠΈΠ·Π°ΠΉΠ½ΡΡ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅ Π½Π° ΡΠΎΡΠΌΡΠ»ΡΡΠ° ΠΈ Π΄Π° ΡΠ΅ ΠΏΡΠ΅ΠΌΠ°Ρ
Π½Π°Ρ ΡΡΠΈΠ»ΠΎΠ²ΠΈΡΠ΅ Π½Π΅ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΡ - ΠΏΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° Π½ΡΠΊΠΎΠΈ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ Π½Π° ΡΠΎΡΠΌΡΠ»ΡΡΠ° Π±ΡΡ
Π° ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ°Π½ΠΈ Π² ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Ρ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅ Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°, Π° Π½ΡΠΊΠΎΠΈ Π² ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Ρ Π½Π°ΠΉ-ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΈΡΠ΅ ΡΡΠΈΠ»ΠΎΠ²Π΅. ΠΠΎΡΠ°Π΄ΠΈ ΡΠΎΠ²Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈΡΠ΅ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ Π±ΡΡ
Π° ΠΏΡΠΈΠ³ΠΎΠ΄Π΅Π½ΠΈ ΠΏΠΎ ΡΠ°Π·Π»ΠΈΡΠ΅Π½ Π½Π°ΡΠΈΠ½ Π·Π° ΡΠ΅Π½Π·ΠΎΡΠ½ΠΈ Π΅ΠΊΡΠ°Π½ΠΈ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° Ρ
ΠΎΡΠ° Ρ ΡΠ²ΡΠ΅ΠΆΠ΄Π°Π½ΠΈΡ.
- ΠΠΎΠ±Π°Π²Π΅Π½ΠΎ Π΅ ΠΏΡΠΎΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΌΠ½Π΅Π½ΠΈΠ΅, ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΏΡΠΈ ΠΎΡΠ²Π°ΡΡΠ½Π΅ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ Π½Π° Privacy Sandbox (chrome://settings/privacySandbox).
- ΠΠΎΠ³Π°ΡΠΎ ΡΡΠ°ΡΡΠΈΡΠ°ΡΠ΅ Π²Π΅ΡΡΠΈΡΡΠ° Π½Π° Chrome Π·Π° Android Π½Π° ΡΠ°Π±Π»Π΅ΡΠ½ΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠΈ Ρ Π³ΠΎΠ»Π΅ΠΌΠΈ Π΅ΠΊΡΠ°Π½ΠΈ, Π·Π°ΡΠ²ΠΊΠ°ΡΠ° ΡΠ΅ ΠΏΡΠ°Π²ΠΈ Π·Π° Π½Π°ΡΡΠΎΠ»Π½Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° ΡΠ°ΠΉΡΠ°, Π° Π½Π΅ Π·Π° ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ΡΠΎ Π·Π° ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΡΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ° βchrome://flags/#request-desktop-site-for-tabletsβ.
- ΠΠΎΠ΄ΡΡ Π·Π° ΠΈΠ·ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠΈ Π΅ ΠΏΡΠ΅ΡΠ°Π±ΠΎΡΠ΅Π½, ΠΊΠΎΠ΅ΡΠΎ Π½ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ Π΄Π° ΡΠ°Π·ΡΠ΅ΡΠΈΠΌ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Ρ Π½Π΅ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎΡΡ Π² ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΡΠΎ ΠΏΡΠΈ ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠΈ Π² Chrome ΠΈ Π²ΡΠ² Firefox/Safari.
- ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° ΡΡΡΠ²ΡΡΠ½ΠΈ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ ΠΎΡ ΠΈΡΠΏΠ°Π½ΡΠΊΠΈΡ ΡΠ΅ΡΡΠΈΡΠΈΡΠΈΡΠ°Ρ ΠΎΡΠ³Π°Π½ Camerfirma Π΅ ΡΠΏΡΡΠ½Π° ΠΏΠΎΡΠ°Π΄ΠΈ ΠΏΠΎΠ²ΡΠ°ΡΡΡΠΈ ΡΠ΅ ΠΈΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈ ΠΎΡ 2017 Π³. Π½Π°ΡΠ°ΠΌ, Π²ΠΊΠ»ΡΡΠ²Π°ΡΠΈ Π½Π°ΡΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΠΈΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ. ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π·Π° ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ ΡΠ΅ Π·Π°ΠΏΠ°Π·Π²Π°; Π±Π»ΠΎΠΊΠΈΡΠ°Π½Π΅ΡΠΎ ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π° ΡΠ°ΠΌΠΎ Π·Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π½Π° HTTPS ΡΠ°ΠΉΡΠΎΠ²Π΅.
- ΠΡΠΎΠ΄ΡΠ»ΠΆΠ°Π²Π°ΠΌΠ΅ Π΄Π° ΠΏΡΠΈΠ»Π°Π³Π°ΠΌΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΎ ΡΠ΅Π³ΠΌΠ΅Π½ΡΠΈΡΠ°Π½Π΅, Π·Π° Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π΄ΠΏΠ°Π·ΠΈΠΌ ΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ Π½Π° Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡΡΠ° Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°ΠΉΡΠΎΠ²Π΅ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΡΡΡ
ΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈ Π² ΠΎΠ±Π»Π°ΡΡΠΈ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ° ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈ Π·Π° ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΡΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ (βΠ‘ΡΠΏΠ΅ΡΠ±ΠΈΡΠΊΠ²ΠΈΡΠΊΠΈβ). Π’ΡΠΉ ΠΊΠ°ΡΠΎ ΠΊΠ΅ΡΠΈΡΠ°Π½ΠΈΡΠ΅ ΡΠ΅ΡΡΡΡΠΈ ΡΠ΅ ΡΡΡ
ΡΠ°Π½ΡΠ²Π°Ρ Π² ΠΎΠ±ΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΠΎΡ ΠΈΠΌΠ΅Π½Π°, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΈΡ Π΄ΠΎΠΌΠ΅ΠΉΠ½, Π΅Π΄ΠΈΠ½ ΡΠ°ΠΉΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈ, ΡΠ΅ Π΄ΡΡΠ³ ΡΠ°ΠΉΡ Π·Π°ΡΠ΅ΠΆΠ΄Π° ΡΠ΅ΡΡΡΡΠΈ, ΠΊΠ°ΡΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° Π΄Π°Π»ΠΈ ΡΠΎΠ·ΠΈ ΡΠ΅ΡΡΡΡ Π΅ Π² ΠΊΠ΅ΡΠ°. ΠΠ°ΡΠΈΡΠ°ΡΠ° ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π°Π²Π° Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΎ ΡΠ΅Π³ΠΌΠ΅Π½ΡΠΈΡΠ°Π½Π΅ (Network Partitioning), ΡΠΈΡΡΠΎ ΡΡΡΠ½ΠΎΡΡ Π΅ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈ ΠΊΡΠΌ ΡΠΏΠΎΠ΄Π΅Π»Π΅Π½ΠΈΡΠ΅ ΠΊΠ΅ΡΠΈ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° Π·Π°ΠΏΠΈΡΠΈ ΠΊΡΠΌ Π΄ΠΎΠΌΠ΅ΠΉΠ½Π°, ΠΎΡ ΠΊΠΎΠΉΡΠΎ ΡΠ΅ ΠΎΡΠ²Π°ΡΡ Π³Π»Π°Π²Π½Π°ΡΠ° ΡΡΡΠ°Π½ΠΈΡΠ°, ΠΊΠΎΠ΅ΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π° ΠΏΠΎΠΊΡΠΈΡΠΈΠ΅ΡΠΎ Π½Π° ΠΊΠ΅ΡΠ° ΡΠ°ΠΌΠΎ Π·Π° ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅ Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ Π½Π° Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΊΡΠΌ ΡΠ΅ΠΊΡΡΠΈΡ ΡΠ°ΠΉΡ (ΡΠΊΡΠΈΠΏΡ ΠΎΡ iframe Π½ΡΠΌΠ° Π΄Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΠΈ Π΄Π°Π»ΠΈ ΡΠ΅ΡΡΡΡΡΡ Π΅ ΠΈΠ·ΡΠ΅Π³Π»Π΅Π½ ΠΎΡ Π΄ΡΡΠ³ ΡΠ°ΠΉΡ).
Π¦Π΅Π½Π°ΡΠ° Π½Π° ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ° Π΅ Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΠ° Π½Π° ΠΊΠ΅ΡΠΈΡΠ°Π½Π΅, ΠΊΠΎΠ΅ΡΠΎ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ Π»Π΅ΠΊΠΎ ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ°ΡΠ° (ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ Ρ 1.32%, Π½ΠΎ Π·Π° 80% ΠΎΡ ΡΠ°ΠΉΡΠΎΠ²Π΅ΡΠ΅ Ρ 0.09-0.75%). ΠΠ° Π΄Π° ΡΠ΅ΡΡΠ²Π°ΡΠ΅ ΡΠ΅ΠΆΠΈΠΌΠ° Π½Π° ΡΠ΅Π³ΠΌΠ΅Π½ΡΠΈΡΠ°Π½Π΅, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΡΠ°ΡΡΠΈΡΠ°ΡΠ΅ Π±ΡΠ°ΡΠ·ΡΡΠ° Ρ ΠΎΠΏΡΠΈΡΡΠ° ββenable-features=PartitionConnectionsByNetworkIsolationKey, PartitionExpectCTStateByNetworkIsolationKey, PartitionHttpServerPropertiesByNetworkIsolationKey, PartitionNelAndReportingByNetworkIsolationKey, PartitionSSLSessionsBy NetworkIsolationKey, SplitHostCacheB yNetworkIsolationKey".
- ΠΠΎΠ±Π°Π²Π΅Π½ Π²ΡΠ½ΡΠ΅Π½ REST API VersionHistory (https://versionhistory.googleapis.com/v1/chrome), ΡΡΠ΅Π· ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° Π²Π΅ΡΡΠΈΠΈΡΠ΅ Π½Π° Chrome Π²ΡΠ² Π²ΡΡΠ·ΠΊΠ° Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ ΠΈ ΠΊΠ»ΠΎΠ½ΠΎΠ²Π΅, ΠΊΠ°ΠΊΡΠΎ ΠΈ Ρ ΡΠΎΠ½ΠΎΠ»ΠΎΠ³ΠΈΡ Π½Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈΡΠ΅ Π½Π° Π±ΡΠ°ΡΠ·ΡΡΠ°.
- ΠΡΠ² Π²Π³ΡΠ°Π΄Π΅Π½ΠΈ ΡΠ°ΠΌΠΊΠΈ, Π·Π°ΡΠ΅Π΄Π΅Π½ΠΈ ΠΎΡ Π΄ΠΎΠΌΠ΅ΠΉΠ½ΠΈ, ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΎΡ Π΄ΠΎΠΌΠ΅ΠΉΠ½Π° Π½Π° ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΡΡΡΠ°Π½ΠΈΡΠ°, ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΈ ΠΏΡΠΎΠ·ΠΎΡΡΠΈ Π½Π° JavaScript alert(), confirm() ΠΈ prompt() Π΅ Π·Π°Π±ΡΠ°Π½Π΅Π½ΠΎ, ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ Π·Π°ΡΠΈΡΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ ΠΎΡ ΠΎΠΏΠΈΡΠΈ Π½Π° ΡΠΊΡΠΈΠΏΡ Π½Π° ΡΡΠ΅ΡΠ° ΡΡΡΠ°Π½Π° Π΄Π° ΠΏΠΎΠΊΠ°Π·Π²Π° ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ ΠΏΡΠΈΠΊΡΠΈΡΠΈΠ΅, ΡΠ΅ ΠΈΠ·Π²Π΅ΡΡΠΈΠ΅ΡΠΎ Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ ΠΎΡ Π³Π»Π°Π²Π½ΠΈΡ ΡΠ°ΠΉΡ.
- WebAssembly SIMD API Π΅ ΡΡΠ°Π±ΠΈΠ»ΠΈΠ·ΠΈΡΠ°Π½ ΠΈ ΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π²Π΅ΠΊΡΠΎΡΠ½ΠΈ SIMD ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π² WebAssembly-ΡΠΎΡΠΌΠ°ΡΠΈΡΠ°Π½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ° Π΄Π° ΡΠ΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠ° Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ ΠΎΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ°, ΡΠΎΠΉ ΠΏΡΠ΅Π΄Π»Π°Π³Π° Π½ΠΎΠ² 128-Π±ΠΈΡΠΎΠ² ΡΠΈΠΏ, ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠΈΠΏΠΎΠ²Π΅ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ°Π½ΠΈ Π΄Π°Π½Π½ΠΈ, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ Π²Π΅ΠΊΡΠΎΡΠ½ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ°Π½ΠΈ Π΄Π°Π½Π½ΠΈ. SIMD Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ²Π΅Π»ΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΡΡΠ΅Π· ΠΏΠ°ΡΠ°Π»Π΅Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° Π΄Π°Π½Π½ΠΈ ΠΈ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅ Π½Π° Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½ ΠΊΠΎΠ΄ Π² WebAssembly.
- ΠΡΠΊΠΎΠ»ΠΊΠΎ Π½ΠΎΠ²ΠΈ API Π±ΡΡ
Π° Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΊΡΠΌ ΡΠ΅ΠΆΠΈΠΌΠ° Origin Trials (Π΅ΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΠΈΡΠΊΠ²Π°Ρ ΠΎΡΠ΄Π΅Π»Π½ΠΎ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π΅). Origin Trial ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠ°Π±ΠΎΡΠ° Ρ ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈΡ API ΠΎΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈΠ·ΡΠ΅Π³Π»Π΅Π½ΠΈ ΠΎΡ localhost ΠΈΠ»ΠΈ 127.0.0.1, ΠΈΠ»ΠΈ ΡΠ»Π΅Π΄ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° ΡΠΏΠ΅ΡΠΈΠ°Π»Π΅Π½ ΡΠΎΠΊΠ΅Π½, ΠΊΠΎΠΉΡΠΎ Π΅ Π²Π°Π»ΠΈΠ΄Π΅Π½ Π·Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅ Π·Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ΅Π½ ΡΠ°ΠΉΡ.
- WebTransport Π΅ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» ΠΈ ΠΏΡΠΈΠ΄ΡΡΠΆΠ°Π²Π°Ρ JavaScript API Π·Π° ΠΈΠ·ΠΏΡΠ°ΡΠ°Π½Π΅ ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π±ΡΠ°ΡΠ·ΡΡΠ° ΠΈ ΡΡΡΠ²ΡΡΠ°. ΠΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΠΈΡΡ ΠΊΠ°Π½Π°Π» Π΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½ Π²ΡΡΡ
Ρ HTTP/3, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° QUIC ΠΊΠ°ΡΠΎ ΡΡΠ°Π½ΡΠΏΠΎΡΡ, ΠΊΠΎΠΉΡΠΎ ΠΎΡ ΡΠ²ΠΎΡ ΡΡΡΠ°Π½Π° Π΅ Π΄ΠΎΠ±Π°Π²ΠΊΠ° ΠΊΡΠΌ UDP ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΌΡΠ»ΡΠΈΠΏΠ»Π΅ΠΊΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π²ΡΡΠ·ΠΊΠΈ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅, Π΅ΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΈ Π½Π° TLS/SSL.
WebTransport ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π²ΠΌΠ΅ΡΡΠΎ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ WebSockets ΠΈ RTCDataChannel, ΠΊΠ°ΡΠΎ ΠΏΡΠ΅Π΄Π»Π°Π³Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΊΠ°ΡΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΠΎ ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅, Π΅Π΄Π½ΠΎΠΏΠΎΡΠΎΡΠ½ΠΈ ΠΏΠΎΡΠΎΡΠΈ, Π΄ΠΎΡΡΠ°Π²ΠΊΠ° ΠΈΠ·Π²ΡΠ½ ΡΠ΅Π΄Π°, Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΈ ΠΈ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΈ ΡΠ΅ΠΆΠΈΠΌΠΈ Π½Π° Π΄ΠΎΡΡΠ°Π²ΠΊΠ°. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° WebTransport ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π²ΠΌΠ΅ΡΡΠΎ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Server Push, ΠΊΠΎΠΉΡΠΎ Google ΠΈΠ·ΠΎΡΡΠ°Π²ΠΈ Π² Chrome.
- ΠΠ΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π΅Π½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π·Π° Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π½Π΅ Π½Π° Π²ΡΡΠ·ΠΊΠΈ ΠΊΡΠΌ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»Π½ΠΈ ΡΠ΅Π± ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (PWA), Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡΠ° capture_links Π² ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ° Π½Π° ΡΠ΅Π± ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ Π½Π° ΡΠ°ΠΉΡΠΎΠ²Π΅ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ Π΄Π° ΠΎΡΠ²Π°ΡΡΡ Π½ΠΎΠ² PWA ΠΏΡΠΎΠ·ΠΎΡΠ΅Ρ, ΠΊΠΎΠ³Π°ΡΠΎ ΡΠ΅ ΡΡΠ°ΠΊΠ½Π΅ Π²ΡΡΡ Ρ Π²ΡΡΠ·ΠΊΠ° ΠΊΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π΄Π° ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠΈΡΠ΅ ΠΊΡΠΌ ΡΠ΅ΠΆΠΈΠΌ Π½Π° Π΅Π΄ΠΈΠ½ ΠΏΡΠΎΠ·ΠΎΡΠ΅Ρ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π½Π° ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ API Π·Π° ΠΎΡΠΊΡΠΈΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π²Π½ΠΈΠ½Π° WebXR, ΠΊΠΎΠΉΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΡΠ°Π²Π½ΠΈΠ½Π½ΠΈ ΠΏΠΎΠ²ΡΡΡ Π½ΠΎΡΡΠΈ Π²ΡΠ² Π²ΠΈΡΡΡΠ°Π»Π½Π° 3D ΡΡΠ΅Π΄Π°. ΠΠΎΡΠΎΡΠ΅Π½ΠΈΡΡ API ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ΅ ΠΈΠ·Π±Π΅Π³Π½Π΅ ΡΠ΅ΡΡΡΡΠΎΠ΅ΠΌΠΊΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ, ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈ ΡΡΠ΅Π· ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ΡΠΎ MediaDevices.getUserMedia(), ΠΊΠ°ΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΏΠ°ΡΠ΅Π½ΡΠΎΠ²Π°Π½ΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½Π° Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ Π·Π° ΠΊΠΎΠΌΠΏΡΡΡΡΠ½ΠΎ Π·ΡΠ΅Π½ΠΈΠ΅. ΠΠ΅ΠΊΠ° Π²ΠΈ Π½Π°ΠΏΠΎΠΌΠ½ΠΈΠΌ, ΡΠ΅ WebXR API Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΎΠ±Π΅Π΄ΠΈΠ½ΠΈΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΠ° Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠ»Π°ΡΠΎΠ²Π΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π·Π° Π²ΠΈΡΡΡΠ°Π»Π½Π° ΡΠ΅Π°Π»Π½ΠΎΡΡ, ΠΎΡ ΡΡΠ°ΡΠΈΠΎΠ½Π°ΡΠ½ΠΈ 3D ΡΠ»Π΅ΠΌΠΎΠ²Π΅ Π΄ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°.
- WebTransport Π΅ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» ΠΈ ΠΏΡΠΈΠ΄ΡΡΠΆΠ°Π²Π°Ρ JavaScript API Π·Π° ΠΈΠ·ΠΏΡΠ°ΡΠ°Π½Π΅ ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π±ΡΠ°ΡΠ·ΡΡΠ° ΠΈ ΡΡΡΠ²ΡΡΠ°. ΠΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΠΈΡΡ ΠΊΠ°Π½Π°Π» Π΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½ Π²ΡΡΡ
Ρ HTTP/3, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° QUIC ΠΊΠ°ΡΠΎ ΡΡΠ°Π½ΡΠΏΠΎΡΡ, ΠΊΠΎΠΉΡΠΎ ΠΎΡ ΡΠ²ΠΎΡ ΡΡΡΠ°Π½Π° Π΅ Π΄ΠΎΠ±Π°Π²ΠΊΠ° ΠΊΡΠΌ UDP ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΌΡΠ»ΡΠΈΠΏΠ»Π΅ΠΊΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π²ΡΡΠ·ΠΊΠΈ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅, Π΅ΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΈ Π½Π° TLS/SSL.
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠ°Π±ΠΎΡΠ° Ρ WebSockets over HTTP/2 (RFC 8441), ΠΊΠΎΡΡΠΎ Π΅ Π²Π°Π»ΠΈΠ΄Π½Π° ΡΠ°ΠΌΠΎ Π·Π° Π·Π°ΡΠΈΡΠ΅Π½ΠΈ Π·Π°ΡΠ²ΠΊΠΈ ΠΊΡΠΌ WebSockets ΠΈ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠ΅ Π½Π° Π²Π΅ΡΠ΅ ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½Π° HTTP/2 Π²ΡΡΠ·ΠΊΠ° ΡΡΡ ΡΡΡΠ²ΡΡΠ°, Ρ ΠΊΠΎΠ΅ΡΠΎ Π΅ ΠΎΠ±ΡΠ²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° βWebSockets over HTTP/2β ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΠ΅.
- ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΡΠ° Π·Π° ΠΏΡΠ΅ΡΠΈΠ·Π½ΠΎΡΡΡΠ° Π½Π° ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈΡΠ΅ Π½Π° ΡΠ°ΠΉΠΌΠ΅ΡΠ°, ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈ ΠΎΡ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° performance.now(), ΡΠ° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΈ Π²ΡΠ² Π²ΡΠΈΡΠΊΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ ΠΈ Π²ΠΊΠ»ΡΡΠ²Π°Ρ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»Π° Π·Π° ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΎΡΠΈ Π² ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΈ Π½Π°ΡΡΠΎΠ»Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ ΡΠΎΡΠ½ΠΎΡΡΡΠ° ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π² Π½Π΅ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΈ Π΅ Π½Π°ΠΌΠ°Π»Π΅Π½Π° ΠΎΡ 5 Π½Π° 100 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄ΠΈ.
- ΠΠ΅ΡΠΊΡΠΎΠΏ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΠΈΡΠ΅ Π²Π΅ΡΠ΅ Π²ΠΊΠ»ΡΡΠ²Π°Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠ΅ΡΠ΅Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΎΡ ΠΊΠ»ΠΈΠΏΠ±ΠΎΡΠ΄Π° (Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π² ΠΊΠ»ΠΈΠΏΠ±ΠΎΡΠ΄Π° Π²ΡΠ΅ ΠΎΡΠ΅ Π΅ Π·Π°Π±ΡΠ°Π½Π΅Π½ΠΎ). async ΡΡΠ½ΠΊΡΠΈΡ onPaste(e) { Π½Π΅ΠΊΠ° ΡΠ°ΠΉΠ» = e.clipboardData.files[0]; Π½Π΅ΠΊΠ° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ = ΡΠ°ΠΊΠ° file.text(); }
- CSS ΠΏΡΠΈΠ»Π°Π³Π° ΠΏΡΠ°Π²ΠΈΠ»ΠΎΡΠΎ @counter-style, ΠΊΠΎΠ΅ΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°ΡΠ΅ ΡΠ²ΠΎΠΉ ΡΠΎΠ±ΡΡΠ²Π΅Π½ ΡΡΠΈΠ» Π·Π° Π±ΡΠΎΡΡΠΈ ΠΈ Π΅ΡΠΈΠΊΠ΅ΡΠΈ Π² Π½ΠΎΠΌΠ΅ΡΠΈΡΠ°Π½ΠΈ ΡΠΏΠΈΡΡΡΠΈ.
- CSS ΠΏΡΠ΅Π²Π΄ΠΎ-ΠΊΠ»Π°ΡΠΎΠ²Π΅ΡΠ΅ β:host()β ΠΈ β:host-context()β ΡΠ° Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΠ½ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ Π½Π° ΡΡΡΡΠ°Π²Π½ΠΈ ΡΠ΅Π»Π΅ΠΊΡΠΎΡΠΈ ( ) Π² Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ ΡΠΏΠΈΡΡΡΠΈΡΠ΅ Π·Π° ΠΈΠ·Π±ΠΎΡ ( ).
- ΠΠΎΠ±Π°Π²Π΅Π½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ GravitySensor Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΠΎΠ±Π΅ΠΌΠ½ΠΈ (ΡΡΠΈ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ½ΠΈ ΠΎΡΠΈ) Π΄Π°Π½Π½ΠΈ ΠΎΡ Π³ΡΠ°Π²ΠΈΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡ ΡΠ΅Π½Π·ΠΎΡ.
- API Π·Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠ΅ΠΏΠΎΡΡΠΊΠΈ Π·Π° ΠΈΠ·Π±ΠΎΡ Π½Π° ΠΈΠΌΠ΅ Π½Π° ΡΠ°ΠΉΠ» ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π½ΠΈ Π² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΈΡ ΠΏΡΠΎΠ·ΠΎΡΠ΅Ρ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ ΠΈΠ»ΠΈ ΠΎΡΠ²Π°ΡΡΠ½Π΅ Π½Π° ΡΠ°ΠΉΠ».
- ΠΠ° Π²Π³ΡΠ°Π΄Π΅Π½ΠΈ ΡΠ°ΠΌΠΊΠΈ, Π·Π°ΡΠ΅Π΄Π΅Π½ΠΈ ΠΎΡ Π΄ΡΡΠ³ΠΈ Π΄ΠΎΠΌΠ΅ΠΉΠ½ΠΈ, Π΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ WebOTP API, Π°ΠΊΠΎ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΡ Π΄Π°Π΄Π΅ ΡΡΠΎΡΠ²Π΅ΡΠ½ΠΈΡΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ. WebOTP Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ΅ΡΠ΅ΡΠ΅ Π΅Π΄Π½ΠΎΠΊΡΠ°ΡΠ½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° ΠΏΠΎΡΠ²ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅, ΠΈΠ·ΠΏΡΠ°ΡΠ΅Π½ΠΈ ΡΡΠ΅Π· SMS.
- Π Π°Π·ΡΠ΅ΡΠ΅Π½ΠΎ ΡΠΏΠΎΠ΄Π΅Π»ΡΠ½Π΅ Π½Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΠΈ Π΄Π°Π½Π½ΠΈ Π·Π° ΡΠ°ΠΉΡΠΎΠ²Π΅, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° DAL (Digital Asset Links), ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ° Π·Π° Android Π΄Π° Π±ΡΠ΄Π°Ρ ΡΠ²ΡΡΠ·Π²Π°Π½ΠΈ ΡΡΡ ΡΠ°ΠΉΡΠΎΠ²Π΅ Π·Π° ΠΎΠΏΡΠΎΡΡΡΠ²Π°Π½Π΅ Π½Π° Π²Π»ΠΈΠ·Π°Π½Π΅ΡΠΎ.
- Π‘Π΅ΡΠ²ΠΈΠ·Π½ΠΈΡΠ΅ ΡΠ°Π±ΠΎΡΠ½ΠΈΡΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° JavaScript ΠΌΠΎΠ΄ΡΠ»ΠΈ. ΠΠΎΠ³Π°ΡΠΎ ΠΏΠΎΡΠΎΡΠΈΡΠ΅ ΡΠΈΠΏΠ° βΠΌΠΎΠ΄ΡΠ»β, ΠΊΠΎΠ³Π°ΡΠΎ ΠΈΠ·Π²ΠΈΠΊΠ²Π°ΡΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°, ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈΡΠ΅ ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅ ΡΠ΅ Π±ΡΠ΄Π°Ρ Π·Π°ΡΠ΅Π΄Π΅Π½ΠΈ ΠΏΠΎΠ΄ ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΈ ΡΠ΅ Π±ΡΠ΄Π°Ρ Π΄ΠΎΡΡΡΠΏΠ½ΠΈ Π·Π° ΠΈΠΌΠΏΠΎΡΡΠΈΡΠ°Π½Π΅ Π² ΡΠ°Π±ΠΎΡΠ½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ. ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΠΌΠΎΠ΄ΡΠ»ΠΈ ΡΠ»Π΅ΡΠ½ΡΠ²Π° ΡΠΏΠΎΠ΄Π΅Π»ΡΠ½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠ΄ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅Π± ΡΡΡΠ°Π½ΠΈΡΠΈ ΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠ²Π°ΡΠΈ ΡΠ°Π±ΠΎΡΠ½ΠΈΡΠΈ.
- JavaScript ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π·Π° ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°ΡΡΠ½ΠΈ ΠΏΠΎΠ»Π΅ΡΠ° Π² ΠΎΠ±Π΅ΠΊΡ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° "#foo Π² obj". ΠΊΠ»Π°Ρ A { ΡΡΠ°ΡΠΈΡΠ΅Π½ ΡΠ΅ΡΡ (obj) { console.log (#foo Π² obj); } #foo = 0; } A.test(Π½ΠΎΠ² A()); // Π²ΡΡΠ½ΠΎ A.test({}); // Π½Π΅Π²ΡΡΠ½ΠΎ
- JavaScript ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠ»ΡΡΠΎΠ²Π°ΡΠ° Π΄ΡΠΌΠ° await Π² ΠΌΠΎΠ΄ΡΠ»ΠΈ Π½Π° Π½Π°ΠΉ-Π²ΠΈΡΠΎΠΊΠΎ Π½ΠΈΠ²ΠΎ, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΈΡΠ΅ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½ΠΈΡ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΏΠΎ-ΠΏΠ»Π°Π²Π½ΠΎ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½ΠΈ Π² ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΌΠΎΠ΄ΡΠ»Π° ΠΈ ΠΈΠ·Π±ΡΠ³Π²Π° ΠΎΠ±Π²ΠΈΠ²Π°Π½Π΅ΡΠΎ ΠΈΠΌ Π² βΠ°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½Π° ΡΡΠ½ΠΊΡΠΈΡβ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΌΠ΅ΡΡΠΎ (async function() { await Promise.resolve(console.log('test')); }()); ΡΠ΅Π³Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΈΡΠ΅ΡΠ΅ await Promise.resolve(console.log('test'));
- V8 JavaScript Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»ΡΡ ΠΏΠΎΠ΄ΠΎΠ±ΡΠΈ Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΠ° Π½Π° ΠΊΠ΅ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π±Π»ΠΎΠ½ΠΈ, ΠΊΠΎΠ΅ΡΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈ ΡΠΊΠΎΡΠΎΡΡΡΠ° Π½Π° ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ Π½Π° ΡΠ΅ΡΡΠ° Speedometer4.5-FlightJS Ρ 2%.
- ΠΠΎΠ»ΡΠΌΠ° ΡΠ°ΡΡ ΠΎΡ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡΡΠ° ΡΠ° Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΈ Π² ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠ΅ Π·Π° ΡΠ΅Π± ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ. ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ Π½ΠΎΠ² ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΎΡ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΠΈΠ·ΡΠ»Π΅Π΄Π²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ ArrayBuffer ΠΈ Wasm ΠΏΠ°ΠΌΠ΅Ρ.
Π ΠΏΠ°Π½Π΅Π»Π° Π·Π° Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ ΠΎΠ±ΠΎΠ±ΡΠ΅Π½ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ Π·Π° Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡ, ΠΊΠΎΠΉΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΏΡΠ΅ΡΠ΅Π½ΠΈΡΠ΅ Π΄Π°Π»ΠΈ Π΄Π°Π΄Π΅Π½ ΡΠ°ΠΉΡ ΠΈΠ·ΠΈΡΠΊΠ²Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠ»ΠΈ Π½Π΅.
ΠΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈΡΠ΅ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π² ΠΏΠ°Π½Π΅Π»Π° Elements ΠΈ ΠΏΠ°Π½Π΅Π»Π° Network Analysis ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΡΡΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ, ΠΎΠΏΡΠΈΠΈΡΠ΅ Π·Π° ΠΈΠ·ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΡΠ°ΠΉΠ»Π°.
Π ΠΏΠ°Π½Π΅Π»Π° Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΠΌΡΠ΅ΠΆΠ°ΡΠ° Π²Π΅ΡΠ΅ Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ ΠΏΡΠΈΠ΅ΡΠΈΡΠ΅ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ Π½Π° Π·Π°Π³Π»Π°Π²ΠΊΠ°ΡΠ° Content-Encoding.
Π ΠΏΠ°Π½Π΅Π»Π° ΡΡΡ ΡΡΠΈΠ»ΠΎΠ²Π΅ Π²Π΅ΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π±ΡΡΠ·ΠΎ Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½Π°ΡΠ° ΡΡΠΎΠΉΠ½ΠΎΡΡ, ΠΊΠΎΠ³Π°ΡΠΎ Π½Π°Π²ΠΈΠ³ΠΈΡΠ°ΡΠ΅ ΠΏΡΠ΅Π· CSS ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅, ΠΊΠ°ΡΠΎ ΠΈΠ·Π±Π΅ΡΠ΅ΡΠ΅ βΠΡΠ΅Π³Π»Π΅Π΄ Π½Π° ΠΈΠ·ΡΠΈΡΠ»Π΅Π½Π°ΡΠ° ΡΡΠΎΠΉΠ½ΠΎΡΡβ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΡΠΎ ΠΌΠ΅Π½Ρ.
Π Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ ΠΈΠ½ΠΎΠ²Π°ΡΠΈΠΈΡΠ΅ ΠΈ ΠΊΠΎΡΠ΅ΠΊΡΠΈΠΈΡΠ΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ, Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡΠ° 32 ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ. ΠΠ½ΠΎΠ³ΠΎ ΠΎΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈΡΠ΅ Π±ΡΡ
Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠ°Π½ΠΈ Π² ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½ΠΎ ΡΠ΅ΡΡΠ²Π°Π½Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠ΅ AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer ΠΈ AFL. ΠΠ΅ ΡΠ° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠ°Π½ΠΈ ΠΊΡΠΈΡΠΈΡΠ½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ, ΠΊΠΎΠΈΡΠΎ Π±ΠΈΡ
Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΈ Π΄Π° ΡΠ΅ Π·Π°ΠΎΠ±ΠΈΠΊΠΎΠ»ΡΡ Π²ΡΠΈΡΠΊΠΈ Π½ΠΈΠ²Π° Π½Π° Π·Π°ΡΠΈΡΠ° Π½Π° Π±ΡΠ°ΡΠ·ΡΡΠ° ΠΈ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΠΈ ΠΊΠΎΠ΄ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° ΠΈΠ·Π²ΡΠ½ ΡΡΠ΅Π΄Π°ΡΠ° Π½Π° ΠΏΡΡΡΡΠ½ΠΈΠΊΠ°. ΠΠ°ΡΠΎ ΡΠ°ΡΡ ΠΎΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° Π·Π° ΠΈΠ·ΠΏΠ»Π°ΡΠ°Π½Π΅ Π½Π° ΠΏΠ°ΡΠΈΡΠ½ΠΈ Π½Π°Π³ΡΠ°Π΄ΠΈ Π·Π° ΠΎΡΠΊΡΠΈΠ²Π°Π½Π΅ Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Π·Π° ΡΠ΅ΠΊΡΡΠ°ΡΠ° Π²Π΅ΡΡΠΈΡ, Google ΠΈΠ·ΠΏΠ»Π°ΡΠΈ 21 Π½Π°Π³ΡΠ°Π΄ΠΈ Π½Π° ΡΡΠΎΠΉΠ½ΠΎΡΡ $92000 20000 (Π΅Π΄Π½Π° Π½Π°Π³ΡΠ°Π΄Π° ΠΎΡ $15000 7500, Π΅Π΄Π½Π° Π½Π°Π³ΡΠ°Π΄Π° ΠΎΡ $5000 3000, ΡΠ΅ΡΠΈΡΠΈ Π½Π°Π³ΡΠ°Π΄ΠΈ ΠΎΡ $1000 500, ΡΡΠΈ Π½Π°Π³ΡΠ°Π΄ΠΈ ΠΎΡ $5 XNUMX, ΡΡΠΈ Π½Π°Π³ΡΠ°Π΄ΠΈ ΠΎΡ $XNUMX XNUMX, Π΄Π²Π΅ Π½Π°Π³ΡΠ°Π΄ΠΈ ΠΎΡ $XNUMX XNUMX ΠΈ Π΄Π²Π΅ $XNUMX). Π Π°Π·ΠΌΠ΅ΡΡΡ Π½Π° XNUMX-ΡΠ΅ Π½Π°Π³ΡΠ°Π΄ΠΈ Π²ΡΠ΅ ΠΎΡΠ΅ Π½Π΅ Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru