Algoritmo de criptografia de dados internacional - International Data Encryption Algorithm
Em geral | |
---|---|
Designers | Xuejia Lai e James Massey |
Derivado de | PES |
Sucessores |
MMB , MESH , Akelarre , IDEA NXT (FOX) |
Detalhe de cifra | |
Tamanhos de chave | 128 bits |
Tamanhos de bloco | 64 bits |
Estrutura | Esquema Lai-Massey |
Rodadas | 8,5 |
Melhor criptoanálise pública | |
A chave pode ser recuperada com uma complexidade computacional de 2 126,1 usando bicicletas estreitas . Este ataque é computacionalmente mais rápido do que um ataque de força bruta total, embora não fosse, a partir de 2013, computacionalmente viável. |
Na criptografia , o International Data Encryption Algorithm ( IDEA ), originalmente chamado de Improved Proposed Encryption Standard ( IPES ), é uma cifra de bloco de chave simétrica projetada por James Massey da ETH Zurich e Xuejia Lai e foi descrito pela primeira vez em 1991. O algoritmo foi planejado como um substituto para o Data Encryption Standard (DES). IDEA é uma pequena revisão de uma anterior cifra Proposta Encryption Standard (PES).
A cifra foi projetada sob um contrato de pesquisa com a Hasler Foundation, que se tornou parte da Ascom-Tech AG. A cifra foi patenteada em vários países, mas estava disponível gratuitamente para uso não comercial. O nome "IDEA" também é uma marca comercial . As últimas patentes expiraram em 2012 e o IDEA agora está livre de patentes e, portanto, totalmente gratuito para todos os usos.
IDEA foi usado em Pretty Good Privacy (PGP) v2.0 e foi incorporado depois que a cifra original usada em v1.0, BassOmatic , foi considerada insegura. IDEA é um algoritmo opcional no padrão OpenPGP .
Operação
IDEA opera em blocos de 64 bits usando uma chave de 128 bits e consiste em uma série de 8 transformações idênticas (uma rodada , veja a ilustração) e uma transformação de saída (a meia rodada ). Os processos de criptografia e descriptografia são semelhantes. O IDEA obtém muito de sua segurança intercalando operações de diferentes grupos - adição e multiplicação modular e OR eXclusive bit a bit (XOR) - que são algébricamente "incompatíveis" em algum sentido. Mais detalhadamente, esses operadores, que lidam com quantidades de 16 bits, são:
- XOR bit a bit (OR exclusivo) (denotado com um círculo azul mais ⊕ ).
- Módulo de adição 2 16 (indicado com uma caixa verde mais ⊞ ).
- Módulo de multiplicação 2 16 + 1, onde a palavra totalmente zero (0x0000) nas entradas é interpretada como 2 16 e 2 16 na saída é interpretada como a palavra totalmente zero (0x0000) (denotada por um ponto vermelho circulado ⊙ ).
Após as 8 rodadas vem uma “meia rodada” final, a transformação de saída ilustrada abaixo (a troca dos dois valores do meio cancela a troca no final da última rodada, de modo que não há troca líquida):
Estrutura
A estrutura geral do IDEA segue o esquema Lai-Massey . XOR é usado para subtração e adição. IDEA usa uma função de meia volta dependente de tecla. Para trabalhar com palavras de 16 bits (significando 4 entradas em vez de 2 para o tamanho do bloco de 64 bits), o IDEA usa o esquema Lai-Massey duas vezes em paralelo, com as duas funções circulares paralelas entrelaçadas uma com a outra. Para garantir uma difusão suficiente, dois dos sub-blocos são trocados após cada rodada.
Cronograma chave
Cada rodada usa 6 subchaves de 16 bits, enquanto a meia rodada usa 4, um total de 52 para 8,5 rodadas. As primeiras 8 subchaves são extraídas diretamente da chave, com K1 da primeira rodada sendo os 16 bits inferiores; outros grupos de 8 chaves são criados girando a chave principal para a esquerda 25 bits entre cada grupo de 8. Isso significa que ela é girada menos de uma vez por rodada, em média, para um total de 6 rotações.
Decifrar
A descriptografia funciona como a criptografia, mas a ordem das chaves das rodadas é invertida e as subchaves das rodadas ímpares são invertidas. Por exemplo, os valores das subchaves K1-K4 são substituídos pelo inverso de K49-K52 para a respectiva operação de grupo, K5 e K6 de cada grupo devem ser substituídos por K47 e K48 para descriptografia.
Segurança
Os projetistas analisaram o IDEA para medir sua força contra a criptoanálise diferencial e concluíram que ele é imune a certas suposições. Nenhuma fraqueza linear ou algébrica de sucesso foi relatada. Em 2007, o melhor ataque aplicado a todas as chaves poderia quebrar o IDEA reduzido a 6 rodadas (a cifra IDEA completa usa 8,5 rodadas). Observe que uma "interrupção" é qualquer ataque que requeira menos de 2 128 operações; o ataque de 6 rodadas requer 2 64 textos simples conhecidos e 2 126,8 operações.
Bruce Schneier pensou muito sobre o IDEA em 1996, escrevendo: "Em minha opinião, é o melhor e mais seguro algoritmo de bloqueio disponível para o público no momento." ( Applied Cryptography , 2nd ed.) No entanto, em 1999 ele não estava mais recomendando o IDEA devido à disponibilidade de algoritmos mais rápidos, algum progresso em sua criptoanálise e a questão de patentes.
Em 2011, a IDEA de 8,5 rounds foi quebrada usando um ataque meet-in-the-middle. De forma independente, em 2012, o IDEA completo de 8,5 rodadas foi quebrado usando um ataque de bicicletas estreitas , com uma redução da força criptográfica de cerca de 2 bits, semelhante ao efeito do ataque anterior de bicicletas em AES ; entretanto, este ataque não ameaça a segurança do IDEA na prática.
Chaves fracas
A programação de teclas muito simples torna a IDEA sujeita a uma classe de teclas fracas ; algumas chaves contendo um grande número de bits 0 produzem criptografia fraca. Eles são de pouca preocupação na prática, sendo suficientemente raros que são desnecessários para evitar explicitamente ao gerar chaves aleatoriamente. Uma correção simples foi proposta: XORing cada subchave com uma constante de 16 bits, como 0x0DAE.
Classes maiores de teclas fracas foram encontradas em 2002.
Essa ainda é uma probabilidade insignificante de ser uma preocupação para uma chave escolhida aleatoriamente, e alguns dos problemas são corrigidos pela constante XOR proposta anteriormente, mas o artigo não tem certeza se todos eles são. Um redesenho mais abrangente do cronograma-chave da IDEA pode ser desejável.
Disponibilidade
Um pedido de patente para IDEA foi depositado pela primeira vez na Suíça (CH A 1690/90) em 18 de maio de 1990, em seguida, um pedido de patente internacional foi depositado sob o Tratado de Cooperação de Patentes em 16 de maio de 1991. As patentes foram eventualmente concedidas na Áustria , França , Alemanha , Itália , Holanda , Espanha , Suécia , Suíça , Reino Unido (entrada no Registro de Patente Europeia para a patente europeia nº 0482154 , depositada em 16 de maio de 1991, emitida em 22 de junho de 1994 e expirada em 16 de maio de 2011), Estados Unidos Estados ( Patente dos EUA 5.214.703 , concedida em 25 de maio de 1993 e expirada em 7 de janeiro de 2012) e Japão (JP 3225440) (expirada em 16 de maio de 2011).
MediaCrypt AG está agora oferecendo um sucessor para IDEA e se concentra em sua nova cifra (lançamento oficial em maio de 2005) IDEA NXT , que antes era chamada de FOX.
Literatura
- Hüseyin Demirci, Erkan Türe, Ali Aydin Selçuk, A New Meet in the Middle Attack on The IDEA Block Cipher, 10º Workshop Anual em Áreas Selecionadas em Criptografia , 2004.
- Xuejia Lai e James L. Massey, A Proposta para um Novo Padrão de Criptografia em Bloco , EUROCRYPT 1990, pp. 389-404
- Xuejia Lai e James L. Massey e S. Murphy, cifras de Markov e criptoanálise diferencial, Advances in Cryptology - Eurocrypt '91 , Springer-Verlag (1992), pp. 17-38.