Google'i ettevõte uue API elluviimist Chrome'is , mis võimaldab veebirakendustel luua otseühendusi TCP ja UDP protokollide abil. 2015. aastal üritas W3C konsortsium standardiseerida API „“, kuid töörühma liikmed ei saavutanud konsensust ning selle API arendamine peatati.
Uue API lisamise vajadust põhjendatakse võimalusega suhelda võrgu seadmetega, mis kasutavad oma protokolle, mis töötavad TCP ja UDP peal ning ei toeta suhtlemist HTTPSi või WebSocketite kaudu. Märgitakse, et Raw Sockets API täiendab brauseris juba olemasolevaid madala taseme API-sid WebUSB, WebMIDI ja WebBluetooth, mis võimaldavad suhelda kohalikest seadmetest.
Kuna API Raw Sockets võib negatiivselt mõjutada turvalisust, lubab see võrgu päringud ainult siis, kui kasutaja on andnud nõusoleku ning see on piiratud kasutaja poolt lubatud hostide loendiga. Kasutaja peab selgelt kinitama esimest ühenduse katset uue hostiga. Erilise lipuga saab kasutaja välja lülitada korduvate nõusoleku päringute kuvamise sama hostiga uuesti ühendust loomisel. DDoS-rünnakute vältimiseks piiratakse Raw Sockets'i kaudu tehtavate päringute intensiivsust ning päringute saatmine on lubatud ainult siis, kui kasutaja on interaktsioonis lehega. UDP-paketid, mis saadetakse kasutaja poolt mitteheakskiidetud hostidelt, jäetakse tähelepanuta ja ei jõua veebirakenduseni.
Esialgne rakendus ei hõlma kuulamis soklite loomist, kuid tulevikus ei välistata sissetulevate ühenduste vastuvõtmiseks mõeldud kutsete pakkumist localhosti või tuntud hostide loendist. Samuti mainitakse vajadust kaitsta DNS-suunamiste rünnakute ("„) eest (rünnakute korral saab ründaja DNS tasemel heakskiidetud domeeninime IP-aadressi vahetada ja pääseda juurde muudele hostidele). Plaanitakse blokeerida juurdepääs domeenidele, mis lahenduvad aadressil 127.0.0.0/8 ja sisevõrkudesse (pöördumisi localhost'ile lubatakse ainult siis, kui IP-aadress on selgesõnaliselt kasutaja nõusoleku vormis sisestatud).
Uute API rakendamisega kaasnevad riskid, sealhulgas võivad teised brauseritootjad selle tagasi lükata, mis võib põhjustada ühilduvuse probleeme. Mozilla Gecko ja WebKiti mootorite arendajad ei ole veel Raw Sockets API võimalikku rakendamist, kuid Mozilla on varem Firefox OS (B2G) projekti jaoks juba pakkunud . Kui Raw Sockets API esimese etapi jooksul kinnitatakse, plaanitakse selle aktiveerimist Chrome OS-is, seejärel pakkuda seda Chrome'i kasutajatele teistes süsteemides.
Veebiarendajad tagasisidet andnud uue API kohta ja esitanud palju uusi ideid selle kasutamiseks valdkondades, kus XMLHttpRequest, WebSocket ja WebRTC API-d ei ole piisavad (alates brauseripõhiste klientide loomisega SSH, RDP, IMAP, SMTP, IRC ja printimise protokollide jaoks kuni hajutatud P2P-süsteemide arendamiseni DHT (Distributed Hash Table) toetamisega, IPFS-i toetamise ning IoT-seadmete spetsiifiliste protokollidega suhtlemiseni).
Allikas: opennet.ru
