Для Chrome развиваСтся API для прямых TCP ΠΈ UDP ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΉ

Компания Google приступила ΠΊ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² Chrome Π½ΠΎΠ²ΠΎΠ³ΠΎ API Raw Sockets, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ web-прилоТСниям ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ прямыС сСтСвыС соСдинСния с использованиСм ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² TCP ΠΈ UDP. Π’ 2015 Π³ΠΎΠ΄Ρƒ консорциумом W3C ΡƒΠΆΠ΅ Π±Ρ‹Π»Π° прСдпринята ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° стандартизации API «TCP and UDP Socket«, Π½ΠΎ участники Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π³Ρ€ΡƒΠΏΠΏΡ‹ Π½Π΅ достигли консСнсуса ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Π°Π½Π½ΠΎΠ³ΠΎ API Π±Ρ‹Π»Π° остановлСна.

ΠΠ΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ добавлСния Π½ΠΎΠ²ΠΎΠ³ΠΎ API ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ΡΡ прСдоставлСниСм возмоТности взаимодСйствия с сСтСвыми устройствами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ собствСнныС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΠ²Π΅Ρ€Ρ… TCP ΠΈ UDP, ΠΈ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ взаимодСйствиС Ρ‡Π΅Ρ€Π΅Π· HTTPS ΠΈΠ»ΠΈ WebSockets. ΠžΡ‚ΠΌΠ΅Ρ‡Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ API Raw Sockets Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ интСрфСйсы WebUSB, WebMIDI ΠΈ WebBluetooth, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ устройствами.

Для ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π΅Π³Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ влияния Π½Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ API Raw Sockets Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ сСтСвыС обращСния Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ с согласия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹Π΅ списком Ρ€Π°Π·Ρ€Π΅ΡˆΡ‘Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ хостов. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡƒΠ΄Π΅Ρ‚ явно ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΡƒ соСдинСния для Π½ΠΎΠ²ΠΎΠ³ΠΎ хоста. ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ„Π»Π°Π³Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ смоТСт ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹Ρ… запросов подтвСрТдСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹Ρ… соСдинСниях ΠΊ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ хосту. Для прСдотвращСния DDoS-Π°Ρ‚Π°ΠΊ ΠΈΠ½Ρ‚Π΅Π½ΡΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ Ρ‡Π΅Ρ€Π΅Π· Raw Sockets Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΈΠΌΠΈΡ‚ΠΈΡ€ΠΎΠ²Π°Π½Π°, Π° ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° запросов Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС взаимодСйствия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ со страницСй. UDP-ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ с хостов, Π½Π΅ ΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈ Π½Π΅ Π΄ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π΄ΠΎ web-прилоТСния.

ΠΠ°Ρ‡Π°Π»ΡŒΠ½Π°Ρ рСализация Π½Π΅ прСдусматриваСт создания ΡΠ»ΡƒΡˆΠ°ΡŽΡ‰ΠΈΡ… сокСтов, Π½ΠΎ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ Π½Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ прСдоставлСниС Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² для ΠΏΡ€ΠΈΡ‘ΠΌΠ° входящих соСдинСний с localhost ΠΈΠ»ΠΈ списка извСстных хостов. Π’Π°ΠΊΠΆΠ΅ упоминаСтся Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ Π°Ρ‚Π°ΠΊ «DNS rebinding» (Π°Ρ‚Π°ΠΊΡƒΡ‰ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ DNS ΡΠΌΠ΅Π½ΠΈΡ‚ΡŒ IP-адрСс для ΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ хостам). Доступ ΠΊ Π΄ΠΎΠΌΠ΅Π½Π°ΠΌ, рСзолвящимся Π² 127.0.0.0/8 ΠΈ ΠΈΠ½Ρ‚Ρ€Π°Π½Π΅Ρ‚ сСти планируСтся Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ (обращСния ΠΊ localhost прСдлагаСтся Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ явном Π²Π²ΠΎΠ΄Π΅ IP-адрСса Π² Ρ„ΠΎΡ€ΠΌΠ΅ подтвСрТдСния).

Π‘Ρ€Π΅Π΄ΠΈ рисков, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ API, отмСчаСтся Π΅Π³ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ΅ нСприятиС производитСлями Π΄Ρ€ΡƒΠ³ΠΈΡ… Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌ с ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π΄Π²ΠΈΠΆΠΊΠΎΠ² Mozilla Gecko ΠΈ WebKit ΠΏΠΎΠΊΠ° Π½Π΅ Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ свою ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρƒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ API Raw Sockets, Π½ΠΎ компания Mozilla Ρ€Π°Π½Π΅Π΅ для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Firefox OS (B2G) ΡƒΠΆΠ΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π»Π° ΠΏΠΎΡ…ΠΎΠΆΠΈΠΉ API. Π’ случаС утвСрТдСния Π½Π° ΠΏΠ΅Ρ€Π²ΠΎΠΌ этапС API Raw Sockets планируСтся Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² Chrome OS, Π° ΡƒΠΆΠ΅ ΠΏΠΎΡ‚ΠΎΠΌ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Chrome Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… систСмах.

Web-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ΠΎΠ·Π²Π°Π»ΠΈΡΡŒ ΠΎ Π½ΠΎΠ²ΠΎΠΌ API ΠΈ высказали ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΎΠ²Ρ‹Ρ… ΠΈΠ΄Π΅ΠΉ ΠΎΠ± Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π² областях, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… API XMLHttpRequest, WebSocket ΠΈ WebRTC нСдостаточно (ΠΎΡ‚ создания Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½Ρ‹Ρ… ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² для SSH, RDP, IMAP, SMTP, IRC ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π° ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ Π΄ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ распрСдСлённых P2P-систСм с DHT (Distributed Hash Table), ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ IPFS ΠΈ взаимодСйствия со спСцифичными ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌΠΈ IoT-устройств).

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru