Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A Sign Tool egy parancssori eszköz, amely digitálisan aláírja a fájlokat, ellenőrzi a fájlokban lévő aláírásokat és az időbélyegeket.
Ez az eszköz automatikusan telepítve van a Visual Studióval. Az eszköz futtatásához használja a Visual Studio fejlesztői parancssorát vagy a Visual Studio Developer PowerShellt.
Feljegyzés
A Windows 10 SDK, a Windows 10 HLK, a Windows 10 WDK és a Windows 10 ADK build 20236-os és újabb verziói megkövetelik a kivonatoló algoritmus megadását. A SignTool sign
parancshoz meg kell adni a /fd
fájlemelő algoritmust és az /td
időbélyeg-kivonatoló algoritmus beállítását az aláírás és az időbélyegzés során. Hiba (1- es hibakód) jelenik meg, ha /fd
nincs megadva az aláírás során, és ha /td
nincs megadva az időbélyegzés során.
A parancssorba írja be a következőt:
Syntax
signtool [command] [options] [file_name | ...]
Paraméterek
Argumentum | Leírás |
---|---|
command |
A fájlon végrehajtandó műveletet meghatározó négy parancs (catdb vagy sign Timestamp parancs) Verify egyike. Az egyes parancsok leírását a következő táblázat tartalmazza. |
options |
Egy parancsot módosító lehetőség. A globális /q és /v a beállítások mellett minden parancs egyedi beállításkészletet is támogat. |
file_name |
Az aláírandó fájl elérési útja. |
A Sign Tool az alábbi parancsokat támogatja. Az egyes parancsok különböző beállításkészletekkel használhatók, amelyek a megfelelő szakaszokban vannak felsorolva.
Parancs | Leírás |
---|---|
catdb |
Katalógusfájlt ad hozzá egy katalógusadatbázishoz, vagy eltávolítja onnan. A katalógusadatbázisok a katalógusfájlok automatikus keresésére szolgálnak, és a GUID azonosítja azokat. A parancs által támogatott beállítások listáját a catdb catdb parancsbeállítások című témakörben találja. |
sign |
Fájlok digitális aláírása. A digitális aláírások védik a fájlokat a illetéktelen illetéktelen hozzáféréstől, és lehetővé teszik a felhasználók számára, hogy aláíró tanúsítvány alapján ellenőrizzék az aláírót. A parancs által támogatott beállítások listáját a sign Parancsbeállítások aláírása című témakörben találja. |
Timestamp |
Időbélyegek fájlok. A parancs által támogatott beállítások listáját a TimeStamp TimeStamp parancsbeállítások című témakörben találja. |
Verify |
Ellenőrzi a fájlok digitális aláírását annak meghatározásával, hogy az aláíró tanúsítványt megbízható hatóság adta-e ki, visszavonták-e az aláíró tanúsítványt, és opcionálisan azt is, hogy az aláíró tanúsítvány érvényes-e egy adott szabályzatra. A parancs által támogatott beállítások listáját a Verify Parancsbeállítások ellenőrzése című témakörben találja. |
Az alábbi beállítások az összes jeleszköz-parancsra vonatkoznak.
Globális beállítás | Leírás |
---|---|
/q | Nem jelenít meg kimenetet, ha a parancs sikeresen fut, és minimális kimenetet jelenít meg, ha a parancs sikertelen. |
/v | Részletes kimenetet jelenít meg, függetlenül attól, hogy a parancs sikeresen fut vagy sikertelen, és figyelmeztető üzeneteket jelenít meg. |
/Debug | Hibakeresési információkat jelenít meg. |
catdb parancsbeállítások
Az alábbi táblázat a parancshoz használható beállításokat sorolja fel catdb
.
Catdb lehetőség | Leírás |
---|---|
/d |
Az alapértelmezett katalógusadatbázis frissítését adja meg. Ha sem a lehetőséget, sem a /d /g beállítást nem használja, a Sign Tool frissíti a rendszerösszetevőt és az illesztőprogram-adatbázist. |
/g GUID |
Megadja, hogy a globálisan egyedi azonosító GUID-azonosítója által azonosított katalógusadatbázis frissül. |
/r |
Eltávolítja a megadott katalógusokat a katalógusadatbázisból. Ha ez a beállítás nincs megadva, a Sign Tool hozzáadja a megadott katalógusokat a katalógusadatbázishoz. |
/u |
Megadja, hogy a rendszer automatikusan létrehoz egy egyedi nevet a hozzáadott katalógusfájlokhoz. Szükség esetén a rendszer átnevezi a katalógusfájlokat, hogy megakadályozza a névütközéseket a meglévő katalógusfájlokkal. Ha ez a beállítás nincs megadva, a Sign Tool felülír minden olyan meglévő katalógust, amelynek a neve megegyezik a hozzáadott katalógus nevével. |
parancsbeállítások aláírása
Az alábbi táblázat a parancshoz használható beállításokat sorolja fel sign
.
Sign command option | Leírás |
---|---|
/a |
Automatikusan kiválasztja a legjobb aláíró tanúsítványt. A Sign Tool megkeresi az összes érvényes tanúsítványt, amely megfelel az összes megadott feltételnek, és a leghosszabb ideig érvényes tanúsítványt választja ki. Ha ez a beállítás nem jelenik meg, a Sign Tool várhatóan csak egy érvényes aláíró tanúsítványt talál. |
/ac fájl |
Hozzáad egy további tanúsítványt a fájlból az aláírási blokkhoz. |
/as |
Hozzáfűzi ezt az aláírást. Ha nincs elsődleges aláírás, akkor ez az aláírás lesz az elsődleges aláírás. |
/c CertTemplateName |
Megadja az aláíró tanúsítvány tanúsítványsablonjának nevét (egy Microsoft-bővítményt). |
/csp CSPName |
Megadja a titkos kulcs tárolóját tartalmazó titkosítási szolgáltatót (CSP). |
/d Desc |
Megadja az aláírt tartalom leírását. |
/du URL-cím |
Az aláírt tartalom kibontott leírásához egy egységes erőforrás-keresőt (URL-címet) ad meg. |
/f SignCertFile |
Megadja az aláíró tanúsítványt egy fájlban. Ha a fájl személyes adatcsere (PFX) formátumban van, és jelszóval van védve, a jelszó megadásához használja a /p lehetőséget. Ha a fájl nem tartalmaz titkos kulcsokat, használja az és /kc a /csp beállításokat a CSP és a titkos kulcs tárolójának nevének megadásához. |
/fd |
Megadja a fájlaadékok létrehozásához használandó fájlemésztő algoritmust. Jegyzet: Hiba jön létre, ha a /fd kapcsoló nincs megadva az aláírás során. |
/fd certHash |
A sztring certHash megadása alapértelmezés szerint az aláíró tanúsítványon használt algoritmusra érvényes. Jegyzet: Hiba jön létre, ha a /fd kapcsoló nincs megadva az aláírás során. |
/i Kiállító neve |
Az aláíró tanúsítvány kiállítójának nevét adja meg. Ez az érték a teljes kiállító nevének alsztringje lehet. |
/kc PrivKeyContainerName |
Megadja a titkos kulcs tárolójának nevét. |
/n SubjectName |
Megadja az aláíró tanúsítvány tulajdonosának nevét. Ez az érték a teljes tulajdonosnév alsztringje lehet. |
/nph |
Ha támogatott, letiltja a végrehajtható fájlok lapkivonatait. Az alapértelmezett értéket a SIGNTOOL_PAGE_HASHES környezeti változó és a wintrust.dll verzió határozza meg. Ez a beállítás figyelmen kívül lesz hagyva a nem PE-fájlok esetében. |
/p Jelszó |
Megadja a PFX-fájlok megnyitásakor használni kívánt jelszót. (PfX-fájl megadása a beállítással /f .) |
/p7 Ösvény |
Azt határozza meg, hogy minden megadott tartalomfájlhoz egy nyilvános kulcsú titkosítási szabvány (PKCS) #7 fájl legyen létrehozva. A PKCS #7 fájlok neve elérési út\filename.p7. |
/p7ce Érték |
Megadja az aláírt PKCS #7 tartalom beállításait. Állítsa az Érték értékét "Embedded" értékre az aláírt tartalom beágyazásához a PKCS #7 fájlba, vagy a "DetachedSignedData" értékre egy leválasztott PKCS #7 fájl aláírt adatrészének létrehozásához. Ha a /p7ce beállítás nincs használatban, az aláírt tartalom alapértelmezés szerint beágyazva lesz. |
/p7co <OID> |
Megadja az aláírt PKCS #7 tartalmat azonosító objektumazonosítót (OID). |
/ph |
Ha támogatott, lapkivonatokat hoz létre végrehajtható fájlokhoz. |
/r RootSubjectName |
Megadja annak a főtanúsítványnak a nevét, amelyhez az aláíró tanúsítványnak láncot kell fűznie. Ez az érték lehet a főtanúsítvány teljes tulajdonosnevének részszúrása. |
/s StoreName |
Megadja a tanúsítvány keresésekor megnyitni kívánt tárolót. Ha ez a beállítás nincs megadva, az My áruház megnyílik. |
/sha1 Fasíroz |
Az aláíró tanúsítvány SHA1 kivonatát adja meg. Az SHA1 kivonat általában akkor van megadva, ha több tanúsítvány megfelel a többi kapcsoló által megadott feltételeknek. |
/sm |
Megadja, hogy a rendszer a felhasználói tároló helyett egy géptárolót használjon. |
/t URL-cím |
Az időbélyeg-kiszolgáló URL-címét adja meg. Ha ez a beállítás (vagy /tr ) nincs megadva, az aláírt fájl nem lesz időbélyegzve. Figyelmeztetés jön létre, ha az időbélyegzés sikertelen. Ez a beállítás nem használható a /tr beállítással. |
/td Alg |
/tr Az RFC 3161 időbélyeg-kiszolgáló által használt kivonatoló algoritmus kérésére használható. Jegyzet: Hiba jön létre, ha /td nincs megadva az időbélyeg-meghatározás során. |
/tr URL-cím |
Az RFC 3161 időbélyeg-kiszolgáló URL-címét adja meg. Ha ez a beállítás (vagy /t ) nincs megadva, az aláírt fájl nem lesz időbélyegzve. Figyelmeztetés jön létre, ha az időbélyegzés sikertelen. Ez a beállítás nem használható a /t beállítással. |
/u Használat |
Megadja az aláíró tanúsítványban található kibővített kulcshasználatot (EKU). A használati érték OID vagy sztring alapján adható meg. Az alapértelmezett használat a "Kódaláírás" (1.3.6.1.5.5.7.3.3.3). |
/uw |
A "Windows rendszerösszetevő-ellenőrzés" használatát adja meg (1.3.6.1.4.1.311.10.3.6). |
Használati példákért lásd : A SignTool használata fájl aláírásához.
TimeStamp parancsbeállítások
Az alábbi táblázat a parancshoz használható beállításokat sorolja fel TimeStamp
.
TimeStamp beállítás | Leírás |
---|---|
/p7 |
Időbélyegek PKCS #7 fájlok. |
/t URL-cím |
Az időbélyeg-kiszolgáló URL-címét adja meg. A lepecsételt fájlnak korábban alá kell írnia. Vagy a /t /tr beállításra van szükség. |
/td Alg |
/tr Az RFC 3161 időbélyeg-kiszolgáló által használt kivonatoló algoritmus kérésére használható. Jegyzet: Hiba jön létre, ha /td nincs megadva az időbélyeg-meghatározás során. |
/tp index |
Az idő lepecsételi az aláírást az indexben. |
/tr URL-cím |
Az RFC 3161 időbélyeg-kiszolgáló URL-címét adja meg. A lepecsételt fájlnak korábban alá kell írnia. Vagy a /tr /t beállításra van szükség. |
Használati példa : Időbélyegek hozzáadása korábban aláírt fájlokhoz.
Parancsbeállítások ellenőrzése
Ellenőrzési lehetőség | Leírás |
---|---|
/a |
Megadja, hogy minden metódus használható a fájl ellenőrzéséhez. Először a katalógus-adatbázisok keresésével állapítja meg, hogy a fájl bejelentkezett-e egy katalógusba. Ha a fájl nincs bejelentkezve egyik katalógusban sem, a Sign Tool megpróbálja ellenőrizni a fájl beágyazott aláírását. Ez a beállítás ajánlott olyan fájlok ellenőrzésekor, amelyek esetleg nincsenek bejelentkezve egy katalógusban. Ilyen fájlok például a Windows-fájlok vagy -illesztőprogramok. |
/ad |
Megkeresi a katalógust az alapértelmezett katalógusadatbázis használatával. |
/ag CatDBGUID |
Megkeresi a CatDBGUID által azonosított katalógus-adatbázis katalógusát. |
/all |
Ellenőrzi a több aláírást tartalmazó fájl összes aláírását. |
/as |
Megkeresi a katalógust a rendszerösszetevő (illesztőprogram) katalógusadatbázisával. |
/c CatFile |
A katalógusfájlt név szerint adja meg. |
/d |
Megadja, hogy a Sign Toolnak ki kell nyomtatnia a leírást és a leírás URL-címét. |
/ds Index |
Ellenőrzi az aláírást egy megadott helyen. |
/hash (SHA1 |SHA256 ) |
Egy választható kivonatoló algoritmust ad meg, amelyet a katalógusban lévő fájlok keresésekor használhat. |
/kp |
Megadja, hogy az ellenőrzést a kernel módú illesztőprogram-aláírási szabályzattal kell elvégezni. |
/ms |
Több ellenőrzési szemantikát használ. Ez a WinVerifyTrust-hívások alapértelmezett viselkedése Windows 8 és újabb rendszereken. |
/o Verzió |
Ellenőrzi a fájlt az operációs rendszer verziója alapján. A verzió a következő űrlapot tartalmazza: PlatformID:VerMajor.VerMinor.BuildNumber. A PlatformID az enumerálási PlatformID tag mögöttes értékét jelöli. Fontos: A kapcsoló használata /o ajánlott. Ha /o nincs megadva, SignTool.exe váratlan eredményeket adhat vissza. Ha például nem tartalmazza a kapcsolót, előfordulhat, hogy egy /o régebbi operációs rendszeren helyesen érvényesítő rendszerkatalógusok nem érvényesítik helyesen egy újabb operációs rendszeren. |
/p7 |
PKCS #7 fájlokat ellenőriz. A PKCS #7 ellenőrzéshez nem használ meglévő szabályzatokat. A rendszer ellenőrzi az aláírást, és létrehoz egy láncot az aláíró tanúsítványhoz. |
/pa |
Megadja, hogy az alapértelmezett authenticode ellenőrzési szabályzatot kell használni. Ha a /pa beállítás nincs megadva, a Sign Tool a Windows illesztőprogram-ellenőrzési szabályzatát használja. Ez a beállítás nem használható a catdb beállításokkal. |
/pg PolicyGUID |
A GUID-alapú ellenőrzési szabályzatot adja meg. A PolicyGUID az ellenőrzési szabályzat ActionID azonosítójának felel meg. Ez a beállítás nem használható a catdb beállításokkal. |
/ph |
Megadja, hogy a Sign Toolnak ki kell nyomtatnia és ellenőriznie kell a lapkivonat értékeit. |
/r RootSubjectName |
Megadja annak a főtanúsítványnak a nevét, amelyhez az aláíró tanúsítványnak láncot kell fűznie. Ez az érték a főtanúsítvány teljes tulajdonosi nevének részszúrása lehet. |
/tw |
Megadja, hogy figyelmeztetést kell létrehozni, ha az aláírás nincs időbélyegzve. |
Használati példákért lásd: A SignTool használata a fájlalás ellenőrzéséhez.
Visszatérési érték
A Sign Tool a következő kilépési kódok egyikét adja vissza, amikor leáll.
Kilépési kód | Leírás |
---|---|
0 | A végrehajtás sikeres volt. |
0 | A végrehajtás sikertelen volt. |
2 | A végrehajtás figyelmeztetésekkel fejeződött be. |
Példák
Az alábbi parancs hozzáadja a katalógusfájl MyCatalogFileName.cat a rendszerösszetevőhöz és az illesztőprogram-adatbázishoz. A /u
beállítás egyedi nevet hoz létre, ha szükséges, hogy ne cserélje le a meglévő katalógusfájlt.MyCatalogFileName.cat
signtool catdb /v /u MyCatalogFileName.cat
Az alábbi parancs automatikusan aláír egy fájlt a legjobb tanúsítvány használatával.
signtool sign /a /fd SHA256 MyFile.exe
Az alábbi parancs digitálisan aláír egy fájlt egy jelszóval védett PFX-fájlban tárolt tanúsítvánnyal.
signtool sign /f MyCert.pfx /p MyPassword /fd SHA256 MyFile.exe
Az alábbi parancs digitálisan aláírja és időbélyegzi a fájlokat. A fájl aláírásához használt tanúsítvány egy PFX-fájlban van tárolva.
signtool sign /f MyCert.pfx /t http://timestamp.digicert.com /fd SHA256 MyFile.exe
Az alábbi parancs aláír egy fájlt egy tárolóban My
található tanúsítvány használatával, amelynek tulajdonosi My Company Certificate
neve van.
signtool sign /n "My Company Certificate" /fd SHA256 MyFile.exe
Az alábbi parancs aláír egy ActiveX-vezérlőt, és a böngészőben megjelenő információkat nyújt, amikor a felhasználó a vezérlő telepítésére kéri.
Signtool sign /f MyCert.pfx /d: "MyControl" /du http://www.example.com/MyControl/info.html /fd SHA256 MyControl.exe
Az alábbi parancs időbélyeggel bélyegzi a már digitálisan aláírt fájlt.
signtool timestamp /t http://timestamp.digicert.com MyFile.exe
Az alábbi parancs egy RFC 3161-alapú időbélyegző kiszolgálóval bélyegz meg egy fájlt.
signtool timestamp /tr http://timestamp.digicert.com /td SHA256 MyFile.exe
Az alábbi parancs ellenőrzi, hogy egy fájl aláírása megtörtént-e.
signtool verify MyFile.exe
Az alábbi parancs ellenőrzi a katalógusban esetleg aláírt rendszerfájlt.
signtool verify /a SystemFile.dll
Az alábbi parancs ellenőrzi a rendszerfájlt, amely egy nevű katalógusban van bejelentkezve MyCatalog.cat
.
signtool verify /c MyCatalog.cat SystemFile.dll