segunda-feira, 1 de junho de 2015

Certificado Digital: Opção de exportar chave privada desabilitada

Em alguns casos quando precisamos exportar o certificado digital já instalado em um computador/servidor para posterior instalação em outro dispositivo, podemos nos deparar com a situação da imagem abaixo:

O problema aqui é que ao tentarmos exportar o certificado digital, a opção de exportar a chave privada não está acessível.




Isso ocorre porque no momento em que o certificado foi importado, a opção "Mark this key as exportable. This will allow you to back up or transport your keys at a later time" não foi habilitada.

Essa opção basicamente permite que depois de instalado, o certificado possa ser exportado como forma de backup ou para ser instalado em outros dispositivos. A imagem abaixo mostra a opção habilitada, o que nesse caso permite a exportação futura desse certificado.



Blz! Mas afinal, como podemos fazer para exportar o certificado juntamente com sua chave privada, já que a opção de exportar chave privada não está disponível ???

Para isso vamos utilizar uma ferramenta chamada Jailbreak. Estou disponibilizando a ferramenta para download no link: https://mega.co.nz/#!lZty1LSL!8LEw5uV117inU-d8nXSFzHwOUgBnKA5TeTVsyi3ZN9w

Jailbreak é uma ferramenta para exportar certificados marcados como não-exportável na console de certificados no MMC do Windows. 

Bem, vamos colocar a mão na massa:

1) Depois de realizar o download, descompacte a pasta em um local de sua preferencia, em nosso exemplo extraímos na unidade C:\

2) No computador onde o certificado já está instalado, abra um prompt de comando como administrador, entre no diretório do Jailbreak e rode os comandos abaixo:


jbstore -l  
Obs.: Nesse comando utilizamos o parâmetro -l (é a letra e não o numero um)


O comando acima, irá listar todos os certificados já instalados no computador. Em nosso caso só existe um certificado instalado que é o MEUCERTIFICADO.

Não vou entrar em detalhes de certificados, mas quando instalamos um certificado no Windows, podemos instalar o mesmo como conta de usuário ou como conta de computador. Em nosso exemplo, estamos utilizando o modo conta de usuário, que é o padrão do Jailbreak.

Em cenários em que o certificado está instalado em modo conta de computador, devemos rodar o comando abaixo, que basicamente passa o parâmetro -s "SYSTEM" (o -s é de storage)

jbstore -l -s "SYSTEM" 


3) Depois de listar o nome do certificado, agora devemos rodar o comando abaixo para exportar o certificado já com sua chave privada incorporada.


jbstore -1 -n "Nome_do_seu_certificado"
Obs 1.: Diferente do comando de listar, aqui utilizamos o parâmetro -1 (numero um) 
Obs 2.: O nome do certificado deve ser exatamente como o o nome listado no comando anterior


Para certificados instalados na conta de computador, rodar o comando abaixo:
jbstore -1 -s "SYSTEM" -n "Nome_do_seu_certificado"

Depois de executado, o comando irá salvar automaticamente um novo certificado junto com a chave privada no diretório do Jailbreak com o nome de out.pfx como mostrado a imagem abaixo:

Além disso, por padrão o Jailbreak cria uma senha para futuras importações desse certificado. Essa senha padrão é "password"



Feito isso, é só você renomear o certificado out.pfx para um nome de sua preferencia e pronto!!! 
O certificado estará disponível para ser importado com chave privada em um novo dispositivo.

Abraços!

