Программа подписывания Sign Tool (SignTool.exe)
Обновлен: Ноябрь 2007
Sign Tool — это программа командной строки, которая выполняет цифровую подпись файлов, проверяет подписи файлов или создает штампы времени для файлов.
![]() |
---|
В Microsoft Windows NT, Windows Me, Windows 98 и Windows 95 программа Sign Tool не поддерживается. |
signtool [command] [options] [file_name | ...]
Параметры
Аргумент |
Описание |
---|---|
command |
Один из параметров командной строки, указывающий операцию, которую требуется выполнить с файлом. |
options |
Один из дополнительных параметров, изменяющий параметр командной строки. |
file_name |
Путь к файлу для подписи. |
Программа Sign Tool поддерживает следующие команды:
Команда |
Описание |
---|---|
catdb |
Добавляет или удаляет файл каталога из базы данных каталогов. |
sign |
Выполняет цифровую подпись файлов. |
signwizard |
Запускает мастер подписи. Только один файл может быть задан в качестве параметра командной строки с именем файла. |
timestamp |
Устанавливает отметку времени для файлов. |
verify |
Проверяет цифровую подпись файлов. |
Следующие параметры доступны для команды catdb.
Дополнительные параметры Catdb |
Описание |
---|---|
/d |
Указывает, что база данных каталогов умолчанию обновлена. Если не указаны дополнительные параметры /d или /g, программа Sign Tool обновляет базу данных системных компонентов и драйверов. |
/g GUID |
Указывает, что база данных каталогов, заданная глобально уникальным идентификатором (globally unique identifier, GUID) обновлена. |
/r |
Удаляет указанный каталог из базы данных каталогов. Если эта опция не указана, программа Sign Tool добавит указанный каталог в базу данных каталогов. |
/u |
Указывает, что уникальное имя автоматически создается для добавляемых файлов каталогов. Если необходимо, файлы каталогов могут быть переименованы, чтобы предотвратить конфликты имен с существующими файлами каталогов. Если этот дополнительный параметр не указан, программа Sign Tool перезапишет любой существующий каталог, имеющий то же имя, что и добавляемый каталог. |
![]() |
---|
Базы данных каталогов используются для автоматической подстановки файлов каталогов. |
Следующие дополнительные параметры доступны для команды sign.
Дополнительный параметр Sign |
Описание |
---|---|
/a |
Автоматически выбирает лучший сертификат подписи. Если этот дополнительный параметр не указан, программа Sign Tool ожидает найти только один допустимый сертификат подписи. |
/c Имя шаблона сертификата |
Указывает имя шаблона сертификата (расширение Microsoft) для сертификата подписи. |
/csp Имя CSP |
Указывает поставщик служб шифрования (cryptographic service provider, CSP), содержащий контейнер защищенного ключа. |
/d Описание |
Указывает описание подписанного содержимого. |
/du URL |
Указывает универсальный код ресурса (URL) для расширенного описания подписанного содержимого. |
/f Файл сертификата подписи |
Задает сертификат подписи в файле. Если формат файла — Personal Information Exchange (PFX), и он защищен паролем, используйте дополнительный параметр /p для указания пароля. Если файл не содержит скрытых ключей, используйте дополнительные параметры /csp и /k для указания CSP и имени контейнера закрытого ключа, соответственно. |
/i Имя поставщика |
Указывает имя открываемого поставщика сертификата подписи. Это значение может быть подстрокой полного имени поставщика. |
/k Имя контейнера закрытых ключей |
Задает имя контейнера закрытых ключей. |
/n Имя субъекта |
Указывает имя субъекта сертификата подписи. Это значение может быть подстрокой полного имени субъекта. |
/p Пароль |
Указывает, какой пароль следует использовать при открытии файлов PFX. Файл PFX может быть указан с помощью дополнительного параметра /f. |
/r Имя корневого субъекта |
Указывает имя субъекта корневого сертификата, к которому должна быть установлена цепочка сертификата подписи. Это значение может быть подстрокой полного имени субъекта корневого сертификата. |
/s Имя хранилища |
Указывает хранилище для открытия при поиске сертификата. Если этот дополнительный параметр не указан, открывается хранилище "My store". |
/sha1 Хэш |
Указывает хэш SHA1 сертификата подписи. |
/sm |
Указывает, что вместо пользовательского хранилища используется компьютерное хранилище. |
/t URL |
Задает URL-адрес сервера отметок времени. Если этот дополнительный параметр не указан, файл с подписью не получит отметку времени. Если установка отметки времени не удалась, подается предупреждающее сообщение. |
/u Использование |
Задает расширенное использование ключа (enhanced key usage, EKU) которое должно быть представлено в сертификате подписи. Значение использования может быть задано идентификатором объекта (OID) или строкой. По умолчанию используется "Code Signing" (подписывание кода) (1.3.6.1.5.5.7.3.3). |
Следующий дополнительный параметр доступен для команды timestamp.
Дополнительный параметр Timestamp: |
Описание |
---|---|
/t URL |
Обязательно. Задает URL-адрес сервера отметок времени. Файл, получающий отметку времени, должен быть заранее подписан. |
Следующие дополнительные параметры доступны для команды verify.
Дополнительный параметр Sign |
Описание |
---|---|
/a |
Указывает, что все методы могут использоваться для проверки файла. Сначала выполняется поиск в базах данных каталогов для определения, подписан ли файл в каталоге. Если файл не подписан ни в одном каталоге, программа Sign Tool пытается проверить встроенную подпись файла. Этот дополнительный параметр рекомендуется при проверке файлов, которые могут быть подписаны или не подписаны в каталоге. Примеры файлов, которые могут быть подписаны или не подписаны — файлы и драйверы Windows. |
/ad |
Находит каталог с помощью базы данных каталогов по умолчанию. |
/as |
Находит каталог с помощью базы данных каталога системных компонентов (драйверов). |
/ag CatDBGUID |
Находит каталог в базе данных каталога, указанный параметром GUID. |
/c CatFile |
Задает файл каталога по имени. |
/o Версия |
Проверяет файл по версии операционной системы. Параметр версии формы: PlatformID:VerMajor.VerMinor.BuildNumber |
/pa |
Задает использование политики проверки подлинности по умолчанию. Если дополнительный параметр /pa не указан, программа Sign Tool использует политики проверки драйверов Windows. Этот дополнительный параметр не может использоваться совместно с параметрами catdb. |
/pg PolicyGUID |
Задает политику проверки параметром GUID. Параметр GUID соответствует параметру ActionID политики проверки. Этот дополнительный параметр не может использоваться совместно с параметрами catdb. |
/r RootSubjectName |
Указывает имя субъекта корневого сертификата, к которому должна быть установлена цепочка сертификата подписи. Это значение может быть подстрокой полного имени субъекта корневого сертификата. |
/tw |
Указывает, что подается предупреждение, если подпись не имеет отметки времени. |
Следующие дополнительные параметры доступны для всех команд программы Sign Tool.
Дополнительный параметр Global |
Описание |
---|---|
/q |
Никакого вывода в случае успешного выполнения и минимальный вывод в случае сбоя выполнения. |
/v |
Подробный вывод в случае успешного выполнения или сбоя выполнения, а также предупреждающие сообщения. |
Заметки
Программа Sign Tool требует, чтобы распространяемый пакет CAPICOM 2.0 был установлен на местный компьютер. Распространяемый пакет CAPICOM 2.0 доступен по адресу https://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdkredist.htm.
Команда verify программы Sign Tool определяет, был ли сертификат подписи выдан доверенным центром авторизации, был ли сертификат подписи отозван, и, по выбору действителен ли сертификат подписи для конкретной политики.
Программа Sign Tool возвращает код выхода "ноль" в случае успешного выполнения, "один" в случае сбоя выполнения и "два" в случае выполнения с предупреждением.
Примеры
Команда показывает, как подписать файл автоматически с помощью лучшего сертификата.
signtool sign /a MyFile.exe