Сертификаты с инструментами SDK (makecert, pvk2pfx)
Мне нужно сделать два сертификата: CA sert и Server cert.
Я использую эту команду.
makecert -r -pe -n "CN=CACert" -a sha1 -sky signature -cy authority -sv CACert.pvk CACert.cer
certutil -addstore Root TGCA.cer
makecert -pe -n "CN=ServerCert" -a sha1 -sky exchange -ic CACert.cer -iv CACert.pvk -sv ServerCert.pvk ServerCert.cer
pvk2pfx -pvk ServerCert.pvk -spc ServerCert.cer -pfx ServerCert.pfx
Затем я импортирую ServerCert.pfx в хранилище сертификатов.
Почему они не содержат закрытый ключ в хранилище?
2 ответа
Почему бы вам не попытаться сгенерировать файл pfx, передав в качестве аргумента пароль закрытого ключа?
Попробуй это так
pvk2pfx -pvk ServerCert.pvk -spc ServerCert.cer -pfx ServerCert.pfx -pi password
Как сказано в документации:
/ pi pvkpassword Указывает пароль для файла.pvk.
Источник: http://msdn.microsoft.com/en-us/library/windows/hardware/ff550672(v=vs.85).aspx
Итак, после долгого танца с бубном я нашел решение. Проблема была в UI. Моей целью было импортировать pfx в хранилище локальной машины. Это невозможно сделать, запустив файл pxf из папки.
Когда pxf импортирует без передачи pvk, внутренний закрытый ключ не импортируется. Пароль не запрашивается при импорте в локальное хранилище машины по MMC.
Что я сделал:
- Импортируйте pxf-файл из проводника в CurrentUser "Мой" (введите пароль pvk).
- Экспорт сертификата из хранилища в новый pxf с паролем.
- Импортируйте новый pxf в локальное хранилище "My" с MMC.
Я не знаю других способов.