• Nenhum resultado encontrado

Aspectos de Segurança em Hardware Desafios e Oportunidades de Pesquisa

N/A
N/A
Protected

Academic year: 2021

Share "Aspectos de Segurança em Hardware Desafios e Oportunidades de Pesquisa"

Copied!
31
0
0

Texto

(1)

Prof. Edward David MorenoEdward David Moreno edwdavid@gmail.com

Aspectos de Segurança em

Aspectos de Segurança em

Hardware – Desafios e

Hardware – Desafios e

Oportunidades de Pesquisa

Oportunidades de Pesquisa

Palestra na FACOM/UFMS 21 de junho de 2013

(2)

Classificação Moderna de

Soluções de Segurança

Qual é o Impacto se essas soluções são embarcadas ……

Qual é o impacto de ter essas soluções em Dispositivos Móveis …..

Aplicações

WEB browser

VPN DRM Secure Storage

Protocolos de Segurança

Protocolos de Comunicação Segura

SSL/TLS, WTLS, IPSEC, S/MIME Protocolos DRM Autenticação Biométrica

(fingerprint, face, voice)

Primitivas Criptográficas

Criptografia Simétrica (RC4, RC5, DES, AES, entre outros)

Hash (Sha-1, MD5)

Criptografia Chave Pública (RSA, ECC)

Assinatura Digital (DAS, ecDSA)

Figura 3. Classificação Moderna de Soluções de Segurança [Ravi, 2006]

Key Exchange (DH,ecDH)

(3)

Criptografia em Hardware

Embarcado

Vantagens Potenciais de algoritmos de criptografia implementados em Hardware Reconfigurável

Agilidade dos Algoritmos

Carga e Atualização dos Algoritmos Eficiência da Arquitetura

Eficiência de Recursos Mudanças nos Algoritmos

Throughput – relativo ao software

(4)

Objetivos do Projeto de Sistemas

Embarcados

■ Qual é o custo da segurança ?

■ Qual é o impacto de soluções

de segurança no desempenho das aplicações ?

■ Quais os parâmetros relevantes

no projeto de soluções seguras ?

■ Novas estratégias ? Novas

Soluções ? Novos algoritmos

■ Suporte Arquitetural para

Segurança ! ■ Implementação de Primitivas/Aplicações de Segurança ! Symptom free Security aware Activity aware Agile Robust Throughput Efficiency Latency Area Power Energy Cost Performance issues Security issues High Security High Performance System

(5)

Aspectos de Segurança e Impacto em Dispositivos Móveis

– PROBLEMA

Com o uso crescente de dispositivos móveis nas aplicações do dia a dia, existe a necessidade de se ter comunicações seguras.

Existem técnicas e estratégias de segurança já conhecidas, porém há pouco conhecimento sobre qual o seu impacto nos dispositivos (memória, maior processamento, maior consumo de energia, e impacto na comunicação).

Objetivos

• Estudar os aspectos arquiteturais de algoritmos e soluções de

segurança já existentes em dispositivos móveis, verificando aspectos tais como: consumo de memória, necessidades de processamento, consumo de energia, impacto na comunicação, impacto no desempenho das aplicações executadas nesses

dispositivos.

• Propor novas estratégias de segurança específicas para sistemas

embarcados, verificando aspectos tais como:

• Propor novos algoritmos e soluções de segurança com aspectos

biométricos em dispositivos móveis.

• Desenvolver novos produtos com melhores critérios de

(6)

Principais Algoritmos Simétricos

Principais Algoritmos Simétricos

Algoritmo Projetista Key (bits) Bloco (bytes) Aplicação

AES J. Daemen, V. Rijmen 128, 192, 256 16 DMSEnvoy

Blowfish Bruce Schneier <= 448 8 Norton Utilities

3DES D. Coppersmith 168 8 SSL, SSH

IDEA X Lai, J. Massey 128 8 PGP, SSH, SSL

RC6 R. Rivest, M.

