Hlavní navigace

Google a Mozilla omezují podporu plug-inů: které přestanou fungovat?

Jiří Macich ml. 15. 7. 2014

Firefox bude činnost plug-inů více regulovat, Chrome rovnou řadu z nich přestane podporovat. Oba prohlížeče však nadále budou „hodné“ na problematický Flash Player.

Webové technologie se dlouhodobě rozvíjejí s cílem, že by měly zcela nahradit technologie proprietární, které ve webovém prohlížeči potřebují svůj vlastní plug-in. Google a Mozilla se nyní snaží tento vývoj akcelerovat. Prohlížeče Google Chrome a Mozilla Firefox v posledních měsících omezují podporu plug-inů a padají konkrétní termíny, kdy některé plug-iny přestanou být podporované.

Důvodů k odklonu od plug-inů je více než dost. Tradičním argumentem je bezpečnost. Dle zprávy AV-Test.org z prosince loňského roku Adobe Reader, Flash a Java dlouhodobě generují dvě třetiny problémů využívaných k napadení platformy Microsoft Windows. Malware tak dnes číhá především na webu. Plug-iny technologií Flash a Java či programu Adobe Reader přitom patří k těm nejrozšířenějším.

Vedle bezpečnosti je také spolehlivost prohlížečů velmi ovlivňována plug-iny. Prakticky ze všech táborů tvůrců prohlížečů zaznívá, že plug-iny jsou častým zdrojem nejrůznějších provozních problémů. Dlouhodobě se zavádí prvky, které by negativní působení plug-inů měly eliminovat či alespoň zmírnit, ale řeší až následek problému, nikoliv příčinu. Právě to nyní Google a Mozilla chtějí ve svých prohlížečích změnit.

K odklonu od plug-inů, respektive technologií, které je vyžadují, existuje ještě jeden dobrý důvod, kterým je kompatibilita. Na první pohled se může zdát, že např. mobily a tablety se úspěšně obejdou bez plug-inů ve svých prohlížečích, ale situace je komplikovanější. Weby závislé na plug-inech zastupují mobilní aplikace. Ty představují pro on-line služby další náklady. Zvlášť při vývoji pro dvě až tři různé platformy.

Google Chrome bez podpory řady plug-inů

Google již během posledního čtvrtletí 2013 zveřejnil odvážný záměr v horizontu přibližně jednoho roku skoncovat s podporou Netscape Plug-in API (NPAPI).

Jedná se o historicky první uznávaný standard pro uživatelské rozšiřování funkcí webových prohlížečů. Jak název API napovídá, jeho kořeny sahají hluboko do 90. let minulého století k prohlížeči Netscape Navigator.

Zatímco Netscape Navigator je dnes již pomalu zapomenut, jeho stařičké API mnoho současných plug-inů běžně používá. Ukončení podpory Netscape Plug-in API (NPAPI) by tak znamenalo i skoncování s podporou řady dnes běžně používaných plug-inů. Nedotklo by se přitom jen prohlížeče Google Chrome.

Společnost Google chce ukončit podporu NPAPI už na základní úrovni open source projektu Chromium. Zasáhla by tak nejen svůj značkový prohlížeč Google Chrome, ale zároveň řadu dalších více či méně významných browserů, které z projektu Chromium také vycházejí. Po loňském roce resetování vývoje je jedním z nich taktéž Opera, která stále patří do první pětky nejrozšířenějších browserů.

Google má jasný plán ukončování podpory NPAPI, který již běží na plné obrátky. Pod majoritními platformami Windows a OS X je nyní podpora NPAPI zatím jen omezována. Linux se však letos na jaře stal první platformou, kde Chromium stařičké NPAPI nepodporuje. Potažmo Google Chrome (od verze 35) a další odvozené prohlížeče. Uživatelům tak v prohlížeči chybí například Java, ale i řada specializovaných plug-inů.

Google zjevně Linux využívá, aby si otestoval, jak to v praxi bude či nebude fungovat, než přikročí k významnějším restrikcím na majoritních platformách Windows a OS X. V jejich případě Chromium a odvozené prohlížeče prozatím podporu NPAPI postupně omezují. Výjimku dostaly technologie Java a Silverlight, služby Google Talk (Hangouts) a Google Earth spolu s plug-inem, který Facebook potřebuje pro videohovory.

