Почему я получаю сбой при попытке сделать .cer для тестирования? - PullRequest
25 голосов
/ 01 марта 2012

Я пытаюсь сделать сертификат для тестирования, и я использую этот сайт Как: создать свой собственный тестовый сертификат как учебное пособие о том, как, но когда наступит время чтобы ввести пароль после создания пароля, он говорит, что не удалось в командной строке, почему это так?

Что я сделал:

Сначала я открываю командную строку и набираю:

  cd C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin

Во-вторых, я набираю

  makecert -sv myPrivateKeyFile.pvk -n "TestCert" myCertFile.cer -b 01/01/2011 -e 01/01/2015 -r

Затем я создаю пароль, затем ввожу пароль в всплывающем окне sencond, а затем в командной строке появляется сообщение об ошибке

Когда я вхожу в это снова, всплывающее окно запрашивает, чтобы пароль впервые всплывал на этот раз, и я ввожу его, и оно говорит:

Ошибка: CryptCertStrToNameW не удалось => 0x80092023 (-2146885597)

    makecert -sv myPrivateKeyFile.pvk -n "TestCert" myCertFile.cer -b 01/01/2011 -e 01/01/2015 -r

Ответы [ 5 ]

64 голосов
/ 15 сентября 2013

Я решил проблему, запустив программу от имени администратора, но мне пришлось также изменить имя сертификата в стиле LDAP следующим образом (CN = ...):

makecert -sv myPrivateKeyFile.pvk -n "CN=TestCert" myCertFile.cer -b 01/01/2011 -e 01/01/2015 -r
4 голосов
/ 07 октября 2016

Для меня это было немного отладкой.Я начал с этого после прочтения руководства makecert :

makecert.exe /b 01/01/2014 /e 01/01/2114 /len 256 /m 1200 /n "CN=In-House-Software" /pe /r /sr localMachine Test_Cert.cer

Здесь есть два недостатка, вызывающих ошибки:

  1. /e и /m скорее всего не должны перекрываться;кажется очевидным, но они не документировали это и не создавали для него выразительного сообщения об ошибке.
  2. /len 256 было недопустимым значением - слишком мало.Это также не казалось слишком очевидным / задокументированным / выраженным в хорошем сообщении об ошибке.512 сработало.Я не удосужился найти минимальное значение, но по умолчанию используется 1024.

Я успешно использовал это:

makecert.exe /b 01/01/2014 /e 01/01/2114 /len 512 /pe /r /n "CN=In-House-Software" /sr localMachine Test_Cert.cer

4 голосов
/ 05 марта 2012

Причина, по которой я получил эту ошибку, заключается в том, что я не щелкнул правой кнопкой мыши на cmd, когда запустил его. Поэтому, когда у вас возникла эта проблема, вам нужно щелкнуть правой кнопкой мыши на cmd, а затем запустить от имени администратора и посмотреть, исправит ли это вашу проблему так же, как мою.

3 голосов
/ 10 февраля 2016

Я также получил эту ошибку, когда указал имя CA для самозаверяющего сертификата, другими словами, если вы укажете опции '-cy author' и '-r', тогда НЕ указывайте имя CA явно в имени через опцию -n.

0 голосов
/ 20 июля 2015

По какой-то причине я не смог запустить makecert из папок Dropbox. Поэтому попробуйте переместить его на твердый диск, например C: \, и повторите попытку.

...