Robshaw, et al.

128, 192, 256 16 AES candidato

STREAM KEY

RC4 R. Rivest Mínimo 8, máximo 2048 em

múltiplo de 8 bits Default: 128

SSL

(7)

Implementação em Software

Implementação em Software

Linguagem C

(8)

Implementação em Software

Implementação em Software

Linguagem C

Linguagem C

Desempenho em software 0,94 0,88 0,14 3,9 3,35 0,7 5,77 1,4 7,09 0 1 2 3 4 5 6 7 8 DES AES RC5 S e g u n d o s 1 MB 5 MB 10 MB

(9)

Operações nos Algoritmos

Operações nos Algoritmos

XOR Deslocamento/R otação S-BOX Permutação D E S X X X X A E S X X X Se rp en t X X X C as t-12 8 X X M A R S X X X T w of is h X X X X M ag en ta X X X X Fr og X X X B lo w Fi s h X X X R C 5 X X R X X X

(10)

Implementação em Hardware

Implementação em Hardware

FPGAs

FPGAs

19,55 28,789 21,05 0 10 20 30 Ns DES AES RC5 Algoritmos

Tempo de propagação de cada algoritmo em hardware 20,46 55,57 19,00 0,00 20,00 40,00 60,00 MB/seg DES AES RC5 Algoritmos

Taxa de texto cifrado por segundo

(11)

Comparação do DES

Comparação do DES

Desempenho Temporal 400 25 1 0 100 200 300 400 500 1 s 1 s 1 s Hardware c/ Pipeline Hardware s/ Pipeline Software em C Tempo em segundos M eg a B yt es C if ra d o s

(12)

CASAD - Criptoprocessador

(13)

Criptoprocessador CASAD

(14)

Criptoprocessador CASAD

Criptoprocessador CASAD

Desempenho dos algoritmos DES e RC5

1 7,25 17,5 26 25 19 0 5 10 15 20 25 30 DES RC5 Algoritmo M B /s PPGCripto HW

(15)

CASAD – Criptoprocessador

CASAD – Criptoprocessador

DES

DES

Criptoprocessadores Nº de Ciclos MHz MB/s Hifn BCM5802 -- 33 100 Hifn 790x 22 50 143 OpenCores 16 155 620 SecuCore DES 5 166 1999 VLIW 16 122 26

Proc. Freqüência Memória Texto claro Tempo de cifragem P4 1.6 GHz 256 MB 1 MB 0,99 s P3 1.0 GHz 256 MB 1 MB 1,05 s P3 800 MHz 128 MB 1 MB 1,19 s P3 700 MHz 128 MB 1 MB 1,26 s P3 500 MHz 128 MB 1 MB 1,75 s K6 500 MHz 64 MB 1 MB 2,15 s VLIW 122 MHz -- 1 MB 0,038 s

(16)

DES

(17)

Algoritmos Assimetricos

Algoritmos Assimetricos

Tempo de cifrar e decifrar

20 seg 14 seg 16 seg 24 seg 34 seg 22 seg 35 seg 18 seg 0 5 10 15 20 25 30 35 40

cifrar 1.0 cifrar 1.5 decifrar 1.0 decifrar 1.5

Tamanho da chave em bits

te m p o e m s eg u n d o s 24 bits 56 bits Tempo em ns do RSA 21.178 30.241 40.481 55.429 83.382 12.609 16.841 22.895 56.480 34.178 14.899 20.441 28.547 72.456 43.331 0 10.000 20.000 30.000 40.000 50.000 60.000 70.000 80.000 90.000

24 bits 56 bits 128 bits 256 bits 512 bits

xc2vp100-6ff1704 (Virtex II -Pro) Xcv3200e-8fg1156 (Virtex E ) xc3s5000-5fg1156(Spartan 3 )

(18)

Algoritmos Assimetricos

(19)

Arquiteturas Especiais para

Arquiteturas Especiais para

Segurança

(20)

Arquiteturas Especiais para

