檔案簽章工具 (Signcode.exe)
檔案簽章工具可以使用 Authenticode 數位簽章以簽名可移植的執行檔 (PE) (.dll 或 .exe 檔)。您可以簽名組件或包含在多檔案組件中的個別檔案。在散發組件時,您應該簽名這個組件而不是個別的檔案。執行 Signcode.exe 而沒有指定任何選項時,會啟動一個協助簽名的精靈。
檔案簽章工具僅隨附於 .NET Framework SDK 1.0 版和 1.1 版中。在較新版本中,請改用簽署工具 (signtool.exe) 公用程式。
signcode [options] filename | assemblyname
參數
引數 | 描述 |
---|---|
filename |
要簽名的 PE 檔名稱。 |
assemblyname |
要簽名的組件名稱。這個檔案必須包含組件資訊清單 (Assembly Manifest)。 |
選項 | 描述 |
---|---|
-$ authority |
指定憑證的簽名授權單位,必須是 individual 或 commercial。依預設值,Signcode.exe 使用憑證的最高使用權限。 |
-a algorithm |
指定簽名的雜湊演算法,必須是 md5 (預設值) 或 sha1。 |
-c file |
指定含有編碼的軟體發行憑證的檔案。 |
-cn name |
指定憑證的通用名稱。 |
-i info |
指定位置來取得內容的詳細資訊 (通常是 URL)。 |
-j dllName |
指定 DLL 的名稱,其為簽名檔案傳回已驗證的屬性陣列。您可以重複 -j 選項來指定一個以上的 DLL。 |
-jp param |
指定要傳遞給前置的 DLL 的參數。-j dll1 -jp dll1Param。工具只允許每個 DLL 有一個參數。 |
-k keyname |
指定金鑰容器名稱。 |
-ky keytype |
指定金鑰類型,必須是 signature、exchange 或整數 (例如 4)。 |
-n name |
指定文字名稱,其表示要簽名的檔案內容。 |
-p provider |
指定系統上密碼編譯提供者 (Provider) 的名稱。 |
-r location |
指定登錄中憑證存放區的位置,必須是 currentuser (預設值) 或 localmachine。 |
-s store |
指定含有簽名憑證的憑證存放區。預設是 my 存放區。 |
-sha1 thumbprint |
指定 thumbprint,是包含在憑證存放區的簽章憑證的 sha1 雜湊。 |
-sp policy |
設定憑證存放區原則,必須是 spcStore (預設值) 或 chain。如果指定 chain,所有在驗證鏈結中的憑證 (包含自動簽名的憑證) 會加入至簽章中。如果指定 spcStore,信任且自動簽名的憑證不包含在鏈結的憑證中,這些憑證會加入至簽章。 |
-spc file |
指定含有軟體發行憑證的 SPC 檔案。 |
-t URL |
指示要由時間戳記伺服器在指定的 HTTP 位址加上時間戳記的檔案。 |
-tr number |
指定時間戳記直到成功之前所試用的最大次數;預設為 1。 |
-tw number |
指定每個時間戳記試用之間的延遲 (以秒數為單位)。預設為 0。 |
-v pvkFile |
指定含有私密金鑰的私密金鑰 (.pvk) 檔名。 |
-x |
將檔案加上時間戳記但不簽名。 |
-y type |
指定要使用的密碼編譯提供者類型。 密碼編譯提供者包含密碼編譯標準和演算法的實作。如需預設提供者類型的清單,請參閱 Platform SDK 中的<Microsoft 密碼編譯服務提供者>。 |
-? |
顯示工具的命令語法和選項。 |
備註
若要以軟體發行者憑證 (SPC) 檔案簽署,且您的私密金鑰是 PVK 檔案時,則必須指定 -spc 和 -v 選項。如果您的私密金鑰是在登錄金鑰容器中,就必須指定 -spc 和 -k 選項。如果想要以 SPC 檔案簽名檔案,必須使用憑證建立工具和軟體發行者憑證測試工具來建立 SPC 檔案。
範例
下列命令會使用 XYZ.spc
軟體發行者憑證和 XYZ
登錄金鑰容器中的私密金鑰簽名 XYZ.exe
。
signcode /spc XYZ.spc /k XYZ XYZ.exe
下列命令會使用 myCertificate.spc
中的憑證和 myKey.pvk
中的私密金鑰簽名組件 myAssembly
。
signcode /spc myCertificate.spc /v myKey.pvk myAssembly
請參閱
參考
.NET Framework 工具
憑證建立工具 (Makecert.exe)
軟體發行者憑證測試工具 (Cert2spc.exe)
SDK 命令提示字元