Co Flash Player? Tomu se paradoxně současné tažení Googlu proti plug-inům vyhýbá. Flash Player je součástí instalace prohlížeče Google Chrome. Adobe pro Google dodává verzi, která namísto Netscape Plug-in API (NPAPI) využívá modernější Pepper Plug-in API (PPAPI), jehož podpora omezována není. PPAPI však zatím podporuje pouze Chromium a od něj odvozené prohlížeče jako je Google Chrome.

Plug-iny, které využívají NPAPI a nemají udělenou výjimku, podle původního plánu již neměly fungovat. Nakonec Google zvolil méně drastické opatření. Chromium spolu s odvozenými prohlížeči jejich podporu pod Windows a OS X ještě zachovává, ale ve výchozím stavu jsou neaktivní. Pokud si web žádá služeb některého z nich, zobrazí se informační lišta, přes kterou uživatel může dotyčný plug-in aktivovat.

Google však hodlá během léta přitvrzovat. Změní se způsob upozornění, že si dotyčný web žádá služeb některého z neaktivních plug-inů. Současnou nepřehlédnutelnou žlutou lištu nahradí méně zřetelný prvek v řádku s webovou adresou. Toto opatření by mělo mít především psychologický efekt – tlak na vývojáře. Google chce dát jasně najevo, že ukončení podpory NPAPI myslí vážně.

Během léta se zkrátí seznam plug-inů, které zatím mají výjimku. Pravděpodobně z něj zmizí Google Talk (Hangouts) a Google Earth. Mapová služba Google Earth přesedlala na čistě webovou technologii WebGL. Komunikační služba Hangouts, která nahradila Google Talk, rovněž nebude potřebovat plug-in, respektive v prohlížeči Google Chrome nebude potřebovat svůj vlastní plug-in.

Na konci roku 2014 nebo na začátku roku 2015 by Google rád s podporou NPAPI skoncoval úplně na všech platformách. Je možné, že ještě dojde k nějakému dočasnému kompromisu, ale pro Chromium a odvozené prohlížeče již NPAPI dlouhodobou perspektivu nemá. Stejně jako plug-iny, které jej dodnes využívají. Google se přitom odvolává na Mozillu, která prý kráčí stejnou cestou, ale pravdou je, že Mozilla zdaleka není tak radikální.

Mozilla před revolucí upřednostňuje evoluci

Mozilla již na počátku roku 2013 prezentovala, že ve svém webovém prohlížeči Firefox zpřísní podmínky podpory plug-inů. Šlo o reakci na sérii objevených kritických bezpečnostních nedostatků v nejrozšířenějších z nich.

Mozilla tehdy představila novou politiku podpory plug-inů. Zvolila však smířlivější cestu než Google. Zatím nehodlá podporou nějaké skupiny plug-inů zcela vypouštět. Chce však regulovat plug-iny, které budou ve výchozím nastavení prohlížeče aktivní.

Ostatní plug-iny by měly být spouštěny vždy jednotlivě ke konkrétnímu účelu až na přání uživatele. Původní plán z počátku roku 2013 kalkuloval s tím, že ve výchozím nastavení by se až na přání uživatele spouštěly veškeré plug-iny. Výjimku by dostal Flash Player. Jeho v danou chvíli nejnovější verze by byla z důvodu kompatibility ve výchozím nastavení vždy aktivní.

Změny by se ovšem dotkly skutečně jen výchozího nastavení. To by si uživatelé mohli upravit dle svých potřeb. Správce doplňků by umožňoval volbu plug-inů, které by oproti výchozímu nastavení měly být vždy aktivní nebo naopak vždy blokované. Navíc by šlo přijímat výjimky pro jednotlivé weby tak, aby na nich pro plug-iny platila jiná pravidla oproti generálnímu nastavení (výchozímu či vlastnímu).