Arquiteturas Especiais para

Segurança

Segurança

IP Core Tempo de Propagação(ns) Freqüência AES 8,8495 113 MHz RSA1024 9,3458 107 MHz SHA-2 6,3694 157 MHz MD5 7,4627 134 MHz Shanon 8,2645 121 MHz Debug Interface 8,6206 116 MHz Total 8,4033 119 MHz

Core Slices Ocupação

AES 2810 9% RSA1024 3929 13% SHA-2 1974 6% MD5 1225 4% Shanon 2407 8% Debug Interface 10765 35% Total 25391 84%

(21)

Plataformas Multicore

Plataformas Multicore

E/S E/S (A) (B) (C) (n) UPEM 1 UPEM 2 UPEM 3 UPEM n

(22)

Plataformas Multicore

Plataformas Multicore

Pesquisas:

- Cripto-análise

-Sistemas IDS de Alto desempenho

- Genoma Humano – Sequencias de Gens - Processamento de Imagens

(23)

Desafios em Sistemas Embarcados

•Estudar e Implementar algoritmos (ex. criptografia, de Compressão de código, de imagens, entre outros) em hardware, Especificamente FPGAs e SoC, e plataformas embarcadas como microcontroladores, DSP, redes de sensores, plataformas com ouco poder de processamento, quando comparados aos tradicionais sistemas computacionais;

•Projetar processadores para aplicações específicas de segurança em hardware em FPGAs e SoC, eficientes em desempenho e consumo de energia;

Projetar processadores para aplicações específicas de processamento de sinais e imagens, ou aceleradores em hardware, em FPGAs e SoC, eficientes em desempenho e consumo de energia;

(24)

Desafios

em Sistemas Embarcados

•Conhecer, por meio de técnicas de simulação, as características de execução de algumas dessas técnicas em plataformas embarcadas; de modo a descobrir pontos críticos de desempenho e consumo de energia, que auxiliarão na proposta de otimizações e melhoramentos na descrição de arquitetura específicas e eficientes;

•Propor arquiteturas específicas para essas aplicações, visando principalmente o projeto de processadores de aplicações específicas, com respectiva prototipação em FPGAs, da área de segurança, processamento de imagens, e aceleradores e aplicações críticas de performance;

•Caracterizar o uso de memória e consumo de energia de algumas dessas soluções quando executando em sistemas embarcados (processadores embarcados, microcontroladores, FPGAs, SoC, DSP, e plataformas embarcadas);

(25)

Desafios

em Sistemas Embarcados

•Analisar a possibilidade de criar soluções que tenham reconfiguração parcial e/ou total, aproveitando as tecnologias reconfiguráveis;

•Projetar sistemas de segurança (algoritmos criptográficos modernos, tais como algoritmo MQQ, ECC – Criptografia com curvas elípticas e HECC – Criptografia com Curvas Hiper Elípticas, hashing do padrão SHA-3, integração de serviços de segurança) em hardware (FPGAs, microcontroladores, DSPs, SoC) eficientes em processamento, velocidade, uso de memória e consumo de energia.

(26)

Desafios

em Processadores Específicos

•Projetar sistemas novos e modernos de segurança em hardware e em sistemas embarcados, por exemplo, soluções para redes de sensores, soluções para aplicações automotivas, soluções para aplicações médicas, entre outros;

•Propor novas arquiteturas eficientes e especificas para sistemas de segurança e processamento de imagens em hardware e plataformas embarcadas;

•Projetar hardware específico para algoritmos criptográficos modernos, como AES, SHA-3, ECC, HECC, e outros.

•Projetar hardware específico para processamento de sinais biométricos, como voz, reconhecimento de Iris, reconhecimento de fingerprint, entre outros.

(27)

Desafios

em Processadores Específicos

•Projetar aceleradores em hardware para aplicações/algoritmos de processamento de imagens, aplicações biomédicas, multimídia, entre outros.

