DNSSEC Validátor nabírá nový dech

Určitě jste si všimli, že Laboratoře CZ.NIC již nějakou dobu vyvíjí DNSSEC Validátor pro prohlížeč Mozilla Firefox. Tento doplněk prostřednictvím rekurzivního DNS serveru kontroluje validitu DNSSEC záznamů a výsledek dává najevo zobrazením patřičné barevné ikonky v adresním řádku prohlížeče. Uživatel tak snadno zjistí, jak je na tom jeho rekurzivní DNS server a zobrazená webová stránka s DNSSEC zabezpečením.

Před několika týdny jsme vydali novou verzi doplňku 1.1.0 (a posléze další minoritní verze s drobnými opravami), která obsahuje jednu pro uživatele na první pohled neviditelnou, ale podstatnou změnu. DNSSEC Validátor byl dříve implementován jako rozšíření s binární komponentou, která zajišťovala vlastní komunikaci s DNS servery. Volání binárních funkcí se dělo přes rozhraní XPCOM, které ovšem s vývojem Firefoxu prochází nemalými změnami; udržovat doplněk funkční napříč různými verzemi prohlížeče bylo dosti pracné. Proto jsme se rozhodli udělat změnu a binární komponentu nahradit zásuvným modulem komunikujícím přes rozhraní NPAPI.

Jako framework pro tvorbu modulu jsme použili FireBreath. I když se jedná o poměrně nový projekt, jeho vývojáři na něm intenzivně pracují; čekání na opravu případně nalezeného nedostatku zpravidla nepřekročí několik dnů. Kromě Mozilla Firefoxu NPAPI rozhraní podporují i další prohlížeče (z těch známějších Google Chrome, Safari a Opera), což umožňuje provozovat binární modul DNSSEC Validátoru napříč těmito prohlížeči na dané platformě bez jakýchkoliv dodatečných úprav. FireBreath umožňuje také jednoduchou implementaci vláken, čehož jsme využili a tím odstranili kolize DNSSEC Validátoru s některými jinými současně nainstalovanými doplňky, např. Firebugem.

DNSSEC Validátor

Po úspěšném přechodu z XPCOM na NPAPI rozhraní jsme novou verzi DNSSEC Validátoru nahráli do AMO repozitáře a čekali na schválení editorem. Jaké bylo naše překvapení, když doplněk byl zamítnut právě kvůli změně na NPAPI. I když toto rozhraní přináší mnoho výhod a ulehčuje vývoj, AMO editoři měli nějaké interní, blíže nespecifikované, nařízení striktně takovéto doplňky odmítat. Poněkud zvláštní je, že tuto informaci se vývojář na webu Mozilly nikde nedozví a potom se může divit podobně jako my. Jelikož jsme v použití NPAPI nespatřovali žádné zásadní nedostatky, nechtěli jsme se proto s nastalou situací smířit a pokoušeli se alespoň pro nás vyžádat výjimku. Po několika „dobře mířených“ e-mailech zejména na vývojáře Firefoxu se nám podařilo odmítavý postoj editorů zvrátit a vyvolat změnu v akceptaci doplňků s NPAPI moduly do AMO repozitáře. Povedlo se nám tedy více, než o co jsme usilovali, a věříme, že tuto změnu ocení i všichni ostatní vývojáři, kteří se rozhodnou NPAPI ve svých doplňcích pro Firefox využít.

Poslední verzi DNSSEC Validátoru 1.1.2, která používá zmíněný NPAPI modul a která podporuje mj. i brzo očekávaný Firefox 4.0, můžete stahovat prostřednictvím domovské stránky projektu nebo přímo z AMO repozitáře. Web AMO nabízí také docela hezké statistiky, kde se zájemce může kromě celkového počtu stažení doplňku dozvědět např. i počet aktivních uživatelů.

Aby těch novinek nebylo málo, tak prozradím, že v současné době pracujeme na verzi DNSSEC Validátoru pro Internet Explorer, takže se i uživatelé tohoto zatím nejrozšířenějšího prohlížeče můžou těšit na barevnou ikonku indikující stav jejich DNSSEC zabezpečení.

Zbyněk Michl

Autor:

Komentáře (5)

  1. HonzaZemek říká:

    Připrvíte i další kompilace pro Chrome a Operu, ktere jak jste zminil umoznuji pouzit NPAPI?

  2. Zbynek Michl říká:

    HonzaZemek: Chromium/Chrome mame v planu, ale neni to ted na poradu dne. K Opere se v tuto chvili nedokazu vyjadrit vubec.

  3. Radomir Palovský říká:

    Můžete poradit, jak zařadit validator do chrome/chromia nebo opery? Repozitáře pro fierefox sice modul poskytnout, ale nedaří se mi ho zařadit do chrome.

  4. Ondrej Mikle říká:

    @Radomir Pavlovsky:

    Verze pro Chrome/Chromium je zatim v alfa verzi. Chrome neposkytuje API pro extension ke zjisteni k jake IP se Chrome pripojuje pro danou stranku.

    Tudiz zatim alfa verze sice umi zobrazit jestli je domena DNSSEC podepsana, ale neumi zjistit, jestli se prohlizec skutecne pripojuje na nekterou z IPadres, ktere jsou v podepsane odpovedi (Chrome a Validator muzou pouzivat ruzne DNS resolvery).

    Existuji ISP, kteri pro nektere servery (typicky vyhledavace) poslou podvrzenou IP, aby se klient dostal na jejich „verzi“ vyhledavace (kvuli reklamnim ziskum, atd.) Z tohoto duvodu je uzivateli fakt, ze domena je podepsana, neprilis uzitecny, pokud Validator nemuze overit IP adresu pouzitou prohlizecem.

    Psali jsme vyvojarum Chrome jestli by tam pozadovanou funkci mohli pridat, ale i v pripade kladne odpovedi to nejaky cas potrva.

Zanechte komentář

Všechny údaje jsou povinné. E-mail nebude zobrazen.