ULUSLARARASI DENİZ TİCARETİ VE YÜK TAŞIMACILIĞ
1.1. DÜNYA EKONOMİSİ VE DENİZ TİCARETİNİN GELİŞİMİ
1.1.2. Liman ve Çoklu (Multimodal) Taşımacılıktaki Gelişmeler
Os ataques DPA revisados e discutidos até então tem a propriedade de explorar apenas um valor intermediário do algoritmo alvo para revelar a chave criptográfica, pois apenas os dados de saída da primeira rodada ou os dados de entrada da última rodada são considerados durante as análises. Estes ataques são também referenciados na literatura como ataques de primeira ordem. Se vários valores intermediários são considerados para formular as hipóteses de chave, então os ataques são referenciados como ataques de alta ordem (do inglês, High Order DPA - HO DPA).
Prouff et al. em [PRO09] propuseram uma versão especializada do ataque DPA, chamada de DPA de segunda ordem (do inglês, Second Order DPA, ou SO-DPA). Esta proposta é especializada em atacar criptosistemas protegidos por métodos de mascaramento de dados. Esta análise combina as fugas de informações causadas pelo processamento e pelo mascaramento de dados, relacionando-as a fim de encontrar a chave secreta conforme proposto também em [MES00] [WAD04] [PEE05] e [OSW06].
Bevan e Knudsen [BEV03] propõem melhorias no ataque proposto por Kocher [KOC99]. Os Autores apresentam justificativas para a ocorrência de picos em hipóteses incorretas de subchaves e propõem utilizar estas informações de modo a tornar os ataques mais eficientes, ou seja, reduzir o número de traços necessários para revelar a chave secreta. Esta eficiência é obtida através de ataques multi-bits, onde a função seleção proposta por Kocher não é aplicada apenas a um bit por ataque e sim a combinações de dois ou mais bits. Deste modo, os consumos de potência são somados tornando os ataques mais rápidos e eficientes conforme demonstram seus resultados.
Brier et al. em [BRI04] propuseram outra especialização do ataque DPA denominada Análise por Correlação de Potência (do inglês, Correlation Power Analysis - CPA). CPA é uma análise DPA que emprega um modelo linear de consumo de potência aplicado sobre os dados manipulados. Esta abordagem basicamente visa reduzir o problema de picos fantasmas durante os ataques DPA. Classicamente utiliza-se o modelo peso Hamming para correlacionar dados manipulados e o consumo de potência conforme revisado na Seção 2.2.1. Neste caso, utiliza-se o modelo de potência distância Hamming, cujo cálculo é realizado segundo a variação do número de bits com valor ‘1’ entre uma mensagem m e uma dada mensagem de referência mr estimada previamente segundo
Brier et al. em [BRI04]. Logo, o consumo de potência pode ser resumido pela equação
(
m mr)
baH
W = ⊕ + , onde ‘a’ é um ganho escalar entre a distância HD ‘H’ e a potência consumida ‘W’. Já b inclui todas as variações de consumo decorrentes dos elementos que compõem o restante do circuito e que são independentes dos dados manipulados tais como variações de tensão (offsets), atrasos intrínsecos aos componentes e ruído. Com base nesta Equação são obtidos fatores lineares de correlação que relacionam as variâncias dos termos considerados com a potência consumida medida. Estes fatores de correlação são capazes de rejeitar falsas hipóteses de subchaves segundo o modelo de potência HD adotado como mostrado em [BRI04]. Estas análises são utilizadas para avaliar a robustez das arquiteturas propostas neste trabalho.
Fahn e Pearson em [FAH99] propuseram a análise de potência por inferência (do inglês, Inferential Power Analysis - IPA). Esta análise se desenvolve basicamente em duas etapas. Inicialmente realizam-se operações estatísticas tais como diferenciação entre traços de consumo e médias entre outras, aplicadas sobre uma grande quantidade de traços de consumo a fim de aprender detalhes de implementação, o que conduz à localização e identificação dos bits da chave criptográfica. A etapa seguinte extrai a chave por inferência, a partir de poucos traços de potência, conforme [FAH99].
Chari et al. em [CHA02] introduziram os ataques denominados em inglês Template
Attacks. Estes ataques probabilísticos assumem um modelo Gaussiano de ruído para
definir e registrar os templates de traços DPAs relativos a um conjunto pré-definido de operações. As informações são aprendidas e registradas segundo parâmetros tais como a média e uma matriz de covariância as quais são otimizadas para cada operação, de acordo com o princípio da probabilidade máxima. A seguir, o ataque propriamente dito ocorre quando um traço relativo a uma operação tem suas propriedades estatísticas comparadas ao repositório de templates através de regras Bayesianas. Estas regras classificam o traço de acordo com as probabilidades e atribuem ao traço a operação correspondente. Pressupõe-se que o repositório de templates e os traços relativos ao canal lateral analisado sejam obtidos através do mesmo dispositivo.
Goubin em [GOU03] apresenta uma análise de potência refinada (do inglês,
Refined Power Analysis - RPA) que permite revelar a chave criptográfica de algoritmos
que se baseiam na estrutura algébrica de curvas elípticas tal como o algoritmo ECC (do inglês, Eliptic Curve Cryptography) mesmo na presença de algumas contramedidas. Outra técnica proposta por Akishita e Takagi em [AKI03] explora uma característica especial das curvas elípticas onde o consumo é nulo. Este método é uma extensão de RPA proposto por Goubin e é definido pelos Autores como análise de potência nula (do inglês, Zero- value Point Attacks - ZPA). Mesmo em pontos da curva usados para a encriptação de dados onde não exista coordenadas com valor nulo, o método proposto explora registradores laterais que podem obter o valor nulo e sobrepor algumas possíveis contramedidas. Logo, estes tipos de análises não são uma ameaça à segurança de algoritmos tais como DES e AES.
Nagashima et al. em [NAG07] propuseram um método para realizar ataques DPA em criptosistemas que usam inserção de atrasos aleatoriamente como contramedida. O
método proposto realiza uma ressincronização de formas de onda de diferentes fases como pré-processamento ao ataque DPA. Os Autores usam funções matemáticas normalmente usadas em tratamento de sinais, tais como a Transformada Discreta de Fourier para definir parâmetros que identificam a diferença de fase entre curvas de potência. Embora seja uma interessante ferramenta de criptoanálise, o método limita-se apenas a analisar o deslocamento de tempo que um traço de consumo de potência sofre durante uma encriptação completa.
2.3.1 DISCUSSÃO SOBRE OS ATAQUES
Uma revisão dos avanços em ataques DPA é realizada e resumida na Tabela 2.1. Depois que Kocher et al. propuseram os ataques TA, SPA e DPA, estes ataques sofreram algumas modificações ou receberam etapa de pré-processamento, porém sua essência permanece a mesma.
Tabela 2.1 Revisão de ataques DPAs e variantes.
Ataque proposto Método Proposta desta Tese
Kocher et al. [KOC99] SPA e DPA SPA – simples observação do consumo de potência DPA – análise diferencial e estatística do consumo de potência
Não vulnerável a estes ataques, até onde se testou
Prouff et al.
[PRO09] SO-DPA
DPA na presença de mascaramento de
dados
Não usa mascaramento de dados. Não vulnerável a este
ataque Brier et al.
[BRI04] CPA
DPA com uso de modelo de potência
Não vulnerável a estes ataques, até onde se testou Fahn e Pearson
[FAH99] IPA
Modelos estatísticos para identificar fugas
de informação
Não testado. Acredita-se na dificuldade em detectar padrões
de consumo Chari et al.[CHA02] Templates Ferramentas estatísticas para identificar fuga de informação
Não testado. Acredita-se na dificuldade em detectar padrões
de consumo Goubin
[GOU03] RPA
Propriedades de
curvas elípticas Não vulnerável Akishita e
Takagi [AKI03] ZPA
Propriedade de curvas
elípticas Não vulnerável
Nagashima et al. [NAG07] Phase-match DPA Transformada de Fourrier (tratamento de sinais)
Não testado. Acredita-se que seja efetivo apenas para variações de fase simples em
As criptoanálises que se baseiam em métodos probabilísticos tais como IPA e ataques por templates apresentam resultados apenas em ensaios com criptosistemas sem contramedidas. Embora usem ferramentas e modelos estatísticos eficientes, na prática a aleatoriedade inserida pelas arquiteturas propostas neste trabalho representa um desafio a este tipo de criptoanálise.
Os métodos RPA, ZPA são criptoanálises propostas para algoritmos que se baseiam em propriedades algébricas de curvas elípticas que por sua vez fogem o escopo do presente trabalho. Já SO-DPA é proposta como um método de ataque DPA capaz de correlacionar mensagens, mensagens mascaradas e criptogramas para encontrar a chave secreta do sistema. Como o trabalho proposto não usa este tipo de contramedida, esta abordagem não é adequada para realizar avaliação da robustez, tais como RPA e ZPA.
Os ataques propostos por Nagashima et al. [NAG07] e Clavier et al. [CLA00] embora sejam especializados em criptoanalisar sistemas protegidos pela abordagem de inserção de aleatoriedade para ocultar a fuga de informações, os estudos de casos apresentados mostram ataques bem sucedidos apenas à inserções de aleatoriedade simples tal como instruções dummies (nenhuma operação realizada) e deslocamento temporal do processo de encriptação integral. No presente trabalho a execução do algoritmo usando a arquitetura GALS com domínios de freqüência aleatórios representa um cenário desafiador para estes tipos de ataques. Acredita-se que estas abordagens juntamente com métodos de ressincronização de curvas sejam o caminho para quebrar o sigilo de criptosistemas que empreguem aleatoriedade do modo como é proposto aqui.