Hardware do HSM Educacional Roberto Gallo 1 eHSM - Apresentação • • • • • • • Histórico Requisitos de projeto Arquitetura de HW para baixo custo Relógio de tempo real Gerador de Números Aleatórios Funções criptográficas Proteções físicas e funções de Log 2 eHSM - Histórico • Iniciou com a procura por solução de baixo custo para a ICP-EDU • Software e sistema de gestão desenvolvidos pelo GT do ICP-EDU II (OpenHSM) • Hardware especificado pelo GT e desenvolvido pela Kryptus (eHSM) • Inicio do desenvolvimento: 2s2005 • Estágio atual é de protótipos funcionais 3 eHSM – Requisitos de Projeto • Baixo custo – Próximo ao de um computador pessoal • Proteções físicas – Resistência, detecção e resposta • Suporte a SOs estabelecidos – FreeBSD, embarcado • Conectividade Ethernet – Net HSM: AC ou como acelerador • Standalone 4 eHSM - Requisitos (Cont.) • Suporte a extensão de funções criptográficas – DSP de até 1200 MIPS • Relógio de alta estabilidade – Aplicações sensíveis ao timestamp • Gerador de Números Realmente Aleatórios – Baseado em efeitos físicos • Logs de eventos com os sensores 5 Arquitetura do HW - Geral Perímetro do HSM Perímetro dos Sensores USB Key PS/2 UG Unidade de Gerenciamento VGA USB UC Unidade Criptográfica VCC Serial 1 Ethernet Serial 0 Fonte AC 6 Detalhes da UG • Plataforma x86, low power – Underclock • Processador a 533MHz • 256MB de RAM • 64+ MB de memória FLASH • Conectividade: – Ethernet – USB 2.0 – Serial e VGA 7 Arquitetura da UC Unidade Criptográfica Gerenciador Cripto e de E/S FLASH Código do DSP M1 TRNG Controlador de Barramento Acelerador Criptor Controlador USB Gerenciador de Segurança USB Memória de Log - 32KB Serial M2 Conjunto de Sensores Banco de Capacitores RTC 8 Relógio de Tempo Real • Baseado em dispositivo de alta estabilidade e precisão • Utiliza estabilizadores termo-compensados • Funcionamento garantido com o HSM desligado e fora da tomada • Estabilidade nominal mínima de ~ 2.0ppm – 10 a 20 vezes mais estável que um RTC convencional – ~1min/ano – Componente caro 9 Gerador de Números Aleatórios • Gerador baseado em efeitos físicos – Ruído do efeito avalanche de junção semicondutora • Largura de banda de ruído de 10MHz • Amostragem estatística por flip-bit • Taxa de geração efetiva de 300Kbps • Alta qualidade em testes – Testes de distribuição (chi-Quadrado), entropia, média, valor Montecarlo para Pi, correlação linear 10 Funções Criptográficas • Todas as principais famílias de mecanismos – Assimétricas: DSA, RSA, DH – Simétricas: DES, 3DES, AES, Serpent, HMAC, RC4 – Resumo: MD5, SHA1, SHA256, SHA384, SHA512 • Funções críticas em desempenho podem ser operadas pelo DSP 11 Funções Cripto (Cont.) • Fácil inclusão de novas primitivas – Primitivas operadas com o uso de DSP, código em C ou assembly – É possível adicionar primitivas em campo • Acesso via engine OpenSSL ou API proprietária (inspirada em PKCS#11) • Engines OpenSSL podem ser utilizadas via rede ou localmente 12 Proteções Físicas • Inspiradas em outros produtos – IBM 4758 • Utiliza sensoriamento para detecção dos principais ataques: – Sensores de temperatura – Sensores de luminosidade (abertura) – Sensores de tensão (starving) – Malha de condutores de acionamento aleatório (invasão) 13 Proteções Físicas (Cont. I) • API para acesso aos sensores – Estabelecimento de limites de operação – Desativação para transporte – Leitura dos valores correntes • Malha contra invasão – Cerca todo o perímetro criptográfico – Testes condutivos aleatórios nas malhas testando por curtos ou aberturas – Alta sensibilidade 14 Proteções Físicas (Cont. II) • Acesso ao histórico por meio de Log • Log contém informações de avisos e erros – Informação de gravidade, horário e sensores disparados • Tempo de disparo configurável • Desalimentação da UG, destruição de material cripto na UC e envio de interrupção para UG 15 Futuro • Versão com hardware final, resolvendo alguns detalhes elétricos • Aumento da capacidade de processamento • Resolução de problemas de aquecimento – Temperatura ambiente de operação recomendada de 25oC • Possível troca da UG por HW ainda mais barato • Piloto em universidades selecionadas 16 Perguntas? 17