Chrome'i jaoks töötatakse välja API otsese TCP- ja UDP-suhtluse jaoks

Google alanud Chrome'is uue API juurutamiseks Toored pistikupesad, mis võimaldab veebirakendustel luua otsevõrguühendusi, kasutades TCP- ja UDP-protokolle. 2015. aastal üritas W3C konsortsium API-d juba standardida.TCP ja UDP pesa“, kuid töörühma liikmed ei jõudnud üksmeelele ja selle API arendamine peatati.

Uue API lisamise vajadust seletatakse võimalusega suhelda võrguseadmetega, mis kasutavad natiivseid protokolle, mis töötavad TCP ja UDP peal ega toeta suhtlust HTTPS-i või WebSocketsi kaudu. Tuleb märkida, et Raw Sockets API täiendab brauseris juba olemasolevaid madala taseme programmeerimisliideseid WebUSB, WebMIDI ja WebBluetooth, mis võimaldavad suhelda kohalike seadmetega.

Turvalisuse negatiivse mõju vältimiseks lubab Raw Sockets API võrgukõnesid, mis on algatatud kasutaja nõusolekul ja piiratud kasutaja lubatud hostide loendiga. Kasutaja peab uue hosti esimese ühenduse loomise katse selgesõnaliselt kinnitama. Spetsiaalse lipu abil saab kasutaja keelata korduvate toimingute kinnitustaotluste kuvamise korduvate ühenduste korral sama hostiga. DDoS-i rünnakute vältimiseks piiratakse päringute intensiivsust Raw Socketsi kaudu ja päringute saatmine on võimalik alles pärast kasutaja suhtlemist lehega. Kasutaja poolt heakskiitmata hostidelt saadud UDP-pakette ignoreeritakse ja need ei jõua veebirakendusse.

Esialgne juurutus ei näe ette kuulamispesade loomist, kuid edaspidi on võimalik pakkuda kõnesid kohalikult hostilt või teadaolevate hostide loendi sissetulevate ühenduste vastuvõtmiseks. Samuti mainitakse vajadust kaitsta rünnakute eest "DNS-i uuesti sidumine"(ründaja saab muuta kasutaja heakskiidetud domeeninime IP-aadressi DNS-i tasemel ja saada juurdepääsu teistele hostidele). Plaanis on blokeerida juurdepääs domeenidele, mis lahendavad 127.0.0.0/8 ja intraneti võrkudele (juurdepääs localhostile on pakutud lubada vaid juhul, kui IP-aadress on kinnitusvormis selgesõnaliselt sisestatud).

Riskide hulgas, mis uue API juurutamisel tekkida võivad, on selle võimalik tagasilükkamine teiste brauserite tootjate poolt, mis võib kaasa tuua ühilduvusprobleeme. Mozilla Gecko ja WebKiti mootorite arendajad on endiselt ei õnnestunud oma seisukohta Raw Sockets API võimaliku rakendamise kohta, kuid Mozilla oli varem teinud ettepaneku Firefox OS (B2G) projekti kohta sarnane API. Kui see esimeses etapis heaks kiidetakse, kavatsetakse Raw Sockets API aktiveerida Chrome OS-is ja alles seejärel pakkuda Chrome'i kasutajatele teistes süsteemides.

Veebiarendajad positiivselt reageeris uuele API-le ja avaldas palju uusi ideid selle rakenduse kohta valdkondades, kus XMLHttpRequest, WebSocket ja WebRTC API-dest ei piisa (alates brauseriklientide loomisest SSH, RDP, IMAP, SMTP, IRC ja printimisprotokollide jaoks kuni hajutatud P2P-süsteemide väljatöötamiseni DHT (Distributed Hash Table), IPFS-i tugi ja interaktsioon IoT-seadmete konkreetsete protokollidega).

Allikas: opennet.ru

Lisa kommentaar