Kdy musíte pro podpis použít EV certifikát?

Certifikáty s rozšířeným ověřením nejsou ve světě webových serverů nic nového. Nedávno se však začaly prosazovat i EV certifikáty Code Signing pro podpis kódu. Jejich hlavním významem je ochrana privátního klíče (ochrana před zneužitím certifikátu) a dokonalá důvěryhodnost podepsané aplikace ve Windows

Kromě bezpečnosti použití EV CS certifikátu je velkou výhodou a argumentem ke koupi SmartScreen filter ve Windows a jím vytvořené problémy aplikací s důvěryhodností. Každá aplikace, kterou podepsanou zveřejníte, má v SmartScreen nějakou reputaci. Ta se časem vytvoří a Microsoft ji eviduje. Pokud je kladná, tak systém Windows aplikaci při otevírání neblokuje (čtete správně – SmartScreen nyní není jen v Internet Exploreru, ale je integrován ve Windows). Pokud je aplikace málo známá nebo málo populární, tak Windows uživatele odrazuje od jejího otevření.

Windows blokuje nepodepsanou aplikaci
SmartScreen blokuje nepodepsanou aplikaci

Pokud si Code Signing certifikát prodloužíte, tak pro SmartScreen je aplikace podepsaná novým certifikátem a reputace začíná opět od nuly. To způsobuje problémy uživatelů při stahování aplikace a její nízkou důvěryhodnost. Je prakticky jedno, zda-li je aplikace nepodepsaná nebo podepsaná nově vystaveným Code Signing certifikátem. Uživatel je odrazen v obou případech. EV certifikát tento problém řeší, protože má ve SmartScreen filteru důvěryhodnost vždy zaručenou.

Výše zmíněné důvody jsou argumenty ke koupi, ale pokud necítíte touhu po těchto výhodách, EV certifikát nepotřebujete. Situace se ovšem změnila díky požadavkům Microsoftu na podepisování software EV certifikáty.

Ve kterých případech Microsoft vyžaduje EV podpis?

Microsoft vyžaduje EV Code Signing certifikát pro fungování účtu v portálu Windows Dev Center (Microsoft Hardware Developer Portal na sysdev.microsoft.com). Code Signing certifikát s rozšířeným ověřením je také nutný při podepisování kernel mode driverů pro Windows 10. Pokud byste při podepisování použili běžný Code Signing certifikát, tak vám Microsoft nedovolí soubory na portál nahrát a publikovat.

Potvrzení informací a těchto požadavků najdete přímo u zdroje na webu Microsoft. Zde tvrdí, že:

In Windows 10 for desktop editions, all kernel-mode drivers must be signed by the Hardware Dev Center Dashboard and the Hardware Dev Center Dashboard requires an EV certificate. For more info about these changes, see Code Signing FAQ.

As of October 31, 2015, your Sysdev dashboard account must have at least one EV certificate associated with it to submit binaries for attestation signing or to submit binaries for HLK certification.

Na stránce v tabulce uvedené požadavky jsou zastaralé a po uvedení Windows 10 je požadován podpis pouze EV Code Signing certifikátem, což potvrzuje i citace výše.

Kde EV certifikát pro podpis aplikací zakoupit?

Certifikát s rozšířeným EV ověřením pro podpis kódu můžete v Česku zakoupit exkluzivně u Platinum Partnera Symantecu SSLmarket.cz. EV Code Signing certifikát vydává největší CA na světě Symantec a jeho dodání zákazníkovi trvá obvykle kolem 10 dnů. Po vyřízení objednávky u SSLmarketu vám Symantec zavolá a po tomto potvrzení certifikát vydá. Prostřednictvím kurýra obdržíte token, na který pak certifikát nahrajete a budete při podpisu používat.

HW token s EV Code Signing certifikátem
HW token s EV Code Signing certifikátem

Token můžete bez problému používat s Windows SDK a signtool.exe; stačí se odkázat na dotyčné úložiště certifikátů. Token má svůj program SafeNet Authentication Client, pomocí kterého spravujete certifikát, můžete se podívat na jeho informace a hlavně do něj zadáváte heslo, které je pro podpis potřeba. Ani při krádeži tokenu není možné bez znalosti hesla certifikát zneužít.

Code Signing EV certifikát a jeho podpis přináší vyšší bezpečnost použití, důvěryhodnější podpis a majitele certifikátu chrání před krádeží a zneužitím certifikátu. Navíc je vyžadován pro podepisování kernel mode driverů pro Windows 10 a pro Sysdev účet.

Kdy musíte pro podpis použít EV certifikát?