certutil: função falhada: biblioteca de segurança: banco de dados inválido

7

quando estou usando certutil , ele retorna este erro: certutil: function failed: security library: bad database.

por exemplo. Eu não posso listar certs ou chaves

Como posso corrigir isso?

    
por Zim3r 06.08.2012 / 10:50

5 respostas

16

Se for um novo sistema, seu banco de dados de certificados pode não ser inicializado. Para corrigir isso, execute:

mkdir -p $HOME/.pki/nssdb
certutil -d $HOME/.pki/nssdb -N
    
por 15.10.2012 / 22:26
2

Se você deseja exibir certificações de uma pasta específica (por exemplo, a pasta que armazena o arquivo cert8.db do Firefox), é necessário especificar a pasta com "-d":

nss-certutil -d /Users/myuser/Library/Application\ Support/Firefox/Profiles/jii912uh.default -L

Caso contrário, nss-certutil pode tentar ler arquivos * .db da pasta ~/.netscape , ou talvez $HOME/.pki/nssdb como mencionado anteriormente pelo usuário.

    
por 28.12.2012 / 12:26
2

No caso de o banco de dados já ter sido inicializado, mas ainda estar corrompido, ele deve ser reconstruído:

$ mv ~/.pki/nssdb ~/.pki/nssdb.corrupted
$ mkdir ~/.pki/nssdb
$ chmod 700 ~/.pki/nssdb
$ certutil -d sql:$HOME/.pki/nssdb -N

Verifique se está funcionando bem

$ certutil -d sql:$HOME/.pki/nssdb -L
Certificate Nickname                                         Trust Attributes
                                                             SSL,S/MIME,JAR/XPI

Certificado de importação

$ certutil -d sql:$HOME/.pki/nssdb -A -t "C,," -n GoAgent -i ~/programs/goagent/local/CA.crt
    
por 30.07.2013 / 07:52
1

Verifique também se o caminho do diretório -d (deve apontar para o diretório) tem algum espaço ou não. Com espaço dá o mesmo erro ou erro de formato de arquivo ruim - formato de banco de dados antigo, etc. Especialmente no Mac, a pasta está em "Application Support" , que contém espaço. Então, tenha o caminho totalmente citado:

"/Users/myuser/Library/Application Support/Firefox/Profiles/jii912uh.default"

ou adicione o caractere \ escape.

 /Users/myuser/Library/Application\ Support/Firefox/Profiles/jii912uh.default

E verifique se a pasta tem os seguintes arquivos, cert8.db, key3.db and secmob.db.

    
por 01.09.2015 / 08:56
0

No meu caso, resolvi o problema usando essa solução (Windows XP, nss 3.15.1):

cd /dir/with/database
C:/full/path/to/certutil.exe -L -d .
    
por 03.09.2013 / 15:05