Capítulo 22 — Segurança quântica e pós-quântica: dados e dependências
Mapa da aula
Aula 22 publicada. Mapa, exemplo, EX043.
flowchart TD
N0["22.1 Fontes do inventário"]
N1["22.2 Atividade prática — Laboratório I"]
N2["22.3 Dependências"]
N3["Síntese"]
N0 --> N1 --> N2 --> N3
N3 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX043"]
Desenho lógico
flowchart LR
N0["22.1 Fontes do inventário"]
N1["22.2 Atividade prática — Laboratório I"]
N2["22.3 Dependências"]
N3["Síntese"]
N0 --> N1 --> N2 --> N3 --> Q["EX043"]
[22.1 Fontes do inventário]
|
v
[22.2 Atividade prática — Laboratório I]
|
v
[22.3 Dependências]
|
v
[Síntese]
|
v
[Exemplo resolvido] --> [Exercício EX043]
Objetivos de aprendizagem
Você vai (1) explicar o que é uma lista de materiais criptográficos (CBOM); (2) combinar fontes de evidência num inventário; (3) calcular a cobertura e a parcela de desconhecidos; e (4) rastrear as dependências por bibliotecas, fornecedores e parceiros.
22.1 Fontes do inventário
Nenhum método isolado encontra toda a criptografia. A observação passiva da rede vê os algoritmos negociados na transmissão; a revisão de configuração lê o que os serviços estão configurados para oferecer; a varredura de código e de binários encontra chamadas de bibliotecas e constantes embutidas; as declarações dos fornecedores descrevem os produtos fechados; os repositórios de certificados revelam os algoritmos de assinatura e a validade. Uma CBOM registra, para cada ativo e função, o algoritmo, os parâmetros, a implementação e a fonte da evidência, de forma análoga a uma lista de materiais de software para componentes.
Cada método tem pontos cegos, então a HCU os combina e registra a fonte de cada entrada.
22.2 Atividade prática — Laboratório I
# Lab I (ch 22): aggregate a synthetic cryptographic bill of materials (CBOM) and measure coverage.
records = [ # (asset, function, algorithm, source)
("web-gateway", "key-exchange", "X25519MLKEM768", "passive"), ("web-gateway", "signature", "RSA-2048", "config"),
("atm-controller", "key-exchange", "ECDHE-P256", "passive"), ("atm-controller", "signature", "ECDSA-P256", "code"),
("core-banking", "key-exchange", "RSA-kex", "config"), ("billing", "data-at-rest", "AES-256-GCM", "code"),
("card-terminal", "unknown", "unknown", "none"), ("branch-vpn", "key-exchange", "ECDHE-P384", "config")]
VULN = {"RSA-2048", "ECDHE-P256", "ECDSA-P256", "RSA-kex", "ECDHE-P384"}
assets = {r[0] for r in records}
unknown = {r[0] for r in records if r[2] == "unknown"}
vuln = [r for r in records if r[2] in VULN]
print(f"assets {len(assets)}, unknown {len(unknown)} ({100*len(unknown)/len(assets):.0f}%)")
print(f"quantum-vulnerable uses {len(vuln)}:", ", ".join(f"{a}/{f}" for a, f, _, _ in vuln))
print("hybrid key exchange present on:", [r[0] for r in records if "MLKEM" in r[2]])
Saída esperada:
assets 6, unknown 1 (17%)
quantum-vulnerable uses 5: web-gateway/signature, atm-controller/key-exchange, atm-controller/signature, core-banking/key-exchange, branch-vpn/key-exchange
hybrid key exchange present on: ['web-gateway']
Seis ativos sintéticos produzem cinco usos vulneráveis à computação quântica e um ativo (17 %) cuja criptografia é desconhecida. O terminal de cartão desconhecido precisa de uma consulta ao fornecedor antes que possa ser planejado.
O laboratório combina evidências de mais de uma fonte para cada ativo e imprime um resumo com a parcela de desconhecidos. Cada linha mantém a sua fonte, então quem lê consegue ver quais achados se apoiam em observação e quais em declarações de fornecedores. Rodar o mesmo script nos dados do próximo trimestre vai mostrar se a parcela de desconhecidos está caindo, o que é, por si só, um indicador útil do progresso da migração.
22.3 Dependências
A criptografia é herdada. Uma aplicação usa um framework que usa uma biblioteca TLS que usa o provedor do sistema operacional; um fornecedor de SaaS termina o TLS numa CDN que a HCU não controla; a API de um parceiro dita quais algoritmos o cliente da HCU precisa suportar. Desenhe as cadeias de dependência dos fluxos de alta prioridade e identifique a parte controladora de cada elo — aquela que precisa agir para que o algoritmo mude. Uma migração só está completa para um fluxo quando todos os elos tiverem mudado.
Os elos que a HCU não controla precisam de roteiros dos seus responsáveis.
22.4 Exemplo resolvido
O fluxo do mobile banking da HCU depende de: a pilha TLS do sistema operacional do celular (fornecedor da plataforma), a biblioteca de rede do aplicativo (desenvolvedores da HCU), uma CDN que termina o TLS (provedor da CDN), o gateway web (equipe de rede da HCU) e a API do sistema bancário central (fornecedor do sistema central). A troca de chaves híbrida do celular à CDN depende do suporte da plataforma e da CDN; da CDN ao gateway, da CDN e da HCU; do gateway ao sistema central, da HCU e do fornecedor do sistema central. Três segmentos, quatro partes controladoras e quatro cronogramas diferentes.
O fluxo só é registrado como migrado quando os três segmentos tiverem mudado, e a HCU acompanha cada parte separadamente.
22.5 Erros comuns e limites
- Depender de uma única fonte de evidência.
- Registrar algoritmos sem a fonte da evidência e a data.
- Declarar um fluxo migrado quando apenas o segmento da HCU mudou.
Cada fonte deixa algo escapar: os sensores de rede não veem os certificados no TLS 1.3, a configuração pode diferir do comportamento, as declarações dos fornecedores podem estar desatualizadas. Combiná-las, com cada linha rotulada, dá um retrato mais completo e mais honesto. Um fluxo só está migrado quando todas as partes da sua cadeia tiverem mudado, então registre o estado de cada elo separadamente, em vez de marcar o fluxo como concluído quando a parte da HCU estiver pronta.
Exercícios
- EX043 — Aritmética da cobertura. Se mais dois ativos do Laboratório I se tornarem desconhecidos, qual é a parcela de desconhecidos? Rubrica: 3 = 3/8 ≈ 38 % com o método (oito ativos, três desconhecidos).
- EX044 — Partes controladoras. No fluxo móvel de 22.4, quais segmentos a HCU pode migrar unilateralmente? Rubrica: 3 = a configuração do gateway e a biblioteca do aplicativo, com raciocínio sobre os demais.
Síntese
Uma CBOM funde várias fontes de evidência com a sua procedência; a cobertura e a parcela de desconhecidos mostram o que o inventário ainda não enxerga, e as cadeias de dependência revelam quem precisa agir.
Continue estudando — capítulo 22 de 40
← Capítulo 21 · Índice de capítulos do curso · Capítulo 23 →
Siga para a próxima lição escrita.