Používání certifikátu pro podepsání kódu

Tato webová stránka poskytuje pokyny k používání SSL.com OV or EV certifikát pro podepisování kódu pomocí Microsoft SignTool a SSL.com SSL Manager.

Tyto pokyny předpokládají, že váš certifikát pro podepisování kódu byl nainstalován nebo že jej máte na hardwarovém tokenu. Pro cloudové podepisování kódu pomocí platformy eSigner viz Přehled stránku a to průvodce zápisem.

Pamatujte, že u hardwarových certifikátů pro podepisování kódu OV a EV je soukromý klíč existuje pouze na tokenu USB YubiKey FIPS USB který vám byl zaslán a že token musí být připojen do počítače, který se používá k podpisu aplikace. Uživatelé Windows s tokeny YubiKey FIPS by si také měli stáhnout a nainstalovat Minidriver YubiKey Smart Card před použitím jejich tokenu.

OV a Certifikáty pro podepisování kódu EV by neměly být do vašeho počítače instalovány ručně, což může způsobit problémy s konfigurací. Certifikáty dodávané na YubiKeys z SSL.com lze použít bez další instalace kromě instalace Minidriver YubiKey Smart Card a připojení tokenu k počítači. Certifikáty objednané prostřednictvím vzdálené osvědčení by měl být stažen a nainstalován na zařízení obsahující soukromý klíč (např. YubiKey FIPS nebo jiný podporovaný hardware), nikoli na úložiště certifikátů vašeho počítače.
Pokud plánujete podepisovat ovladače Windows 10 pomocí podpisového certifikátu EV kódu, budete muset registrovat se s Windows Hardware Developer Program.
Pokyny k používání vašeho podpisového certifikátu OV / IV nebo EV kódu v prostředí Java najdete v našem Průvodce podpisem kódu Java.

Podepisování spustitelného souboru pomocí SignTool

instalovat Windows SDK a SignTool

SignTool je součástí Windows 10 SDK. Po instalaci bude SignTool umístěn pod:

C: \ Program Files (x86) \ Windows Kits \ 10 \ bin \ \ x64 \ signtool.exe

Home PowerShell

Datum PowerShell příkazové okno hledáním "Powershell" v Home a kliknutím na desktopovou aplikaci.

Powershell je rozhraní příkazového řádku k základním službám Windows. Můžete jej použít k provedení SignTool a podepsání kódu.

Pro EV kód při podepisování připojte svůj USB token k počítači (pokud jste tak již neučinili). Pokud používáte eSigner, nainstalujte eSigner Cloud Key Adapter

Nezapomeňte, že soukromý klíč existuje pouze na tokenu USB, který vám byl odeslán, a to token musí být připojen do počítače, který se používá k podpisu aplikace. Tento krok by měl být přeskočen, pokud používáte certifikát podpisu OV kódu.

Podepsat Spouštěcí

Spustitelný soubor můžete podepsat zadáním následujícího příkazu v okně Powershell. Pokud používáte cloudové podepisování eSigner s signtool.exe, nezapomeňte nainstalovat eSigner CKA

. \ signtool.exe sign / fd sha256 / a "C: \ cesta \ k \ MyExecutable.exe"
  • Projekt /fd Možnost vybere algoritmus digestu, který se použije při podpisu. Windows 10 SDK, HLK, WDK a ADK builds 20236 a výše vyžadovat, aby byla tato možnost nastavena při podepisování. Pro zabezpečení se doporučuje SHA256 oproti SHA1.
  • Projekt /a volba přikáže SignTool, aby automaticky našel příslušný certifikát pro podepsání kódu pro váš spustitelný soubor.
  • Pokud používáte podpisový certifikát EV kódu, budete vyzváni k zadání PIN vašeho USB tokenu. Pokud potřebujete pomoc s nalezením svého PIN, podívejte se na to jak na to.Zadejte PIN
