Pular para o conteúdo
buybitcoinsmart

Glossário / Referência do desenvolvedor

Certificado raiz

O que é um certificado raiz?
Um certificado raiz é a âncora de confiança autoassinada no topo de uma cadeia de certificados, e só é considerado confiável porque o fornecedor do seu sistema operacional ou do seu navegador o colocou ali.

Toda verificação de certificado termina em uma raiz. Um certificado raiz assina a si mesmo e só é considerado confiável porque veio no armazenamento de raízes do seu dispositivo; o DST Root CA X3, o exemplo mais conhecido, foi emitido em 30 de setembro de 2000 e expirou exatamente 21 anos depois. Se você julga uma corretora apenas pelo cadeado, está confiando nessa lista de raízes e não em algo próprio da corretora.

Como funciona

Um certificado raiz nomeia a mesma organização tanto no campo de emissor quanto no campo de titular, e a chave que o assinou é a chave que ele certifica. Essa circularidade é justamente o ponto. Nada acima de uma raiz a avaliza, então um verificador não pode conferi-la contra nada mais alto; ele só pode procurar o certificado em uma lista local e tratar essa lista como autoridade.

Essas listas são organizadas por um punhado de empresas. Apple, Microsoft, Mozilla e Google mantêm cada uma um programa de raízes com critérios de inclusão, exigências de auditoria e procedimentos de remoção publicados, e o armazenamento no seu notebook ou celular é o que o seu fornecedor incluiu junto com o software. A inclusão dura muito tempo, porque retirar uma raiz significa enviar uma atualização a cada dispositivo que a contém. O ISRG Root X1, a âncora por trás do Let's Encrypt, foi emitido em 4 de junho de 2015 e só expira em 4 de junho de 2035.

A fraqueza estrutural é que qualquer raiz no armazenamento pode avalizar qualquer nome. Nenhuma regra vincula uma autoridade neerlandesa a domínios neerlandeses, então uma única autoridade comprometida enfraquece todos os sites de uma vez. A DigiNotar provou isso em 2011: um atacante emitiu um certificado fraudulento para google.com em 10 de julho daquele ano e o usou para interceptar tráfego de usuários iranianos. Mozilla, Google e Microsoft retiraram as raízes da DigiNotar nos primeiros dias de setembro de 2011, e a empresa faliu antes do fim do mês.

Onde você vê isso

Os certificados raiz entraram no bitcoin pelo BIP70, que pedia às carteiras que validassem a cadeia de certificados de um comerciante até uma raiz confiável antes de mostrar o nome de uma empresa na tela de pagamento. O software de desktop pegou emprestado o armazenamento do sistema operacional para fazer isso, o software móvel frequentemente errava, e o Bitcoin Core excluiu o recurso por completo na versão 0.20.0. A referência para desenvolvedores do bitcoin.org ainda lista o termo, e é a principal razão pela qual alguém o procura hoje.

A comparação mais útil é com a âncora do próprio bitcoin. Um nó completo parte de um bloco gênesis datado de 3 de janeiro de 2009, gravado no código do software, e verifica cada regra por si mesmo a partir dali. Ninguém adiciona uma entrada a essa âncora enviando uma atualização para o seu celular, e nenhuma autoridade pode ser invadida ou pressionada a avalizar um bloco que viole as regras. Os armazenamentos de raízes funcionam na direção oposta: a confiança flui para baixo a partir de uma lista que você não escreveu e não pode auditar.

Certificado raiz vs certificado folha

Um certificado raiz identifica uma autoridade de certificação; um certificado folha identifica um servidor. A raiz é autoassinada, vive por duas décadas e guarda sua chave privada em um módulo de hardware offline trazido algumas vezes por ano sob testemunhas. O certificado folha nomeia o host ao qual você realmente se conectou, vive por meses, e sua chave privada fica em um servidor web em funcionamento exposto à internet. As pessoas dizem “o certificado é válido” quando querem dizer que o certificado folha foi processado e que as datas batem, mas a pergunta que decide se a conexão é confiável é em qual raiz a cadeia termina.

Não confundir com

Perguntas frequentes

O bitcoin depende de certificados raiz?

Não. Um nó de bitcoin ancora sua confiança no bloco gênesis de 3 de janeiro de 2009 e em regras de consenso que ele mesmo verifica. O único ponto pelo qual autoridades de certificação entraram alguma vez no protocolo foi o BIP70, que o Bitcoin Core removeu na versão 0.20.0.

Posso excluir um certificado raiz em que não confio?

Sim, todo sistema operacional importante permite que você deixe de confiar em uma raiz, e algumas pessoas removem autoridades que consideram arriscadas. Espere falhas: qualquer site cuja cadeia termine nessa raiz deixará de carregar, e você não receberá nenhum aviso sobre quais sites são esses.

Leia a seguir

Termos relacionados

Mais em Referência do desenvolvedor

Ler esta página em inglês