Google
Behovet av att lägga till ett nytt API förklaras genom att tillhandahålla möjligheten att interagera med nätverksenheter som använder inbyggda protokoll som körs ovanpå TCP och UDP och som inte stöder kommunikation via HTTPS eller WebSockets. Det noteras att Raw Sockets API kommer att komplettera programmeringsgränssnitten på låg nivå WebUSB, WebMIDI och WebBluetooth som redan finns i webbläsaren, vilket möjliggör interaktion med lokala enheter.
För att undvika negativ inverkan på säkerheten tillåter Raw Sockets API endast nätverksanrop som initieras med användarens samtycke och begränsas till listan över värdar som användaren tillåter. Användaren måste uttryckligen bekräfta det första anslutningsförsöket för den nya värden. Med hjälp av en speciell flagga kan användaren inaktivera visningen av begäranden om upprepad operationsbekräftelse för upprepade anslutningar till samma värd. För att förhindra DDoS-attacker kommer intensiteten av förfrågningar via Raw Sockets att vara begränsad, och att skicka förfrågningar kommer endast att vara möjligt efter användarinteraktion med sidan. UDP-paket som tas emot från värdar som inte godkänts av användaren kommer att ignoreras och kommer inte att nå webbapplikationen.
Den initiala implementeringen tillhandahåller inte skapandet av lyssningsuttag, men i framtiden är det möjligt att tillhandahålla samtal för att acceptera inkommande anslutningar från lokalvärd eller en lista över kända värdar. Också nämnt är behovet av att skydda mot attacker "
Bland de risker som kan uppstå vid implementering av ett nytt API är dess eventuella avvisning av tillverkare av andra webbläsare, vilket kan leda till kompatibilitetsproblem. Utvecklarna av Mozilla Gecko- och WebKit-motorerna är fortfarande
Webbutvecklare
Källa: opennet.ru