Системные программы для работы с сертификатами, страница 6

           [/pfx pfx-файл [/po pfx-пароль] [/f]]

Если не указана опция pi, то пароль для расшифрования секретного ключа из pvk-файла будет запрашиваться в специальном диалоговом окне. Если не указана опция pfx, то начнется диалог с мастером экспорта сертификата, в котором и потребуется задать имя и месторасположение pfx-файла и пароль для шифрования экспортируемого секретного ключа (см. раздел 4), а опции po и f при этом игнорируются. Если опция pfx задана, но не указана опция po, то пароль для доступа к pfx-файлу будет совпадать с паролем для доступа к pvk-файлу, заданным опцией pi. Если указаны опции pfx и f, то в случае существования pfx-файла он будет перезаписан.

2. Создание списка доверенных сертификатов

Утилита MakeCTL предназначена для создания списков доверенных сертификатов (CTL). Созданный список кодируется и сохраняется в хранилище сертификатов или файле.

Входом утилиты MakeCTL является массив хранилищ сертификатов. Вычисляются хеш-значения всех сертификатов в этих хранилищах, которые и включаются в CTL.

Хранилища сертификатов могут быть заданы следующими способами:

·  сохраненным ранее файлом хранилища;

·  файлом в формате PKCS #7;

·  файлом с закодированным сертификатом;

·  именем системного хранилища.

Формат командной строки при вызове утилиты MakeCTL:

MakeCTL [/u subjectUsageID] [/s [/r registryLocation]]
     хранилище сертификатов 1 [/s [/r registryLocation]] 
     хранилище сертификатов 2 … [/s [/r registryLocation]]

     хранилище сертификатов N имя выходного файла.stl

Здесь subjectUsageID – идентификатор объекта для назначения создаваемого CTL (по умолчанию этот список состоит из сертификатов корневых удостоверяющих центров, предназначенных для подписания кода, что задается константой szOID_TRUSTED_CODESIGNING_CA_LIST, определенной в файле Wintrust.h как 1.3.6.1.4.1.311.2.2.1), registryLocation – указатель на размещение в реестре системного хранилища сертификатов (по умолчанию currentUser, т.е. используется раздел HKEY_CURRENT_USER, но возможно и задание localMachine для указания на раздел HKEY_LOCAL_MACHINE).

Опция /s указывает на то, что используется системное хранилище сертификатов. Может быть дополнительно указана опция /? для полученияинформации о синтаксисе командной строки и возможных опциях при вызове утилиты MakeCTL.