Technologie

WebUSB, czyli API, które pozwoli peryferiom USB na bezpośredni dostęp do sieci

Tomasz Popielarczyk
WebUSB, czyli API, które pozwoli peryferiom USB na bezpośredni dostęp do sieci
7

Dwóch pracowników Google'a opracowało nowe API, które ma umożliwić sprzętom podłączanym do portów USB na bezpośrednią komunikację z internetem.

Autorami API WebUSB są pracownicy Google'a, Reilly Grant i Ken Rockot. Zgłosili oni swój projekt do konsorcjum World Wide Web. Aktualnie jest on jedynie szkicem, ale istnieje duża szansa, że z czasem trafi do oficjalnej specyfikacji HTML 5 i stanie się jednym z wiodących standardów. Dlaczego jedna miałoby to nastąpić i jakie korzyści przyniesie?

WebUSB to rozwiązanie, które pozwala na urządzeniom podłączanym do portów USB na bezpośrednią komunikację z siecią. Nie chodzi jednak, aby uczynić to rozwiązanie uniwersalnym. WebUSB nie sprawi, że nagle każde urządzenie, każdy pendrive będzie zdolny do bezpośredniej łączności z siecią. Chodzi o uproszczenie. Producenci sprzętu mieliby otrzymać dzięki temu instrumenty pozwalające na uczynienie ich urządzeń kompatybilnych z siecią. Dzięki temu możliwe byłoby tworzenie wieloplatformowych SDK w JavaScript. Webdeveloperzy dzięki temu dostosowywaliby swoje usługi i aplikacje do współpracy z konkretnym typem sprzętu bez potrzeby czekania na wydanie stosownego API, które zostanie w końcu zaimplementowane w przeglądarce (a aby tak się stało, najpierw dana kategoria sprzętu musiałaby zyskać na popularności).

Ma to szczególne znaczenie wobec rewolucji Internet of Things, u progu której się obecnie znajdujemy. Ale nie tylko, bo API ma również pozwalać na komunikację z urządzeniami starszego typu, które są już dostępne na rynku od dłuższego czasu. Pozwoliłoby to deweloperom tchnąć w te urządzenia zupełnie nowe życie. Przykładem

To oczywiście budzi szereg wątpliwości związanych z bezpieczeństwem. Teoretycznie pomost łączący urządzenia bezpośrednio z internetem, jakim jest WebUSB, stwarza ogromne pole do nadużyć. Domyślnie bowiem komputery i akcesoria USB komunikują się bez żadnych dodatkowych zabezpieczeń. Dlatego też zastosowanie ma znaleźć tutaj mechanizm typu CORS (Cross-Origin Resource Sharing). Przeglądarka internetowa będzie w rezultacie blokować pobieranie danych przez stronę www z zewnętrznych źródeł. Serwisy nie będą zatem miały bezpośredniego dostępu do danych z naszego komputera za pośrednictwem złącza USB. Wszystko będzie oparte o system uprawnień - użytkownik będzie musiał wyrazić na nie zgodę, zanim jakiekolwiek funkcje zaczną działać.

API WebUSB jest dostępne na Githubie, gdzie każdy ma wgląd. Warto zajrzeć również na stronę opisującą w wyczerpujący sposób całą technologię. Zaznaczam, że dokument ma ciągle status "unnoficial draft", a więc jeszcze sporo może się tutaj zmienić. Upłynie też zapewne dużo czasu, zanim (o ile w ogóle) przyjmie WebUSB zostanie przyjęte przez W3C. Nie da się jednak ukryć, że technologia zapowiada się niezwykle interesująco i sam jestem ciekawy, jak zostanie wykorzystana przez programistów w praktyce.

Hej, jesteśmy na Google News - Obserwuj to, co ważne w techu