openssl x509: Se você está falando dos campos Assunto e / ou Emissor, a maneira mais simples e legível (IMO) é
openss x509 -in certpemfile -noout -text -nameopt multiline,show_type
ou se você quiser que somente o (s) campo (s) de nome mude -text
para -subject
e / ou -issuer
. Existem outros formatos, e se você quiser que os dados não-trivialmente mostrados usem, você pode precisar de opções adicionais; veja a página do manual no seu sistema ou no link . Se sua entrada for "DER" (binária), não o muito mais comum "PEM" (textual), adicione -inform der
.
Se você quer dizer extensões que podem conter campos (Distintos) Nome - eu conto SAN / IAN, NameConstraints, CRLDP, AIA / SIA, embora eu não veja como o DN seria útil nos últimos três, e existem certamente mais - isso não é suportado que eu conheço. Mas veja a seguir.
outro: openssl asn1parse
despeja os tipos exatos, comprimentos e valores principalmente de qualquer estrutura BER / DER ASN.1, incluindo um certificado. Para extensões de formulário X.509 (incluídas em OCTET STRING), você pode usar -strparse offset
para decodificar ASN.1 a estrutura aninhada. Identificar e selecionar os campos desejados é o seu trabalho e em geral pode ser difícil, mas já que os DNs e as extensões rotulam cada um dos seus elementos com um OID anterior (que o OpenSSL chama apenas OBJECT) e asn1parse
decodifica todos os OIDs conhecidos por openssl pode dar-lhe outros adicionais), você pode apenas procurar visualmente por countryName
, commonName
e similares. Nota no PEM: muitas funções openssl
criam ou aceitam e ignoram "comentários" em dados no formato PEM, mas asn1parse
NÃO. Ele lidará com as linhas dash-BEGIN e dash-END, mas quase tudo o mais tratará como parte dos dados, causando resultados incorretos. Verifique se seu arquivo de entrada (ou pipe ou qualquer outro) contém somente o um cert