Nástroje kryptografie
Kryptografické nástroje poskytují nástroje příkazového řádku pro podepisování kódu, ověřování podpisu a další úlohy kryptografie.
Úvod do podepisování kódu
Softwarové odvětví musí uživatelům poskytnout prostředky k důvěryhodnosti kódu, včetně kódu publikovaného na internetu. Mnoho webových stránek obsahuje pouze statické informace, které je možné stáhnout s malým rizikem. Některé stránky ale obsahují ovládací prvky a aplikace, které se mají stáhnout a spustit na počítači uživatele. Tyto spustitelné soubory mohou být rizikové ke stažení a spuštění.
Zabalený software používá branding a důvěryhodné prodejní prodejny k zajištění integrity uživatelů, ale tyto záruky nejsou k dispozici při přenosu kódu na internetu. Kromě toho samotný internet nemůže poskytnout žádnou záruku ohledně identity tvůrce softwaru. Ani nemůže zaručit, že po vytvoření nebyl změněn žádný software stažený. Prohlížeče můžou vykazovat upozornění, které vysvětluje možné nebezpečí stahování dat jakéhokoli druhu, ale prohlížeče nemohou ověřit, že kód je to, co tvrdí. K tomu, aby internet byl spolehlivým prostředkem pro distribuci softwaru, musí být přístupnější.
Jedním z přístupů k zajištění záruk pravosti a integrity souborů je připojení digitálních podpisů k těmto souborům. Digitální podpis připojený k souboru pozitivně identifikuje distributora tohoto souboru a zajišťuje, aby se obsah souboru po vytvoření podpisu nezměnil.
Digitální podpisy je možné vytvářet a ověřovat pomocí kryptografických rozhraní API Microsoftu. Základní informace o kryptografii a funkcích CryptoAPI naleznete v tématu Základy kryptografie.
Podrobné informace o digitálních podpisech, certifikátecha úložištích certifikátůnajdete v následujících tématech:
- hodnot hash a digitálních podpisů
- digitálních certifikátů
- správa certifikátů pomocí úložišť certifikátů
- ověření důvěryhodnosti certifikátu
Nástroje CryptoAPI v současné době podporují technologii Microsoft Authenticode tím, že dodavatelům softwaru umožní podepsat následující typy souborů pro ověření authenticode.
Přípona názvu souboru | Obsah |
---|---|
.appx, .msix, .appxbundle, .msixbundle |
Zabalené aplikace pro Windows |
.cab |
Samostatné soubory používané k instalaci a nastavení aplikace. V souboru CAB je více souborů komprimováno do jednoho souboru. Běžně se nacházejí na discích distribuce softwaru Microsoftu. |
.kočka |
Soubory, které obsahují digitální kryptografické otisky několika souborů. Soubor .cat lze použít k zajištění integrity souborů, jejichž kryptografický otisk obsahuje. |
.dll |
Soubory, které obsahují spustitelné funkce. |
.exe |
Soubory, které obsahují spustitelné programy. |
.js .vbs .wsf |
Soubory prostředí Windows pro JScript nebo Microsoft Visual Basic Scripting Edition (VBScript). |
.msi .msp .Mst |
Soubory instalační služby systému Windows. |
.ocx |
Soubory, které obsahují ovládací prvky Microsoft ActiveX |
.ps1 |
Soubory, které obsahují skripty PowerShellu. |
.Stl |
Soubory, které obsahují seznam důvěryhodnosti certifikátu (CTL). |
.sys |
Soubory, které obsahují binární soubory ovladače |
Informace o digitálním podepisování najdete v následujících dokumentech:
- CCITT, doporučení X.509, Rámec Directory-Authentication, Poradní výbor, Mezinárodní telefonní a telegraf, Mezinárodní telekomunikační unie, Ženeva, 1989.
- Laboratoře RSA, PKCS #7: Standardnísyntaxe kryptografických zpráv . Verze 1.5, listopad 1993.
- Schneier, Bruce, Použití kryptografie, 2d ed. New York: John Wiley & Sons, 1996.
- https://www.rsa.com
Poznámka
Tyto prostředky nemusí být dostupné v některých jazycích a zemích nebo oblastech.
Microsoft Cryptography Tools
Nástroje pro publikování a podpisová knihovna DLL jsou nainstalovány v adresáři \Bin vaší instalace sady Microsoft SDK. Obsahují následující soubory.
Název souboru | Poznámky |
---|---|
Cert2SPC.exe | Vytvoří certifikát vydavatele softwaru (SPC) pouze pro účely testování. |
CertMgr.exe | Spravuje certifikáty, seznamy CTL a seznamy odvolaných certifikátů (CRL). |
MakeCat.exe | Vytvoří nepodepsaný soubor katalogu, který obsahuje hodnoty hash sady souborů spolu s přidruženými atributy každého souboru. |
MakeCert.exe | Vytvoří certifikát X.509 pouze pro účely testování. |
Pvk2pfx.exe | Převede soubor certifikátu vydavatele softwaru (.spc) nebo soubor privátního klíče (.pvk) do formátu souboru PFX (Personal Information Exchange). |
SetReg.exe | Nastaví klíče registru, které řídí ověření certifikátu. |
SignTool.exe | Podepíše soubor a časové razítko. Kromě toho zkontroluje podpis souboru. |