◇ OpenCyber Academy
Engenharia · Capítulo 8 · Português

Capítulo 8 — Arquitetura de computadores

Ensino gratuito e aberto para quem deseja proteger pessoas e tecnologias. Não é preciso criar uma conta para estudar ou consultar as respostas.

Capítulo 8 — Arquitetura de computadores

Mapa da aula

Aula 08 publicada. Mapa, exemplo, EX022.

flowchart TD
  N0["8.1 Suporte de hardware à criptografia"]
  N1["8.2 Caches e vazamento"]
  N2["8.3 Elementos seguros"]
  N3["Síntese"]
  N0 --> N1 --> N2 --> N3
  N3 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX022"]

Desenho lógico

flowchart LR
  N0["8.1 Suporte de hardware à criptografia"]
  N1["8.2 Caches e vazamento"]
  N2["8.3 Elementos seguros"]
  N3["Síntese"]
  N0 --> N1 --> N2 --> N3 --> Q["EX022"]
[8.1 Suporte de hardware à criptografia]
    |
    v
[8.2 Caches e vazamento]
    |
    v
[8.3 Elementos seguros]
    |
    v
[Síntese]
    |
    v
[Exemplo resolvido] --> [Exercício EX022]

Objetivos de aprendizagem

Você vai (1) descrever como os processadores aceleram a criptografia; (2) explicar os caches como fonte de vazamento; (3) avaliar elementos seguros para armazenar as chaves dos medidores.

8.1 Suporte de hardware à criptografia

Os processadores modernos incluem instruções que aceleram o AES e o SHA-2 diretamente no hardware, o que torna a cifração rápida e também ajuda a resistir a vazamentos de tempo, porque o hardware executa em tempo constante, quaisquer que sejam os valores da chave. Aiyana compara os processadores dos servidores da Ridgeway, que têm essas instruções, com os pequenos microcontroladores dos medidores, que podem não ter. Num microcontrolador, o AES em software precisa ser escrito com cuidado para evitar consultas a tabelas que dependam de dados secretos. Esse detalhe de arquitetura afeta quais algoritmos a Ridgeway seleciona para os medidores e por que ela prefere fornecedores cujas bibliotecas documentam o comportamento em tempo constante.

8.2 Caches e vazamento

Os caches tornam o acesso à memória mais rápido ao manter os dados usados recentemente perto do processador. Como o tempo de acesso depende de os dados estarem ou não no cache, um programa cujos acessos à memória dependem de segredos pode vazar esses segredos para outro programa que compartilha o cache. As implementações clássicas do AES baseadas em tabelas tinham essa fraqueza. Aiyana aprende que é por isso que os servidores em nuvem isolam cargas de trabalho sensíveis e que as instruções de hardware substituíram as tabelas de consulta. Para os servidores da Ridgeway, ela recomenda executar o serviço de chaves em hosts dedicados, e não em máquinas virtuais compartilhadas, um custo considerado justificável para as chaves mais sensíveis.

8.3 Elementos seguros

Um elemento seguro é um pequeno chip resistente a violação que armazena chaves e realiza operações criptográficas internamente, de modo que a chave nunca aparece na memória principal do medidor. Ele resiste a sondagem e a ataques de canal lateral melhor do que um microcontrolador comum. Aiyana compara três projetos de medidor: chave na memória flash, chave numa região protegida do microcontrolador e chave dentro de um elemento seguro. O elemento seguro custa mais por medidor, mas significa que abrir um medidor e extrair sua memória não revela a chave dele. Ela registra o trade-off e o risco residual que permanece mesmo com a resistência a violação.

Exemplo resolvido

Aiyana recomenda elementos seguros para as chaves dos medidores, AES em hardware nos servidores e hosts dedicados para o serviço de chaves, com os custos e os riscos residuais registrados.

Caso sintético. Os projetos de medidor e os custos são inventados.

Erros e limites

A resistência a violação aumenta o custo do atacante, mas não é absoluta. A aceleração por hardware não corrige usos indevidos, como a reutilização de nonces.

Exercícios

Síntese

A arquitetura molda a segurança criptográfica: instruções de hardware, o comportamento do cache e os elementos seguros decidem quão bem as chaves sobrevivem em dispositivos reais.

Continue estudando — aula 08 (capítulo 08 de 50)

← Capítulo 07 · Índice das aulas · Capítulo 09 →

Continue para a próxima aula já escrita.