•Projetar processadores específicos para soluções e integração de serviços de segurança e para tratamento de informações contidas em imagens;

•Gerar IP core de algumas soluções de segurança e de processamento de imagens, que requeiram de otimizações em hardware;

(28)

Desafios

em Multicore e GPUS

•Projetar sistemas multicore eficientes em consumo de energia; •Paralelizar aplicações que requeiram alto desempenho e adequá-las a plataformas multicore de forma eficiente e escalável;

•Criar ferramentas que paralelizem automaticamente aplicações e as executem de forma eficiente em plataformas multicore;

•Projetar e avaliar sistemas Multi-core e uso de GPUs em soluções de segurança e processamento de imagens que requeiram alto desempenho;

(29)

Desafios

em Multicore e GPUS

•Considerando a nova geração da arquitetura unificada dos hardwares gráficos (GPUs), lançada pela nVidia, que veio tornar capaz a execução de programas genéricos, e que existem aplicações com alto grau de paralelismo, e que transformam as GPUs em verdadeiros clusters; existe ainda necessidade de estudar e aplicar as GPU em várias aplicações que requeiram o uso de alto processamento para alto volume de dados;

•Construir ferramentas que auxiliem no processo automático do uso eficiente de GPUs em aplicações de alto volume de informações;

•Verificar o uso de GPUs em soluções modernas de segurança: IDS e IPS de alto desempenho, em algoritmos criptográficos de desempenho crítico, em algoritmos biométricos e etc.

(30)

Desafios

em Consumo de Energia

Parâmetro Valores

Tempo entre execuções

0,16 s Tempo por execução 0,04 s Variação de Voltagem 0,96 V Potência Média durante execução 30,90 W Consumo 1,24 J SHA-1

(31)

Desafios

em Consumo de Energia

•Criar simuladores para diferentes plataformas computacionais;

•- Criar ferramentas que permitam a medição real do consumo de energia na execução de algoritmos e aplicações provenientes do benchmark de sistemas embarcados Mibench (Guthaus 2002), e programas de outros benchmarks de aplicações científicas (Ex. o SPEC), Java (benchmarks de Java), jogos, multimídia, entre outros.

•- Criar ferramentas que detectem os gargalos no consumo de energia, identificando as funções e/ou trechos de código que mais demandam corrente;

•- Otimizar código visando diminuir o consumo de energia;

•- Criar novas estratégias de projeto e comunicação, tanto em hardware quanto em software, que permitam um menor consumo de energia.

Referências

Documentos relacionados

Como posso saudar a mim mesmo no Eu, pois eu sou (eu próprio) a Ventura Suprema Eterna que não tem distinção de cores tais como o branco, etc, que não se acha preso por causa e

Resumo: O presente artigo apresenta alguns benefícios da utilização de ferramentas da Ergonomia e da Usabilidade aplicadas ao Design Sustentável de mobiliário popular para a

Para estruturar a discussão, o texto organiza-se da seguinte forma: na introdução desse artigo esboça-se uma diferença entre educação menor e educação maior;

BA MG SP SC RS AM PE CE BA - Pilar GO PR A KLABIN NO PARANÁ INAUGURAÇÃO DA PRIMEIRA UNIDADE EM TELÊMACO BORBA - PR 1946 MAIS DE COLABORADORES 10.000 Terminal Portuário PLANTA DE

Sobre a relação entre a força de embutimento e lubrificantes, quando os resultados dos ensaios foram segregados para raio da ferramenta com 8 mm, sem a

Evacuação de ar (unicamente para máquinas de secar de evacuação) As operações seguintes efectuam-se antes de ligar a máquina de lavar roupa Modificação da saída de ar..

viria a ser o mais importante brasilianista na área de economia, Werner Baer, publicou um livro sobre a história econômica do Brasil, escrita para alunos norte-americanos, que teve

 Alta taxa de fluxo com baixa perda de carga  Abertura e fechamento fácil da válvula  Regulação precisa e estável.  Baixa pressão de abertura e acionamento 