Eu queria listar os certificados armazenados em um keystore PKCS12.
O keystore tem a extensão .pfx
certificate
ssl-certificate
keystore
pkcs#12
David García González
fonte
fonte
.p12
)? Eu recebojava.io.IOException: Invalid keystore format
Você também pode usar
openssl
para realizar a mesma coisa:fonte
Você pode listar as entradas (detalhes de certificados) com o keytool e até mesmo não precisa mencionar o tipo de loja.
fonte
O que está faltando na pergunta e em todas as respostas é que você pode precisar da senha para ler dados públicos do armazenamento de chaves PKCS # 12 (.pfx). Se você precisa de uma senha longa ou não, depende de como o arquivo PKCS # 12 foi criado. Você pode verificar a estrutura ASN1 do arquivo (executando-o por meio de um analisador ASN1, openssl ou certutil podem fazer isso também), se os dados PKCS # 7 (por exemplo, prefixo OID 1.2.840.113549.1.7) estiverem listados como 'criptografados' ou com uma cipher-spec ou se a localização dos dados na árvore asn1 estiver abaixo de um nó criptografado, você não será capaz de lê-lo sem o conhecimento da senha. Isso significa que seu comando 'openssl pkcs12' falhará com erros (a saída depende da versão). Para aqueles que estão se perguntando por que você pode estar interessado no certificado de um PKCS # 12 sem conhecer a senha. Imagine que você tem muitos keystores e muitas frases de fase e é muito ruim em mantê-los organizados e não quer testar todas as combinações, o certificado dentro do arquivo pode ajudá-lo a descobrir qual é a senha. Ou você está desenvolvendo um software para migrar / renovar um armazenamento de chaves e precisa decidir com antecedência qual procedimento iniciar com base no certificado contido, sem interação do usuário. Portanto, os últimos exemplos funcionam sem senha, dependendo da estrutura do PKCS # 12. Ou você está desenvolvendo um software para migrar / renovar um armazenamento de chaves e precisa decidir com antecedência qual procedimento iniciar com base no certificado contido, sem interação do usuário. Portanto, os últimos exemplos funcionam sem senha, dependendo da estrutura do PKCS # 12. Ou você está desenvolvendo um software para migrar / renovar um armazenamento de chaves e precisa decidir com antecedência qual procedimento iniciar com base no certificado contido, sem interação do usuário. Portanto, os últimos exemplos funcionam sem senha, dependendo da estrutura do PKCS # 12.
Só queria acrescentar isso, porque eu mesmo não encontrei uma resposta e gastei muito tempo para descobrir.
fonte
fonte