81 comentários:

  1. cara eu fiz download, da ferramenta mas nao consigo usar corretamente, pq no meu prompt de comando ele nao acha a pastinha tem algum macete, preciso exportar um certificado digital com uma chave privada! porem a opção de exportar com a chave nao está habilitada, a maquina é windows 8.1 (64 bits) se conseguir me ajudar agradeço muito. Obrigado

    ResponderExcluir
    Respostas
    1. Cara, não tem nenhum macete, basicamente é o que esta no tutorial.
      Um detalhe importante é quando você for extrair o conteúdo baixado, vamos supor que você descompacte o zip na unidade C:\, a estrutura de pastas ficara da seguinte maneira:

      C:\jailbreak-Window-3.5\jailbreak-3.5

      Assegure-se de estar dentro da estrutura de pastas correta para o seu prompt achar os arquivos do Jailbreak

      Excluir
    2. cara eu tentei fazer dos dois jeitos, ele ate acha o arquivo com o "tab" eu dei o comando "dir" e mostra tudo que ta la dentro, porem quando tento o comando "jbstore -l" ele nao diz que nao pode ser reconhecido como aquivo ...

      Excluir
    3. Você abriu o prompt em modo elevado (como administrador) ?

      Excluir
    4. infelizmente nao funciona, mesmo erro

      Excluir
    5. nao funcionou no meu win10...no sitediz que a versao 4.0 corrige, mas na verdade nao corrigem alguem poderia me ajudar? é o mesmoerro de jbstore2 no working

      Excluir
  2. Após digitar o comando jbstore -1 -s "SYSTEM" -n "Nome_do_seu_certificado" pede para digitar a senha e depois apresenta erro: Error sizing blob: -2146893813
    This is because jbstore2 is not working, please e-mail cclark or andreas.

    ResponderExcluir
    Respostas
    1. Consegiu resolver esse erro? estou com o mesmo problema

      Excluir
    2. Digitem somente o comando: jbstore -1 -n "Nome_do_Certificado", o opção jbstore -1 -s "SYSTEM" -n é somente para os certificados que são instalados em modo conta de computador.

      Excluir
    3. estou digitando somente o comando: jbstore -1 -n "Nome_do_Certificado" e mesmo assim me retorna o mesmo erro.

      Error sizing blob: -2146893813
      This is because jbstore2 is not working, please e-mail cclark or andreas.

      Excluir
  3. Após digitar o comando jbstore -1 -s "SYSTEM" -n "Nome_do_seu_certificado" pede para digitar a senha e depois apresenta erro: Error sizing blob: -2146893813
    This is because jbstore2 is not working, please e-mail cclark or andreas.

    ResponderExcluir
    Respostas
    1. conseguiu resover o error size log?

      Excluir
    2. Você terá que fazer o procedimento SEM o certificado conectado.

      Excluir
    3. O meu aparece o mesmo erro, e tentei fazer SEM o certificado e o erro permanece.

      Excluir
    4. pessoal, jbstore -1 -s "SYSTEM" -n -> "Nome_do_seu_certificado" essa parte aqui vai o nome que aparecen no campo do cmd do dos " Subject Name: " ai e o nome dps dos " : " ai vc copia e coloca no lugar de "Nome_do_seu_certificado" dentro das ( " " ) aspas

      Excluir
    5. Erro devido a incompatibilidade com Windows 10, operação funciona com win 7 ou inferiores

      Excluir
  4. Willians, sua dica me salvou aqui, estou com um note de um cliente e não sabia mais o que fazer, muito obrigado.

    ResponderExcluir
  5. Este comentário foi removido pelo autor.

    ResponderExcluir
  6. Uso um certificado A2 (token) e gostaria de usá-lo sem que esteja fisicamente conectado ao PC, com a ferramenta, consegui extrair, mas ao tentar utilizar este certificado, a aplicação alega não encontrar a chave privada, pode me ajudar?

    ResponderExcluir
  7. Parabéns pela dica amigo, deu tudo certo, como tinha formatado meu PC e não tinha feito o backup teria que tirar outro certificado digital, mas graças a sua dica ocorreu tudo certo! Salvou a pátria.

    Muito obrigado

    ResponderExcluir
  8. Este comentário foi removido pelo autor.

    ResponderExcluir
  9. Ola amigo fiz todo procedimento, o arquivo foi criado e a importação ocorre normalmente só que quando tento entrar no site da um erro não foi possível acessar a chave privada do certificado. Como posso resolver isto?
    O certificado que estou tentando recuperar a chave é o O certificado digital e-CPF A3 dos correios

    ResponderExcluir
  10. Willian, valeu cara! Me salvou aqui. Abraço!

    ResponderExcluir
  11. Meu amigo... que mão você me deu, só tenho a agradecer

    ResponderExcluir
  12. Olá, tenho um certificado A3 Certising inserido em um "SAMART CARD".
    Quero fazer uma cópia dele em um dispositivo "TOKEN".
    Como é possível fazer isso.
    Inicialmente, tentei usar esse aplicativo para exportar para o PC e depois teria que descobrir como inserir o certificado no Token.

    Utilizando o programa, aparentemente corria tudo bem até o último passo:

    ----------------------------------
    Found the following certificate:
    Subject Name: RONALDO XXXXXXXXXXXXXX
    Serial Number: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX

    Error sizing blob: -2146893813
    This is because jbstore2 is not working, please e-mail cclark or andreas.
    ----------------------------------

    Alguém pode me auxiliar?
    Que erro é esse?
    Esse procedimento exporta um certificado de um smartcard para um PC?
    Se tudo sim, como posso instalar depois esse certificado em um dispositivo TOKEN?

    Obrigado.

    ResponderExcluir
    Respostas
    1. Estou com o mesmo problema. Alguém tem uma solução?

      Excluir
  13. Tem um erro no comando: jbrestore -1 -n "Nome_do_seu_certificado" o correto é jbstore -1 -n "Nome_do_seu_certificado"

    ResponderExcluir
  14. Estou com o mesmo problema do Ronaldo, Obrigado pela força!!

    ResponderExcluir
  15. Consegui fazer os procedimentos até a ultima fase, porem nao foi criado o arquivo out.pfx , no prompt disse que criou mais na pasta nada..alguem pra me ajudar?

    ResponderExcluir
    Respostas
    1. O out.pfx será criado não necessariamente na pasta do .exe mas onde estava o prompt do MSDOS.

      Excluir
  16. Aqui pra mim foi de primeira. Parabéns pelo tuto.

    ResponderExcluir
  17. Olá...
    Estou no inicio do processo, mas não estou conseguindo executar um prompt de comando pra ele! diz que não é reconhecido como comando interno...
    O que devo fazer? já extrai no c:

    ResponderExcluir
    Respostas
    1. vc deve copiar os arquivos e colar nas pastas do windows, dentro de System32 e SysWOW64, depois faz o que ele descreve que irá funcionar.

      Excluir
  18. O antivirus esta alertando o jailbreak como um cavalo de troia.

    ResponderExcluir
  19. Obrigado cara, esse post me ajudou e ajudou um cliente!!!

    ResponderExcluir
  20. Este comentário foi removido pelo autor.

    ResponderExcluir
  21. Olá! estou tendo o seguinte problema:

    C:\WINDOWS\system32>jbstore -l
    Listing certificates in USER store

    Subject Name: ANANDA XYXYXYXYX XYXYXYXYX XYXYXYXYX 7309890159:2041698998900144
    Serial Number: xx xx xx xx

    Subject Name: ADE4xxx96-0xxx9-4xxx16-B760-DSxxx8A41A
    Serial Number: xx G8 G2 4c fa xx d6 2xx xx xx

    Logo em seguida fiz várias tentativas

    C:\WINDOWS\system32>jbstore -1 -n "ANANDA XYXYXYXY XYXYXYXYYX XYXYYX 734564530159:20414000545144"
    Error loading jb_dll.dll: 126

    C:\WINDOWS\system32>jbstore -1 -n "ANANDA-XYXYXYXY-XYXYX-XYXY-7676754530159:204145454500144"
    Error loading jb_dll.dll: 126

    C:\WINDOWS\system32>jbstore -1 -n "ANANDA_XYXYXYO_XYXYXYXYXY_XYXYXYXYXYO_7354545656559:2050144656"
    Error loading jb_dll.dll: 126

    O que está errado? Obrigada!!!

    ResponderExcluir
    Respostas
    1. isso acontece pq os antivirus estão apagando o arquivo dll.

      desabilite todos os antivirus

      Excluir
    2. podem ver lá dentro da pasta que o arquivo jb_dll.dll estará faltando.

      Excluir
  22. Agora que exportei, posso importar este arquivo para um token com um certificado vencido e começar a usar?

    ResponderExcluir
  23. Consegui mas ficou com a data de vencimento errada, alguém sabe como resolver ?

    ResponderExcluir
  24. Aparentemente funcionou, testar após formatação... obrigado!

    ResponderExcluir
  25. Boa noite senhores....

    Estou tendo um erro aos o comando jbstore -1 -n "NOME" conforme segue:

    Error sizing blog -2146892802

    Espero contar com a ajuda dos senhores

    Abraços

    ResponderExcluir
  26. Todo procedimeto funcionou, poré, quando eu uso o certificado, retorna o seguinte erro: Erro ao encontrar o certificado instalado. Alguem pode me ajudar???

    ResponderExcluir
  27. Boa tarde Willian,estou com problema, consegui fazer todo o processo até criar o arquivo na pasta,so que na hora de instalar o certificado ele continua pedindo senha, e a senha que eu coloco original do certificado nao passa,oq pode ser

    ResponderExcluir
    Respostas
    1. Estou com o mesmo problema! Ao tentar importar o certificado ele não aceita a senha...

      Excluir
  28. Olá, salve, salve, meus parabéns pelo post, andei um mil anos luz com ele...

    Consegui fazer todo o processo, e exportei ok, Só Estou com problemas na hora de gravar em um novo token, ele não reconhece que tem a chave privada. Eu fiz a inclusão de toda a cadeia do certificado.

    ResponderExcluir
  29. Cara que Deus te abençoe e que vc continue compartilhando do seu conhecimento. Ajudou muito.

    ResponderExcluir
  30. não estou conseguindo ,nem chega a abrir o certificado

    ResponderExcluir
  31. Este comentário foi removido pelo autor.

    ResponderExcluir
    Respostas
    1. BOA TARDE
      NO WINDOWS 2008 R 2 64 BITS
      FUNCIONOU PERFEITO
      CONSEGUI GERAR COPIA DE SGURANÇA
      E INSTALAR EM OUTRO COMPUTADOR
      MUITO OBRIGADO

      Excluir
  32. Para conhecimento:

    C:\jailbreak>JBSTORE /?
    JBStore2 - Command line export for MY System or User Store
    (c) 2011 iSEC Partners
    andreas [at] isecpartners.com; cclark [at] isecpartners.com
    -------------------------------------------------------------------
    Usage:
    jbstore
    Actions:
    -l List all certificates
    -a Dump all certificates
    -1 Dump one certificate
    Options:
    -s Cerificate store, "SYSTEM" or "USER" (default is "USER")
    -p Password (default is "password"
    -o Output file (default is "out.pfx"
    -n Subject name to use when dumping one cerificate
    Example:
    jbstore -l -s "USER"
    jbstore -d -o foo.pfx -p foo
    jbstore -1 n "iSEC User"

    ResponderExcluir
    Respostas
    1. no ultimo comando da isso e não gera o out.pfx

      -------------------------------------------------------------------
      Usage:
      jbstore
      Actions:
      -l List all certificates
      -a Dump all certificates
      -1 Dump one certificate
      Options:
      -s Cerificate store, "SYSTEM" or "USER" (default is "USER")
      -p Password (default is "password"
      -o Output file (default is "out.pfx"
      -n Subject name to use when dumping one cerificate
      Example:
      jbstore -l -s "USER"
      jbstore -d -o foo.pfx -p foo
      jbstore -1 n "iSEC User"

      Excluir
  33. Òtimo tutorial, se seguir a risca sai tudo certo parabéns!

    ResponderExcluir
  34. Cara eu entrei só para te dar os parabens, você salvou o dinheiro de um cliente.......

    ResponderExcluir
  35. Bom dia... consigo exportar normalmente, mas não instala nos navegadores. Alguém sabe o porque ?

    ResponderExcluir
  36. Olá amigos , funciona para o A3 ? Estou com este problema !

    ResponderExcluir
  37. Parabéns Willians, simples e muito eficiente obrigado por compartilhar!

    ResponderExcluir
  38. Funcionou mas não reconhece a chave privada , não aparece na lista de pessoal ao importar
    mas quando entra no mmc .ele esta lá

    ResponderExcluir
  39. Não funcionou.

    Erro versão 3.5:
    Error sizing blob: -2146893813
    This is because jbstore2 is not working, please e-mail cclark or andreas.

    Instalei então a Versão 4 e o erro foi esse:
    Error sizing blob: -2146893813
    This is because jbstore2 is not working, Are you using jailbreak32/64 to launch
    it?
    If there are still problems please contact iSEC Partners.

    Alguém conseguiu resolver isso?

    ResponderExcluir
  40. Não funcionou.

    Erro versão 3.5:
    Error sizing blob: -2146893813
    This is because jbstore2 is not working, please e-mail cclark or andreas.

    Instalei então a Versão 4 e o erro foi esse:
    Error sizing blob: -2146893813
    This is because jbstore2 is not working, Are you using jailbreak32/64 to launch
    it?
    If there are still problems please contact iSEC Partners.

    Alguém conseguiu resolver isso?

    ResponderExcluir
  41. Boa noite. Consegui exportar porém ele não anexa na aba "PESSOAL" ele só adiciona na aba "OUTRAS PESSOAS" alguma idéia para a resolução deste problema? Estou usando a versão 3.5

    ResponderExcluir
  42. Show... consegui sem problemas... muito obrigado

    ResponderExcluir
  43. Aqui, nao gera o arquivo apresenta sempre o mesmo erro:

    Error sizing blob: -2146893813
    This is because jbstore2 is not working, please e-mail cclark or andreas.

    ResponderExcluir
  44. Acabei de fazer o procedimento.
    ele cria o certificado, salvo ele como exportável,até aqui beleza.
    Porem quando vou procurar o certificado no IE, ele ainda aparece na aba OUTRAS PESSOAS.

    ResponderExcluir
  45. Bom dia,

    Eu consegui exportar corretamente, porém a senha do certificado não esta ficando com a senha que estou passando no argumento -p. E não informando a senha, também não consigo instalar com a senha default

    ResponderExcluir
  46. Pessoal CONSEGUI!! ESSE ERRO QUE ESTÁ DANDO É PORQUE ESSE SISTEMA JAILBREAK ESTA DESATUALIZANDO.

    FAÇAM O DOWNLOAD NESSI LINK - LA TMBM ENSINA A UTILIZAR.

    https://github.com/iSECPartners/jailbreak

    ResponderExcluir
    Respostas
    1. muito obrigado, deu certo aqui me salvou
      traduzi a pagina pelo Chrome mesmo, nem precisou usar o CMD

      Excluir
    2. Obg FÉRA! Deu certo aqui tbm com o Windows 10.

      Excluir
    3. como voce conseguiu? nao estou conseguindo

      Excluir
  47. Massa, Funcionou pra mim, valeu Willians.

    ResponderExcluir
  48. consegui de primeira resolveu meu problema, obrigado!

    ResponderExcluir
  49. Boa tarde.
    esta dando error loading jb_dll.dll:126
    qdo tento exportar
    o que poderia ser?

    ResponderExcluir
  50. Ele me retorna um erro que só funciona em windows 32, e o meu é um 7 x64

    ResponderExcluir