Poznámka: Pokud podepisujete soubory kódu, které budou zahrnuty v instalačním programu (například soubor Windows MSI), budete je muset před vytvořením instalačního programu podepsat a poté podepsat samotný instalační soubor.

Výběr podpisového certifikátu

Zadejte název subjektu

Pokud máte nainstalováno více než jeden kódovací tokeny nebo certifikáty USB, můžete zadejte certifikát chcete použít zahrnutím jeho Název subjektu přes /n volba.

Název subjektu certifikátu EV CS najdete pomocí nástroje pro správu certifikátů společnosti Microsoft certifikace. Otevřete nástroj z nabídky Start a vyhledejte svůj certifikát EV CS ve složce „Osobní“ v části „Certifikáty“, jak je znázorněno na obrázku níže. Název subjektu je pole „Vydáno komu“ v certmgr.

Na obrázku výše je název subjektu certifikátu example. Tuto hodnotu můžete v SignTool zadat pomocí následujícího příkazu.

. \ signtool.exe sign / fd sha256 / n "příklad" "C: \ cesta \ k \ MyExecutable.exe"

Určete hash SHA1

Pokud máte více certifikátů se stejným názvem subjektu, můžete jej k podpisu vybrat také pomocí hash SHA1 (nebo „otisku palce“) certifikátu. Nahradit THUMBPRINT v níže uvedeném příkazu se skutečným hash SHA1 váš certifikát. Tuto hodnotu zjistíte zobrazením podrobností o certifikátu v certmgr a hledáním Thumbprint pole (ujistěte se a před použitím ve svém příkazu odstraňte všechny mezery z miniatury).

. \ signtool.exe sign / fd sha256 / sha1 THUMBPRINT "C: \ cesta \ k \ MyExecutable.exe"

Použijte soubor PKCS # 12 / PFX

Pokud máte certifikát podpisu kódu a soukromý klíč v souboru PKCS # 12 (známém také jako soubor PFX nebo P12), můžete soubor a jeho heslo zadat na příkazovém řádku:

. \ signtool.exe sign / fd sha256 / f "C: \ cesta \ k \ MyCertificate.pfx" / p heslo "C: \ cesta \ k \ MyExecutable.exe"

Časové razítko

Timestamping your code will allow it to be trusted after your code signing certificate expires. Pokud chcete přidat a timestamp v podepsaném binárním souboru to můžete provést pomocí nástroje SignTool /tr možnost, po které by mělo následovat nastavení algoritmu digestu časového razítka pomocí /td. Příkaz v úryvku níže obsahuje časové razítko z SSL.comslužba časového razítka při podepisování spustitelného souboru.

. \ signtool.exe sign / fd sha256 / tr http://ts.ssl.com / td sha256 / a "C: \ cesta \ k \ MyExecutable.exe"
Poznámka: Ujistěte se, že používáte nástroj SignTool /tr možnost (uveďte adresu URL serveru časových razítek RFC 3161), ne /t (URL of time stamp server), což je nekompatibilní se serverem časových značek SSL.com.
Poznámka: Projekt /td volba musí následuj /tr volba. Pokud je před serverem časových razítek zadán algoritmus digestu časových značek, použije se výchozí algoritmus SHA-1. Windows 10 SDK, HLK, WDK a ADK builds 20236 a výše vyžadovat použití /tr při časovém razítku. Z důvodu zabezpečení se doporučuje SHA256 nad SHA1.
Poznámka: Ve výchozím nastavení SSL.com podporuje časová razítka z klíčů ECDSA.

Pokud narazíte na tuto chybu: The timestamp certificate does not meet a minimum public key length requirement, měli byste kontaktovat svého dodavatele softwaru, aby povolil časové značky z klíčů ECDSA.

Pokud váš dodavatel softwaru nemůže žádným způsobem umožnit použití normálního koncového bodu, můžete použít tento starší koncový bod http://ts.ssl.com/legacy získat časové razítko z jednotky RSA Timestamping Unit.

