Amiguinhos,
Eis o batch com modificações:
@cls
@del RDS*.cer RDS*.pvk RDS*.pfx
@certutil -delstore Root RDS-CARoot
@rem certmgr.exe
@echo.
@echo Criando certificado raiz...
@makecert.exe ^
-n "CN=RDS-CARoot" ^
-r ^
-pe ^
-a sha512 ^
-len 4096 ^
-sky Signature ^
-cy authority ^
-sv RDS-CARoot.pvk ^
RDS-CARoot.cer
@echo.
@echo Instalando certificado raiz...
@certutil.exe -user -addstore Root RDS-CARoot.cer
@rem RDS-CARoot.cer / Root or TrustedPeople
@echo.
@echo Previsualiza se certificado raiz foi bem Instalando...
@RDS-CARoot.cer
@echo.
@echo Criando certificado terminal baseado no certificado raiz...
@makecert.exe ^
-n "CN=5volution.com.br,O=Nome Empresarial,OU=Desenvolvimento,L=Soa Paulo,S=SP,C=BR" ^
-iv RDS-CARoot.pvk ^
-ic RDS-CARoot.cer ^
-pe ^
-h 0 ^
-a sha512 ^
-len 4096 ^
-b 07/05/2015 ^
-e 07/05/2039 ^
-sky Exchange ^
-eku 1.3.6.1.5.5.7.3.3,1.3.6.1.4.1.311.10.3.13 ^
-sv RDS-SERVER.pvk RDS-SERVER.cer
@dir rds*.* /od
@pause
@echo.
@echo Criando certificado PFX...
@pvk2pfx.exe ^
-pvk RDS-SERVER.pvk ^
-spc RDS-SERVER.cer ^
-pfx RDS-SERVER.pfx ^
-po 123123
@dir rds*.* /od
@rem echo Assinando aplicativo diretamente com PFX
@signtool.exe sign /v /f RDS-SERVER.pfx /p 123123 /du "http://meusite.com.br" /d "Descrever o aplicativo" /t http://timestamp.digicert.com MyExecutable.exe
Fiz modificações no comando após a mensagem
Criando certificado terminal baseado no certificado raiz acrescentando
-h 0 que torna o certificado de terminal como sendo finalizado e não permitindo ser também um CA certificador.
Modifiquei o parâmetro
-sku pois o final da numeração terminava com 1 o que não permitia assinar executáveis quando o correto é 3 e acrescentei mais alguma numeração para melhorar as caracterÃsticas do certificado.
Como visto na imagem na posição 1, após serem pedidas a senha umas tres vezes o certificado raiz será instalado pela ferramenta
CertUtil e o certificado sera apresentado(posição 2).
Após dar OK(não precisa instalar) execute o
certmgr e veja se
RDS-CARoot aparece no repositório de Autoridades raiz Confiáveis.
Na posição 4 está o código já modificado e testado. O código renovado está logo ai acima e com a chamada para assinatura ativada e configurada para ser processada com êxito.
Basta troca o nome
MyExecutable.exe pelo nome do executável que precisa ser assinado e alterar as strings dos parâmetros
/du e
/dNa linha 31 do batch modifique
-n "CN=5volution.com.br,O=Nome Empresarial,OU=Desenvolvimento,L=Soa Paulo,S=SP,C=BR" com sua informações pessoais.