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