Novou politiku podpory plug-inů měl na začátku prosince 2013 po mnoha měsících testování přinést Firefox 26. Nakonec v této verzi došlo jen k jejímu částečnému naplnění. Ve výchozím nastavení jsou od této verze spouštěny vždy až na přání uživatele pouze plug-iny související s technologií Java. Ty lze označit z hlediska bezpečnosti za dlouhodobě nejproblematičtější.

Zdálo se, že tím je téma podpory plug-inů prozatím uzavřené. Do popředí zájmu se dostal spíše kontroverzní soubor úprav uživatelského prostředí prohlížeče známý pod označením Australis. Mozilla však na zpřísňování politiky podpory plug-inů bez větší mediální pozornosti pracovala dále. Pro mnohé tak byly překvapením změny, které přinesl začátkem letošního června Firefox 30.

Údiv nastal částečně také proto, že změny neprošly tradičními vývojovými milníky, ale byly skokově zařazeny rovnou do ostré verze. Mozilla se nechala slyšet, že testování již bylo více než dost. Navíc ani tentokrát není Firefox k plug-inům tak přísný, jak počítal původní návrh nové politiky jejich podpory z počátku roku 2013.

Většina plug-inů se sice nyní ve výchozím nastavení spouští skutečně až na přání uživatele, ale zdaleka ne všechny. Kromě toho, že dlouhodobou výjimku má Flash Player, existuje ještě whitelist plug-inů, které zůstávají ve výchozím nastavení aktivní. Právě ten v dohledné době bude hrát nemalou roli.

Whitelist je otevřený. V praxi to znamená, že provozovatelé webů, které potřebují plug-in, mohou zažádat o jeho zařazení na whitelist. Dotyčný plug-in pak bude ve výchozím nastavení automaticky spouštěn. Jde však jen o dočasné opatření. Provozovatelé webů totiž musí předložit plán, jak ve střednědobém horizontu hodlají od užívání plug-inu upustit.

Mozilla ale stále nedává vývojářům „nůž na krk“ jako Google. Nestanovila termín, kdy by podporu plug-inů (nebo jejich části) z Firefoxu odstranila. Přinejhorším plug-iny budou ve výchozím nastavení neaktivní s tím, že spouštět se budou až na přání uživatele. To ovšem není žádné drama, protože uživatel již dnes může pro jednotlivé plug-iny měnit výchozí nastavení a pro různé weby přijímat výjimky.

Správce doplňků umožňuje u každého plug-inu přepínat mezi třemi režimy. Plug-in může být nehledě na výchozí nastavení vždy aktivní, vždy blokovaný nebo spouštěný výhradně až na přání uživatele. Oproti tomuto nastavení je možné pro konkrétní weby připravovat výjimky. Správce oprávnění webů však zůstává nepochopitelně před zraky řadových uživatelů skryt pod příkazem about:permissions.

Co když webové technologie zkrátka nestačí?

Mozilla je spíše pro postupnou evoluci. I nová politika podpory plug-inů má pouze přispět k zmírnění jejich negativ do doby, než je bude možné plnohodnotně a bezproblémově nahradit webovými technologiemi.

Zároveň tak ale rázněji vývojáře nabádá, aby přestali spoléhat na zastaralé Netscape Plug-in API (NPAPI) a hledali spíše řešení ve webových technologiích.

Kompromisně pak plug-iny mohou být nahrazeny rozšířeními, jejichž autorům Firefox tradičně dává velmi široké pole působnosti. Výhoda je v tom, že rozšíření pro Firefox jsou multiplatformní a prohlížeč se stará o jejich automatickou aktualizaci.

Podstatně ráznější Google však nechce čekat, než webové technologie dostatečně vyspějí. Sice do jejich rozvoje investuje značné finanční i lidské zdroje, ale zároveň zjevně nevěří, že by v dohledné době skutečně mohly plně nahradit proprietární technologie vyžadující plug-iny. Omezená funkčnost, nedokončená standardizace, fragmentovaná podpora či výkonnostní problémy jsou jen některé důvody.

Google proto nabízí vývojářům alternativy, které jsou minimálně z jeho pohledu dosažitelnější. První z nich je již zmíněné Pepper Plug-in API (PPAPI), které může zcela nahradit Netscape Plug-in API (NPAPI). Například Flash Player pro Google Chrome již z NPAPI na PPAPI přesedlal. Cílem však není pouhá modernizace současných plug-inů. Google věří, že Flash, Silverlight či Java mohou být již v dohledné době nahrazeny i tam, kde ještě nedozrály technologie webové.

