De onde o Chrome obtém sua lista de autoridades de certificação?

21

No Fedora, estou falando da lista exibida quando você acessa a guia Configurações> Gerenciar certificados> Autoridades.

Eu li que ele deveria estar no banco de dados compartilhado do NSS, mas este comando retorna uma lista vazia:

[laurent@localhost nssdb]$ certutil -d sql:$HOME/.pki/nssdb -L
Laurent Kubaski
fonte

Respostas:

13

Esses são NSScertificados internos. Eles são fornecidos por meio de uma biblioteca compartilhada: /usr/lib/libnssckbi.so(o caminho pode ser diferente no seu sistema). É daí que o Chrome os obtém.
Você pode listá-los certutilassim:

Faça um link para a biblioteca em ~/.pki/nssdb:

ln -s /usr/lib/libnssckbi.so ~/.pki/nssdb

Então corra:

certutil -L -d sql:$HOME/.pki/nssdb/ -h 'Builtin Object Token'

Saída:

Certificate Nickname                                         Trust Attributes
                                                             SSL,S/MIME,JAR/XPI

Builtin Object Token:GTE CyberTrust Global Root              C,C,C
Builtin Object Token:Thawte Server CA                        C,,C 
Builtin Object Token:Thawte Premium Server CA                C,,C 
Builtin Object Token:Equifax Secure CA                       C,C,C
Builtin Object Token:Digital Signature Trust Co. Global CA 1 C,C,C
Builtin Object Token:Digital Signature Trust Co. Global CA 3 C,C,C
Builtin Object Token:Verisign Class 3 Public Primary Certification Authority C,C,C
Builtin Object Token:Verisign Class 1 Public Primary Certification Authority - G2 ,C,  
Builtin Object Token:Verisign Class 2 Public Primary Certification Authority - G2 ,C,C 
Builtin Object Token:Verisign Class 3 Public Primary Certification Authority - G2 C,C,C
Builtin Object Token:GlobalSign Root CA                      C,C,C
Builtin Object Token:GlobalSign Root CA - R2                 C,C,C
Builtin Object Token:ValiCert Class 1 VA                     C,C,C
Builtin Object Token:ValiCert Class 2 VA                     C,C,C
Builtin Object Token:RSA Root Certificate 1                  C,C,C
..................................................................
..................................................................
don_crissti
fonte
9

Obtém-os do sistema operacional subjacente. Você pode ler sobre isso aqui:

trecho do link acima

O Google Chrome tenta usar o armazenamento de certificados raiz do sistema operacional subjacente para determinar se um certificado SSL apresentado por um site é realmente confiável, com algumas exceções.

Essa página continua descrevendo quem entrar em contato se você for um provedor CA raiz para os vários sistemas operacionais etc.

Referências

slm
fonte
3

Se você está perguntando porque realmente precisa usar a lista de CAs raiz, aqui estão elas (infelizmente nomeadas apenas pelo índice):

Arquivos de certificado individuais

https://github.com/coolaj86/node-ssl-root-cas/tree/master/pems

Grande arquivo de certificados da Mozilla

http://mxr.mozilla.org/mozilla/source/security/nss/lib/ckfw/builtins/certdata.txt?raw=1

Scripts para analisar o grande arquivo de certificados

https://github.com/coolaj86/node-ssl-root-cas

https://github.com/bagder/curl/blob/master/lib/mk-ca-bundle.pl

http://curl.haxx.se/docs/mk-ca-bundle.html

Informações gerais sobre como extrair o arquivo de certificados do Mozilla

http://curl.haxx.se/docs/caextract.html

CoolAJ86
fonte