Další možnosti

Další důležité možnosti SignTool jsou:

  • /d: Přidejte popis podepsaného kódu. Například, /d "test code".
  • /du: Přidejte adresu URL s rozšířeným popisem podepsaného kódu. Například, /du https://your_website.tld/project/description.

Pomocí všech výše uvedených možností (ale vynechání /a, /sha1nebo /f protože zadáváme název subjektu certifikátu /n, náš příkazový řádek vypadá takto:

signtool.exe sign / n "příklad" / fd sha256 / tr http://ts.ssl.com / td sha256 / d "testovací kód" / du https: //your_website.tld/project/description "C: \ cesta \ to \ MyExecutable.exe "

Ověřte podpis

Pomocí tohoto příkazu ověřte svůj podepsaný kód (všimněte si, že /pa v příkazu musí být uvedena možnost):

. \ signtool.exe ověřit / pa "C: \ cesta \ k \ MyExecutable.exe"

Pokud byl váš soubor úspěšně podepsán, měli byste vidět výstup takto:

Soubor: C: \ path \ to \ MyExecutable.exe Index Algorithm Timestamp ==================================== ===== 0 sha256 RFC3161 Úspěšně ověřeno: C: \ cesta \ k \ MyExecutable.exe

Můžete také ověřit, zda byl soubor podepsán, kliknutím pravým tlačítkem na jeho ikonu a výběrem Nemovitosti z nabídky a poté vyberte Digitální podpisy záložka. Chcete-li zobrazit podrobnosti o podpisu, vyberte jej a klikněte na ikonu Detaily .

Digitální podpisy

Tady vidíme, že soubor obsahuje platný digitální podpis vytvořený společností SSL Corp 28. června 2020.

Podrobnosti o digitálním podpisu

Podepisování spustitelného souboru SSL Manager

Pokud dáváte přednost grafickému přístupu, který můžete použít SSL.comvlastní software, SSL Manager, podepsat své soubory. Mnoho zákazníků dává přednost použití SSL Manager protože nabízí další výhodu snadného přístupu ke všem vašim certifikátům v jednom sjednoceném rozhraní. Pokyny ke stažení a instalaci SSL Manager, viz naše průvodce instalací.

Chcete-li podepsat spustitelný soubor, začněte výběrem Podepisování kódu> Balíček kódu Podepsat a časové razítko od SSL Managermenu.

Balíček kódu Podepsat a časové razítko

Ve formuláři pro podepsání kódu můžete vybrat spustitelný soubor a certifikát pro podepsání kódu (buď ze souboru nebo z úložiště certifikátů) a jeden z dostupných serverů časových razítek. Až budete hotovi, klikněte na ikonu Podepsat tlačítko pro podepsání kódu. Pokud načítáte certifikát ze souboru PFX, budete muset zadat heslo souboru. Pokud používáte podpisový certifikát EV kódu, budete vyzváni k zadání PIN vašeho USB tokenu.

Kromě podpisu kódu SSL Manager nabízí mnoho výkonných funkcí. Další podrobnosti naleznete na SSL Managerdokumentace, zejména Nabídka podepisování kódu.

Děkujeme, že jste si vybrali SSL.com! Pokud máte nějaké dotazy, kontaktujte nás e-mailem na adrese Support@SSL.com, volání 1-877-SSL-SECURE, nebo jednoduše klikněte na odkaz chat v pravé dolní části této stránky.

Přihlaste se k odběru zpravodaje SSL.com

Nenechte si ujít nové články a aktualizace z SSL.com

Zůstaňte informováni a zabezpečte se

SSL.com je světovým lídrem v oblasti kybernetické bezpečnosti, PKI a digitální certifikáty. Přihlaste se k odběru nejnovějších zpráv z oboru, tipů a oznámení o produktech SSL.com.

Budeme rádi za vaši zpětnou vazbu

Vyplňte náš průzkum a sdělte nám svůj názor na váš nedávný nákup.