Notícias do setor
Ciclo de vida de certificados TLS em uma plataforma de iGaming regulada
Um certificado é uma afirmação datada. Ele diz que, em um determinado momento, um domínio estava sob controle da parte nomeada nele, que um par de chaves pertence a essa parte, e que uma autoridade de certificação verificou ambos. Os navegadores e as bibliotecas da internet tratam então essa afirmação como utilizável até a data de expiração impressa nela, e é por isso que a extensão dessa data sempre foi um parâmetro operacional, e não uma nota de rodapé jurídica.
Para uma plataforma de apostas, o parâmetro acabou de mudar duas vezes, e uma terceira mudança está em um cronograma publicado. Um certificado que precisa ser substituído a cada 200 dias — e mais tarde a cada 47 — não é uma tarefa de renovação que caiba em um calendário trimestral com um lembrete definido com um mês de antecedência. É um ciclo de vida que precisa ser guiado por inventário, automatizado, monitorado e comprovado, porque o modo de falha não é um aviso em um log: são jogadores que não conseguem abrir o site.

O cronograma, nas palavras do documento que o define
Os Requisitos de Linha de Base (Baseline Requirements) de TLS do CA/Browser Forum são o conjunto de regras comum que navegadores e autoridades de certificação públicas concordam em seguir. A Seção 6.3.2 define o período máximo de validade de um certificado de assinante publicamente confiável e, desde 15 de março de 2026, ela diz, para a faixa atual: um certificado emitido em ou após 2026-03-15 e antes de 2027-03-15 “NÃO DEVERIA ter um Período de Validade superior a 199 dias e NÃO DEVE ter um Período de Validade superior a 200 dias”. A mesma seção segue para 100 dias a partir de 2027-03-15 e 47 dias a partir de 2029-03-15, e define um dia de cálculo como 86.400 segundos, acrescentando que os certificados não deveriam ser emitidos pelo tempo máximo permitido por padrão, para que segundos fracionários e segundos intercalares não empurrem um valor acima do limite.
A votação que definiu esse cronograma vale ser lida pelo seu raciocínio, e não apenas pela sua tabela. A Ballot SC-081v3 foi proposta por Clint Wilson, da Apple, endossada por Sectigo, Google Chrome e Mozilla, e foi aprovada com 25 votos de emissores de certificados a favor e nenhum contra, além dos quatro votos de consumidores. Seu próprio resumo da mudança é direto: uma redução eventual da validade máxima de 398 dias para 47 dias, com as reduções “propostas para ocorrer a partir de março de 2026 e concluir em março de 2029”. Seu primeiro benefício declarado é a frase que vale fixar na parede — os certificados “são representações de um estado da realidade em um ponto no tempo” — seguida da observação de que, quanto mais tempo um certificado vive, mais provável é que seu conteúdo tenha divergido da realidade.
Dois parágrafos dessa votação importam para um time de plataforma de um modo que uma tabela de datas não importa. O primeiro é o seu escopo: os Requisitos de Linha de Base “tratam de requisitos apenas para certificados que ‘se destinam a ser usados para autenticar servidores acessíveis pela Internet’”. Uma AC privada dentro da sua própria infraestrutura não é regida por esse cronograma — o que é uma decisão que agora você precisa tomar deliberadamente, porque o cronograma público vai puxar seus endpoints públicos para uma cadência muito mais rápida do que a dos internos, e uma plataforma que trata os dois de forma idêntica vai automatizar demais um serviço interno de baixo risco ou automatizar de menos um público. O segundo é um lembrete sobre revogação: os requisitos já trazem o dever de uma AC revogar um certificado em até 24 horas em certas circunstâncias, e a votação observa que o gerenciamento prático de certificados nem sempre refletiu a expectativa de conseguir substituir um em menos de um dia.
O que mais mudou junto
O período de validade é a manchete, mas o mesmo cronograma moveu os dados de validação sob ele, e os próprios métodos de validação, o que muda o que um fluxo de emissão automatizado tem permissão para fazer.
| Requisito | Vigência | Onde está escrito |
|---|---|---|
| Reúso de dados de validação de nome de domínio e endereço IP: 200 dias | 2026-03-15 | Baseline Requirements §4.2.1 |
| Reúso de dados de validação da informação de identidade do sujeito: 398 dias, reduzido de 825 | 2026-03-15 | Baseline Requirements §4.2.1 |
| A validação DNSSEC deve ser realizada em todas as consultas DNS usadas para validação de domínio e para consultas CAA | 2026-03-15 | Baseline Requirements §3.2.2.4 e §4.2.2.2 |
| A validação de domínio por e-mail e por telefone não deveria mais ser usada para emitir certificados de assinante | 2026-03-15 | Baseline Requirements §3.2.2.4 |
| Todo uso restante de SHA-1 em certificados e CRLs é descontinuado | 2026-09-15 | Baseline Requirements §7.1.3.2.1 |
Parâmetros CAA accounturi e validationmethods processados conforme a RFC 8657 |
2027-03-15 | Baseline Requirements §4.2.2.1.2 |
| Reúso de dados de validação de nome de domínio e IP: 100 dias, depois 10 dias | 2027-03-15, 2029-03-15 | Baseline Requirements §4.2.1 |
A leitura prática é que o número de dias em que uma validação permanece reutilizável está encolhendo mais rápido do que a vida útil do certificado, e os métodos manuais que antes salvavam uma renovação travada — um e-mail para uma caixa postal do domínio, uma ligação telefônica — estão sendo retirados do caminho automatizado. Um fluxo de emissão que depende de um humano responder a uma mensagem agora é um fluxo que viola a intenção do conjunto de regras mesmo antes de se tornar um fluxo que quebra.
Inventário primeiro, porque não se automatiza o que não foi nomeado
O incidente de certificado mais comum em uma plataforma de porte médio não é uma falha criptográfica. É um certificado de que ninguém se lembrava: um wildcard comprado por um time anterior para uma integração que ainda o chama, um certificado no console de um appliance, um certificado dentro de um domínio específico de um tenant que um parceiro introduziu, um certificado no backend móvel que nunca aparece na lista da infraestrutura web.
Assim, o primeiro entregável é um registro, e ele precisa responder perguntas, e não apenas contar linhas:
| Coluna | Por que ela é necessária |
|---|---|
| Certificado e identificador de chave | A impressão digital e o serial que resolvem um chamado de suporte para um objeto |
| Sujeito e nomes alternativos do sujeito | Quais hostnames a afirmação cobre de fato, incluindo os que ninguém usa ainda |
| Emissor e conta da AC emissora | Qual autoridade pode renová-lo, sob qual conta, por qual API |
| Consumidor | Todo serviço, balanceador de carga, appliance, build móvel e endpoint de parceiro que vai quebrar na expiração |
| Responsável | Um time, não uma caixa postal de grupo |
| Caminho de automação | O job, o repositório e o cofre de segredos exatos que executam a renovação |
| Estado de renovação e data da última renovação | Se a automação já rodou de fato em produção |
| Custódia da chave | Se a chave privada é gerada dentro de um módulo de hardware e nunca sai dele, ou se existe como arquivo |
Duas dessas colunas são as que as organizações rotineiramente deixam vazias, e são as duas que decidem o quão ruim será a próxima expiração: a lista de consumidores, porque é ela que transforma um certificado expirado em uma indisponibilidade cujo raio de impacto ninguém consegue prever nos primeiros dez minutos; e o caminho de automação, porque uma renovação automatizada que nunca foi exercitada é uma suposição. Se a chave privada sai de um módulo de hardware é uma decisão de projeto, não uma regra universal; o que não é defensável é não saber a resposta por certificado quando um revisor pergunta. O guia de isolamento multi-tenant cobre a questão relacionada de quem é o dono de um hostname dentro de uma plataforma compartilhada, e o guia de migração e transição cobre por que um domínio que muda de operador precisa ser rastreado, e não presumido.
Automatizar a emissão e provar que a automação funciona
ACME, especificado na RFC 8555, é a forma comum de fazer isso. Seu resumo o descreve de modo simples: um protocolo que uma autoridade de certificação e um solicitante “podem usar para automatizar o processo de verificação e emissão de certificados”, com recursos para outras funções de gerenciamento de certificados, incluindo revogação. O protocolo é apenas metade da automação; a outra metade é a encanação em volta dele — a credencial que o cliente usa, o desafio DNS ou HTTP que ele precisa satisfazer, o reload que entrega o novo certificado ao serviço e o alerta que dispara quando qualquer uma dessas etapas deixa de acontecer.
Quatro propriedades separam uma renovação automatizada de um script que por acaso roda:
- A renovação é guiada pelo certificado, não por um calendário. Perguntar ao certificado implantado quando ele expira e renovar dentro de uma janela declarada sobrevive a um certificado emitido manualmente, a um domínio adicionado tarde e a um job que foi pulado uma vez.
- A identidade do solicitante é restringida no DNS. Um registro CAA, definido na RFC 8659, permite que um detentor de domínio “especifique uma ou mais Autoridades de Certificação (CAs) autorizadas a emitir certificados para aquele nome de domínio”, o que é um controle contra a emissão indevida por uma autoridade que você nunca pretendeu usar. A RFC 8657 o estende com dois parâmetros que fixam a conta que pode solicitar a emissão e os métodos de validação que podem ser usados para ela, e os Requisitos de Linha de Base colocam o segundo em vigor em 2027. Especificar sua própria conta ACME em um registro CAA é um dos poucos controles que torna uma credencial comprometida em outro lugar menos útil.
- O reload faz parte do teste. Um certificado renovado que o serviço não pega até o próximo deploy é uma indisponibilidade agendada com um passo extra. Qualquer que seja o mecanismo — um hook de reload, um sidecar, um proxy que lê o arquivo a cada handshake —, o teste de aceitação é que um certificado substituído seja servido imediatamente, e ele pertence ao ambiente de não produção onde o caminho de renovação pode ser executado e falhado de propósito.
- A expiração é monitorada de fora da plataforma. O monitoramento interno compartilha o destino do sistema que observa. Uma verificação feita de uma rede separada, contra o endereço que os jogadores realmente alcançam, e alertando em um limiar expresso em dias, e não em horas, é a única verificação que captura uma cadeia de renovação quebrada antes dos jogadores. Sob uma cadência de 200 dias, uma revisão anual ainda funciona; sob 47 dias, não, e o limiar de alerta tem de ser definido a partir da janela de renovação, e não por hábito.
Nomear o assinante, não apenas o host
Certificados fazem dois trabalhos em uma plataforma de jogos, e eles são frequentemente confundidos. Um é apresentar o serviço do próprio operador ao navegador de um jogador. O outro é identificar um serviço a outro serviço: a plataforma ao provedor de pagamentos, a plataforma ao RGS, o back office a uma API interna, um microsserviço a outro.
O segundo trabalho é onde o hábito centrado em hostname dá errado. A RFC 9525, que torna obsoleta a RFC 6125, especifica “procedimentos para representar e verificar a identidade de serviços de aplicação” em TLS, e seu ponto é que a identidade sendo verificada é o serviço na outra ponta da conexão, não uma máquina e não um endereço IP. Em uma plataforma montada a partir de serviços e fornecedores, essa distinção é a diferença entre uma API interna que autentica um chamador e uma API interna que apenas criptografa a conexão enquanto confia em qualquer coisa dentro do perímetro.
Para integrações com fornecedores, o registro e o repositório de confiança têm de andar juntos. Quando um parceiro rotaciona seu certificado, a mudança geralmente é anunciada por um canal de suporte, e não pelo seu DNS, e uma plataforma que fixa o certificado do parceiro em um arquivo de configuração sem um responsável e uma data de revisão vai descobrir a rotação no momento em que a integração para de liquidar. Fixar certificados entre partes que controlam o mesmo pipeline é razoável; fixar entre partes que não controlam é uma dependência de uma notificação que você pode não receber.
Aplicativos móveis acrescentam sua própria versão desse problema, porque um app já instalado em um dispositivo carrega a decisão de confiança com que foi lançado. O guia de integridade de aplicativos cobre a questão mais ampla de o que um cliente pode ser confiável para provar sobre si mesmo; a regra específica de certificados é mais estreita e vale ser dita isoladamente: qualquer decisão de confiança embutida em um build lançado precisa ser verificada contra a cadência de lançamento desse build, porque um certificado que muda a cada 47 dias não pode ser uma âncora de confiança permanente em um app que atualiza duas vezes por ano.
Manter a chave privada onde ela pertence
Um certificado é público. A chave privada não é, e o ciclo de vida da chave é separado do ciclo de vida do certificado — um par de chaves tem um período de uso e um criptoperíodo, e a data de expiração do certificado é apenas um dos eventos que os encerram.
A orientação de gerenciamento de chaves do NIST é a referência geral aqui: o SP 800-57 Parte 1 Revisão 5 fornece “orientação geral e boas práticas para o gerenciamento de material de chaveamento criptográfico”, incluindo os serviços de segurança que a criptografia pode fornecer e a proteção esperada de cada tipo de chave, e trata os metadados em torno das chaves — quem é o dono delas, de onde vieram, quando podem ser usadas — como parte do material a ser protegido. Para o módulo que guarda as chaves, o FIPS 140-3, “Requisitos de Segurança para Módulos Criptográficos”, é o padrão contra o qual um módulo de segurança de hardware validado é testado. Para a configuração de protocolo por cima disso, o SP 800-52 Revisão 2 dá “orientação para a seleção e configuração de implementações do protocolo TLS, fazendo uso efetivo dos Padrões Federais de Processamento de Informação (FIPS) e de algoritmos criptográficos recomendados pelo NIST”.
Nenhum desses documentos certifica uma plataforma de jogos, e nenhum deles substitui o julgamento do próprio operador sobre quais integrações justificam um módulo de hardware. O que eles estabelecem é uma estrutura: gerar a chave onde ela vai viver, mantê-la lá, dar-lhe um período de uso declarado e registrar quem pode usá-la e para quê. As perguntas que um revisor faz são correspondentemente específicas — onde esta chave foi gerada, ela já saiu do módulo, quem pode solicitar uma assinatura com ela, quando ela deixa de ser válida e o que acontece com os dados criptografados sob ela quando é aposentada. Uma plataforma que consegue responder isso por certificado terminou a parte mais difícil deste trabalho, porque o resto do ciclo de vida é agendamento.
Detectar emissões que você não solicitou
Monitorar a expiração protege a disponibilidade. Não protege contra a outra falha: um certificado emitido para o seu domínio por uma autoridade que você não escolheu, em um momento que você não conhecia.
O Certificate Transparency existe exatamente para isso. A RFC 9162 descreve um protocolo para “registrar publicamente a existência de certificados de servidor TLS à medida que são emitidos ou observados, de uma maneira que permite a qualquer pessoa auditar a atividade de autoridades de certificação (CAs) e notar a emissão de certificados suspeitos”. Autoridades públicas são obrigadas a submeter certificados aos logs, o que transforma um log público em uma superfície de monitoramento: uma consulta pelos seus próprios domínios, executada continuamente, contra uma lista que você mantém, produz um alerta quando algo é emitido que o seu inventário não explica.
Esse monitor pertence à mesma revisão que o registro, e ele deve ser capaz de responder à pergunta que um revisor de segurança fará depois de uma manchete de emissão indevida: nós saberíamos, com que rapidez e por qual fonte. O guia de registro de segurança e evidência de auditoria cobre a disciplina geral de evidências; a versão específica de certificados é que o registro do alerta, a entrada de log e o chamado que o encerrou são os artefatos, e não o painel.
Revogação é um runbook, não um endpoint de status
Revogar um certificado é uma decisão com um procedimento anexado, e o procedimento é o que falha sob pressão. O protocolo de status é apenas o anúncio: a RFC 6960 especifica o Online Certificate Status Protocol como uma forma de “determinar o status atual de um certificado digital sem exigir Listas de Revogação de Certificados (CRLs)”. Se as suas partes confiantes de fato o consultam é uma pergunta separada, e a votação que encurtou os períodos de validade diz por que isso agora importa menos: ela argumenta que os serviços de status de certificado “não protegem adequadamente as partes confiantes na escala atual da internet”, citando privacidade, desempenho, tempestividade e exatidão, e trata uma vida útil curta como a proteção que não depende de cada parte fazer a coisa certa na hora certa. Certificados de vida curta não removem a necessidade de revogar; eles reduzem a janela em que uma revogação precisa ser acreditada.
Duas peças de engenharia decorrem disso. A primeira, o stapling: a RFC 7633 define a extensão de recurso TLS, cujo propósito é impedir ataques de downgrade e que “pode ser usada para exigir suporte a recursos de verificação de revogação no protocolo TLS, como o stapling do Online Certificate Status Protocol (OCSP)”. Um certificado marcado com essa extensão transforma um staple ausente em uma falha dura, e não em um pulo silencioso, o que é um trade-off deliberado de disponibilidade e deve ser registrado como tal.
A segunda é o próprio runbook. Um comprometimento de certificado é um incidente de segurança com uma sequência de abertura fixa: identificar todo serviço que usa a chave, revogar pela autoridade emissora, reemitir com um novo par de chaves em vez do mesmo, confirmar o que o certificado antigo protegia e decidir o que deve ser tratado como exposto. O plano de resposta a incidentes é onde essa sequência pertence, e a razão para escrevê-la enquanto nada está errado é que a primeira decisão em um evento real costuma ser a que ninguém consegue tomar rapidamente: isto é um comprometimento de chave, uma emissão indevida ou um erro de configuração, e quem o declara.
O que um mundo de 47 dias faz com o restante da pilha
Encurtar a vida útil não muda a criptografia. Muda o custo de toda operação que toca um certificado, e as operações que ignoram isso são as que vão produzir a indisponibilidade.
- Alertas calibrados por uma vida útil, não por um ano. Uma janela de renovação, um limiar de aviso e um limiar crítico expressos como frações do período de validade real sobrevivem aos passos de 2027 e 2029 sem serem reescritos. Valores fixos como “30 dias” não sobrevivem: eles são 15 por cento de um certificado de 200 dias e 64 por cento de um de 47 dias.
- Gestão de mudanças capaz de carregar uma mudança semanal. Se a substituição de um certificado é um chamado de mudança que exige uma janela de manutenção, então, aos 47 dias, a plataforma tem cerca de sete janelas por certificado por ano. Automação em que se confia sem uma janela é a única versão disso que escala, e a confiança precisa ser conquistada com evidência: um ensaio em um ambiente de não produção, um caminho de reversão e um registro de renovações que já aconteceram sem acompanhamento.
- Um caminho de reload que não reinicia o mundo. A forma mais comum de uma renovação rotineira virar incidente é que aplicá-la exige um reinício de processo que drena sessões ou reinicia um pool de conexões compartilhado. Sob uma vida útil longa, isso é um custo raro; sob uma curta, é um custo recorrente, e a correção é arquitetural, não processual.
- Chaves rotacionadas junto com o certificado. Uma renovação que reutiliza o par de chaves existente é mais barata e mantém a chave antiga em serviço por mais um mandato. Reemitir com um par de chaves novo é a prática que torna um comprometimento retrospectivo, e não aberto, e vale decidir isso deliberadamente, e não por padrão.
- Uma lista de fornecedores com datas nela. Qualquer interface em que o outro lado controla um certificado — pagamentos, identidade, conteúdo de jogos, um endpoint de relatório de um regulador — é uma dependência com a sua própria expiração. O registro deve carregar esses certificados também, marcados como não nossos, com a rota de contato registrada.
Transformar isso em evidência de aceitação
O pacote que um operador, comprador ou auditor deveria conseguir ler é curto, e cada item dele é verificável, e não apenas afirmado:
- O registro de certificados descrito acima, com um responsável nomeado e uma lista de consumidores por entrada.
- O cronograma público contra o qual cada certificado público está sendo gerenciado, com as datas que se aplicam hoje e o próximo passo já planejado.
- Para cada renovação automatizada: a conta ou credencial usada, o método de desafio, o controle de DNS que restringe a emissão e a data em que o caminho foi exercitado pela última vez em um ambiente de não produção.
- O mecanismo de reload e a evidência de que um certificado substituído é servido pelo serviço em execução sem um passo manual.
- O monitor externo de expiração, seus pontos de observação, seus limiares e a rota que seus alertas percorrem.
- O monitor de certificate transparency para os domínios que você possui e a revisão que encerra uma emissão não explicada.
- A declaração de custódia de chaves: onde cada chave privada é gerada, se ela pode sair do módulo, seu período de uso e quem pode usá-la.
- O runbook de revogação, com a regra de reemitir com uma nova chave escrita nele.
Nada disso é trabalho empolgante, e é por isso que ele é tão frequentemente adiado até que uma data de expiração o force. O hábito de engenharia ao qual ele pertence — especificar o comportamento antes de construí-lo e manter a especificação atual quando as regras mudam — é o mesmo por trás da disciplina de desenvolvimento de plataforma que este site aplica em outros lugares. Para certificados, as regras mudaram em março e vão mudar de novo em 2027 e 2029. Uma plataforma que já construiu o registro, a automação e o monitor vai ler essas datas como uma entrada de agendamento. Uma plataforma que não construiu vai lê-las como três incidentes separados com uma causa comum.
Perguntas que um time de plataforma faz
O limite de 200 dias se aplica aos nossos certificados internos?
Não sob esses requisitos. Os Requisitos de Linha de Base regem certificados destinados a autenticar servidores alcançáveis pela internet, e um certificado emitido pela sua própria autoridade interna para um serviço que não é publicamente alcançável está fora desse escopo. Isso é uma declaração de escopo, e não uma promessa de segurança: um certificado interno com vida útil de dois anos e nenhuma automação continua sendo uma expiração esperando para acontecer, e a pergunta útil é se a infraestrutura interna tem um responsável, um registro e um caminho de renovação próprios, e não se ela está legalmente coberta.
Hoje renovamos anualmente. O que quebra primeiro, de fato?
A ordem de renovação, não a criptografia. Um ciclo anual é uma renovação por certificado por ano com um mês de aviso; aos 200 dias, são cerca de duas, e aos 47 dias, cerca de oito. As primeiras coisas a falhar são as que assumiam o ritmo antigo: um lembrete enviado a uma única pessoa, uma janela de mudança reservada trimestralmente, um limiar de alerta definido em dias que já não deixa tempo suficiente para agir e um passo de reload manual que todos toleravam porque acontecia uma vez por ano.
Certificados de vida curta significam que podemos ignorar a revogação?
Não. Vidas úteis mais curtas reduzem o tempo em que uma decisão de revogação precisa se propagar de forma confiável e reduzem quanto do ecossistema depende de os serviços de status se comportarem, o que é parte do motivo pelo qual a mudança foi adotada. Elas não substituem a revogação nos casos que mais importam: uma chave privada comprometida ainda precisa ser revogada pela sua autoridade, porque enquanto o certificado não expira, qualquer um que tenha a chave pode apresentá-la. A diferença prática é que a revogação se torna um procedimento raro, guiado por incidente, com um runbook, e não uma operação rotineira, então ela merece um ensaio, e não um script que ninguém rodou.
Um certificado wildcard é uma forma de reduzir o número de renovações?
Ele reduz o número de certificados e aumenta o valor de cada um. Uma data de expiração substituindo vinte é uma simplificação operacional genuína, e também significa que uma chave vazada ou uma renovação perdida afeta todos os hostnames que o wildcard cobre. A entrada do registro precisa carregar esse raio de impacto com honestidade, a lista de consumidores passa a ser todo o conjunto de serviços cobertos, e o wildcard não deveria ser a resposta para um hostname que tem um dono diferente, uma exposição diferente ou um requisito de disponibilidade diferente.
Qual é a menor coisa a construir primeiro se não temos nada?
O registro, com a coluna de consumidores preenchida. Custa alguns dias, não precisa de nenhum novo componente de plataforma e responde imediatamente às duas perguntas que decidem o quão ruim será a próxima expiração — quais serviços quebram e quem é responsável por cada certificado. Automação sem essa lista renova os certificados de que você se lembrou, que é justamente o conjunto que nunca ia causar o incidente.
