Capítulo 15 — Criptografia e serviços de confiança: integração e dependências
Mapa da aula
Aula 15 publicada. Mapa, exemplo, EX057.
flowchart TD
N0["15.1 Mapa de dependências"]
N1["15.2 Rotação coordenada"]
N2["15.3 Confiança na cadeia de suprimentos"]
N3["Síntese"]
N0 --> N1 --> N2 --> N3
N3 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX057"]
Desenho lógico
flowchart LR
N0["15.1 Mapa de dependências"]
N1["15.2 Rotação coordenada"]
N2["15.3 Confiança na cadeia de suprimentos"]
N3["Síntese"]
N0 --> N1 --> N2 --> N3 --> Q["EX057"]
[15.1 Mapa de dependências]
|
v
[15.2 Rotação coordenada]
|
v
[15.3 Confiança na cadeia de suprimentos]
|
v
[Síntese]
|
v
[Exemplo resolvido] --> [Exercício EX057]
Objetivos de aprendizagem
Você vai (1) mapear as dependências criptográficas entre a Lumen e os parceiros; (2) planejar uma rotação coordenada de segredos; (3) reconhecer a confiança na cadeia de suprimentos de bibliotecas e dispositivos.
15.1 Mapa de dependências
Toda integração compartilha algo criptográfico. O processador de pagamentos e a Lumen compartilham um segredo HMAC; os armazéns parceiros confiam na chave de host SSH da Lumen e guardam suas próprias chaves de cliente; a plataforma de e-mail assina as mensagens de saída com chaves DKIM publicadas no DNS da Lumen. Tomás desenha essas ligações como um mapa de dependências, com o dono de cada lado e a pessoa de contato para as mudanças. Quando uma chave de um lado muda, o outro lado também precisa ser atualizado, ou a integração quebra. O mapa transforma indisponibilidades surpreendentes em trabalho planejado, porque cada rotação agora tem uma lista conhecida de pessoas a avisar.
15.2 Rotação coordenada
O segredo dos callbacks de pagamento está com a rotação vencendo. Tomás aprende o padrão de sobreposição: a Lumen configura o portal para aceitar tanto o segredo antigo quanto o novo, o processador passa a assinar com o novo segredo, a Lumen confirma que os callbacks são verificados com o novo e só então remove o antigo. Cada passo é registrado com o horário e as evidências. Sem sobreposição, há uma janela em que callbacks válidos falham e pedidos são marcados erroneamente como não pagos. Ele escreve o plano como uma lista de verificação curta, que as duas equipes assinam antes de a janela de manutenção começar.
15.3 Confiança na cadeia de suprimentos
A Lumen não escreve código de TLS nem de SSH; ela depende dos pacotes do sistema operacional, do Python, do OpenSSL e do firmware do fornecedor dos coletores. Uma vulnerabilidade em qualquer um deles é uma vulnerabilidade na Lumen. Tomás assina os avisos de segurança desses componentes e registra as versões no inventário, para que, quando aparecer um aviso, ele consiga dizer em minutos quais hosts estão afetados. Ele também aprende que instalar uma biblioteca a partir de um espelho não oficial ou copiar um binário de um fórum acrescenta confiança numa parte desconhecida, exatamente o tipo de risco que o modelo de confiança do capítulo 6 tenta tornar visível.
Exemplo resolvido
Tomás mapeia cinco integrações criptográficas, escreve uma lista de verificação de rotação com sobreposição para o segredo de pagamento e liga as versões dos componentes aos feeds de avisos.
Caso sintético. Os parceiros, os contatos e as versões são sintéticos.
Erros e limites
Os parceiros podem não suportar a sobreposição e exigir uma troca abrupta. Os feeds de avisos podem ficar atrás da divulgação pública.
Exercícios
-
EX057 — Dependência do DKIM. Que sistema da Lumen publica as chaves públicas usadas para verificar as assinaturas de e-mail? Rubrica: 3 = o DNS da Lumen, que guarda as chaves públicas DKIM;; 2 = DNS;; 1 = só o servidor de e-mail;; 0 = nenhuma.
-
EX058 — Ordem da sobreposição. Dê a ordem dos passos da rotação com sobreposição. Rubrica: 3 = aceitar ambos, o provedor troca, confirmar que o novo é verificado, remover o antigo;; 2 = três em ordem;; 1 = fora de ordem;; 0 = nenhuma.
-
EX059 — Efeito sem sobreposição. O que dá errado sem um período de sobreposição? Rubrica: 3 = callbacks válidos falham e pedidos são marcados como não pagos durante a lacuna;; 2 = falhas;; 1 = vago;; 0 = nenhuma.
-
EX060 — Registro de versões. Por que registrar as versões do OpenSSL e do firmware no inventário? Rubrica: 3 = para dizer rapidamente quais hosts um aviso afeta;; 2 = avisos;; 1 = desnecessário;; 0 = nenhuma.
Síntese
As integrações tornam as chaves dependências compartilhadas, então as rotações precisam de sobreposição e todo componente fornecido precisa ter suas versões acompanhadas.
Continue estudando — aula 15 (capítulo 15 de 18)
← Capítulo 14 · Índice das aulas · Capítulo 16 →
Continue para a próxima aula já escrita.