Ke slovu se dostává Native Client (NaCl), který umožňuje ve webovém prostředí užívat nativní kód (C/C++), jímž lze rozšířit či doplnit běžný webový kód (HTML 5, JavaScript, CSS). Google chce jít příkladem, takže nastíněnou synergii nativního kódu a webových technologií hodlá již od letošního léta demonstrovat na komunikační službě Hangouts.

K realizaci videohovorů a volání přes Hangouts z webového prohlížeče již nebude potřeba vlastní plug-in služby. Google místo něj použije kombinaci technologií Native Client (nativní kód) a WebRTC (webový kód). Zatím však jen v prohlížeči Google Chrome. Právě s kompatibilitou se Native Client musí vypořádat. Další fází projektu je Portable Native Client (PNaCl).

widgety

Právě Portable Native Client (PNaCl) má webovým aplikacím s nativním kódem umožnit fungovat na tzv. otevřeném webu, přesněji napříč operačními systémy a hardwarovými architekturami. Stále však zůstává nezbytnou podpora technologie ze strany webového prohlížeče.

Google doufá, že díky otevřenému zdrojovému kódu bude časem přijata v co možná nejširší míře. O tom lze polemizovat, když třeba Mozilla vidí HTML 5 a JavaScript jako universální řešení, se kterým se již pustila do prohlížení PDF souborůchystá se s ním na Flash, ale to by bylo na ještě hodně dlouhé povídání.

Našli jste v článku chybu?
Lupa.cz: Patička e-mailu závazná jako vlastnoruční podpis?

Patička e-mailu závazná jako vlastnoruční podpis?

Vitalia.cz: dTest odhalil ten nejlepší kečup

dTest odhalil ten nejlepší kečup

Měšec.cz: TEST: Vyzkoušeli jsme pražské taxikáře

TEST: Vyzkoušeli jsme pražské taxikáře

Podnikatel.cz: Zorientujte se. Odkdy se vás týká EET?

Zorientujte se. Odkdy se vás týká EET?

DigiZone.cz: Nova opět stahuje „milionáře“

Nova opět stahuje „milionáře“

DigiZone.cz: Digi2GO: výborný základ, ale...

Digi2GO: výborný základ, ale...

Vitalia.cz: Tohle jsou nejlepší česká piva podle odborníků

Tohle jsou nejlepší česká piva podle odborníků

Vitalia.cz: Voda z Vltavy před a po úpravě na pitnou

Voda z Vltavy před a po úpravě na pitnou

Podnikatel.cz: Takhle se prodávají mražené potraviny

Takhle se prodávají mražené potraviny

Lupa.cz: Jak se prodává firma za miliardu?

Jak se prodává firma za miliardu?

Vitalia.cz: Když bílkoviny, tak jíme ty nekvalitní

Když bílkoviny, tak jíme ty nekvalitní

Root.cz: Bezpečný router Omnia právě dorazil

Bezpečný router Omnia právě dorazil

Vitalia.cz: Test dětských svačinek: Tyhle ne!

Test dětských svačinek: Tyhle ne!

DigiZone.cz: DVB-T2 ověřeno: seznam TV zveřejněn

DVB-T2 ověřeno: seznam TV zveřejněn

DigiZone.cz: O2 TV doplnilo kanály HBO v HD

O2 TV doplnilo kanály HBO v HD

DigiZone.cz: Mordparta: trochu podchlazený 87. revír

Mordparta: trochu podchlazený 87. revír

DigiZone.cz: UPC má v nabídce Discovery v HD

UPC má v nabídce Discovery v HD

Vitalia.cz: Muž, který miluje příliš. Ženám neimponuje

Muž, který miluje příliš. Ženám neimponuje

DigiZone.cz: Pure má tři nové přijímače DAB

Pure má tři nové přijímače DAB

Lupa.cz: Kde leží hardwarový pupek světa?

Kde leží hardwarový pupek světa?