Google at implementere et nyt API i Chrome , som gør det muligt for webapplikationer at etablere direkte netværksforbindelser ved hjælp af TCP- og UDP-protokoller. I 2015 gjorde W3C-konsortiet allerede et forsøg på at standardisere API'et „“, men deltagerne i arbejdsgruppen kunne ikke nå til enighed, og udviklingen af dette API blev stoppet.
Behovet for at tilføje det nye API forklares ved muligheden for at interagere med netværksenheder, der bruger egne protokoller, der fungerer oven på TCP og UDP og ikke understøtter interaktion via HTTPS eller WebSockets. Det bemærkes, at API'et Raw Sockets vil supplere eksisterende lave niveau programmeringsgrænseflader i browseren som WebUSB, WebMIDI og WebBluetooth, der muliggør interaktion med lokale enheder.
For at undgå negativ indflydelse på sikkerheden vil API'et Raw Sockets kun tillade netværksanmodninger, der er initieret med brugerens samtykke, og begrænset til en liste over tilladte værter godkendt af brugeren. Brugeren skal eksplicit bekræfte den første forbindelse til en ny vært. Ved hjælp af et specielt flag vil brugeren kunne deaktivere visningen af tilbageholdte anmodninger om bekræftelse ved gentagne forbindelser til den samme vært. For at forhindre DDoS-angreb vil intensiteten af henvendelser gennem Raw Sockets blive limiteret, og anmodninger kan kun sendes efter brugerens interaktion med siden. UDP-pakker modtaget fra værter, som ikke er godkendt af brugeren, vil blive ignoreret og ikke nå webapplikationen.
Den indledende implementering omfatter ikke oprettelse af lyttersokler, men i fremtiden er det ikke udelukket, at der vil blive tilbudt kald til at modtage indgående forbindelser fra localhost eller en liste over kendte værter. Der nævnes også behovet for at beskytte mod angreb „“ (angriberen kan ændre IP-adressen til et godkendt domænenavn på DNS-niveau og få adgang til andre værter). Adgang til domæner, der resolveres til 127.0.0.0/8 og intranetnetværk, planlægges blokeret (henvendelser til localhost foreslås kun at tillades ved eksplicit indtastning af IP-adressen i bekræftelsesform).
Bland de risici, der kan opstå ved implementeringen af et nyt API, nævnes dets mulige afvisning af producenter af andre browsere, hvilket kan føre til kompatibilitetsproblemer. Udviklerne af Mozilla Gecko- og WebKit-motorerne har endnu ikke stillig til den mulige implementering af API'en Raw Sockets, men Mozilla har tidligere foreslået . Hvis API'en Raw Sockets godkendes i det første trin, planlægges det at aktivere den i Chrome OS, og derefter tilbyde den til Chrome-brugere på andre systemer.
Webudviklere over det nye API og har fremsat mange nye ideer til dets anvendelse i områder, hvor API'en XMLHttpRequest, WebSocket og WebRTC er utilstrækkelige (fra oprettelsen af browserklienter til SSH, RDP, IMAP, SMTP, IRC og udskrivningsprotokoller til udvikling af distribuerede P2P-systemer med DHT (Distributed Hash Table), understøttelse af IPFS og interaktion med specifikke IoT-enhedsprotokoller).
Kilde: opennet.ru
