1. 程式人生 > >檔案簽名工具 (Signcode.exe)

檔案簽名工具 (Signcode.exe)

檔案簽名工具僅隨 .NET Framework SDK 1.0 和 1.1 版一起提供。在較新的 .NET Framework SDK 版本中,請改用簽名工具 (SignTool.exe) 實用工具。

複製
signcode [options] filename | assemblyname

引數

引數 說明

filename

要簽名的 PE 檔案的名稱。

assemblyname

要簽名的程式集的名稱。此檔案必須包含程式集清單。

選項 說明

-$ authority

指定證書的簽名許可權,必須為 individualcommercial

。預設情況下,Signcode.exe 使用證書的最高許可權。

-a algorithm

指定簽名的雜湊演算法,必須為 md5(預設值)或 sha1

-c file

指定包含編碼軟體釋出證書的檔案。

-cn name

指定證書的公共名。

-i info

指定獲得有關內容的更多資訊的位置(通常為 URL)。

-j dllName

指定一個 DLL 的名稱,該 DLL 返回用於建立檔案簽名的已驗證屬性陣列。通過重複 -j 選項可以指定多個 DLL。

-jp param

指定為前述 DLL 傳遞的引數。例如:-j dll1 -jp dll1Param

。此工具只允許每個 DLL 有一個引數。

-k keyname

指定金鑰容器名。

-ky keytype

指定金鑰型別,必須為 signatureexchange 或一個整數(如 4)。

-n name

指定表示要簽名的檔案內容的文字名稱。

-p 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