Data Encryption Standard
Você sabia ...
Arranjar uma seleção Wikipedia para as escolas no mundo em desenvolvimento sem internet foi uma iniciativa da SOS Children. Todas as crianças disponíveis para apadrinhamento de crianças de Crianças SOS são cuidadas em uma casa de família pela caridade. Leia mais ...
A função Feistel (função F) de DES | |
Geral | |
---|---|
Designers | IBM |
Publicado pela primeira vez | 1977 (padronizado em janeiro de 1979) |
Derivado de | Lúcifer |
Sucessores | Triple DES, G-DES, DES-X, LOKI89, ICE |
Detalhe Cipher | |
Tamanhos de chaves | 56 bits |
Tamanhos de bloco | 64 bits |
Estrutura | Equilibrado Rede Feistel |
Rondas | 16 |
Melhor pública criptoanálise | |
DES é hoje considerado inseguro porque um ataque de força bruta é possível (ver Biscoito EFF DES). A partir de 2008, o melhor ataque analítico é criptoanálise linear, o que requer 43 2 plaintexts conhecido e tem uma complexidade de tempo de 2 39-43 (Junod, 2001). |
O Data Encryption Standard (DES, pron .: / ˌ d Eu ˌ Eu ɛ s / Ou / d ɛ z /) É uma anteriormente predominante algoritmo para o criptografia de dados eletrônico. Ele foi muito influente no avanço da moderna criptografia no mundo acadêmico. Desenvolvido na década de 1970 pelo IBM e com base em um projeto mais adiantado por Horst Feistel, o algoritmo foi apresentado à National Bureau of Standards (NBS) na sequência do convite da agência a propor um candidato para a protecção dos não classificados, dados confidenciais de governo eletrônico. Em 1976, após consulta com o Agência de Segurança Nacional (NSA), a NBS eventualmente seleccionado uma versão ligeiramente modificada, que foi publicado na qualidade de funcionário Federal Information Processing Standard (FIPS) para o Estados Unidos em 1977. A publicação de um padrão de criptografia NSA aprovado resultou simultaneamente na sua adopção internacional rápida e escrutínio acadêmico generalizada. Controvérsias surgiu a partir de elementos de design classificados, um relativamente curto comprimento da chave do de chave simétrica bloquear o projeto cifra, eo envolvimento da NSA, alimentando suspeitas sobre uma backdoor. O intenso escrutínio acadêmico o algoritmo recebeu ao longo do tempo levou à compreensão moderna de cifras de bloco e sua criptoanálise.
DES é hoje considerado inseguro para muitas aplicações. Isto é principalmente devido ao tamanho de chave de 56 bits sendo muito pequeno; em janeiro de 1999, distributed.net eo Electronic Frontier Foundation colaboraram para quebrar publicamente uma chave DES em 22 horas e 15 minutos (ver cronologia ). Existem também alguns resultados analíticos que demonstram fraquezas teóricas na cifra, embora sejam inviáveis para montar na prática. O algoritmo é considerado como sendo praticamente segura sob a forma de Triple DES, embora existam ataques teóricos. Nos últimos anos, a cifra foi substituído pelo Advanced Encryption Standard (AES). Além disso, o DES foi retirado como um padrão pelo Instituto Nacional de Padrões e Tecnologia (anteriormente o National Bureau of Standards).
Alguns documentação faz uma distinção entre o DES como um padrão e DES como um algoritmo, referindo-se ao algoritmo como o DEA (Data Encryption Algorithm).
História do DES
As origens do DES voltar para o início dos anos 1970. Em 1972, após a conclusão de um estudo sobre o governo dos EUA de necessidades de segurança de computador, o corpo de padrões norte-americanos NBS (National Bureau of Standards) - agora chamado NIST (National Institute of Standards and Technology) - identificou a necessidade de um padrão de todo o governo para criptografia, informações confidenciais não classificados. Assim, em 15 de Maio de 1973, após consulta com a NSA, NBS solicitou propostas para uma cifra que atendesse os critérios de projeto rigorosos. Nenhum dos argumentos, no entanto, acabou por ser adequado. Um segundo pedido foi emitido em 27 de agosto de 1974. Desta vez, a IBM apresentou um candidato que foi considerado aceitável - uma cifra desenvolvido durante o período 1973-1974 com base em um algoritmo mais cedo, Horst Feistel de Lúcifer cifra. A equipe da IBM envolvido no projeto e análise cifra incluía Feistel, Walter Tuchman, Don Coppersmith, Alan Konheim, Carl Meyer, Mike Matyas, Roy Adler, Edna Grossman, Bill Notz, Lynn Smith, e Bryant Tuckerman.
O envolvimento da NSA no projeto
Em 17 de março de 1975, o DES proposta foi publicada no Registro Federal. Comentários públicos foram solicitados, e no ano seguinte foram realizadas duas oficinas abertas para discutir o padrão proposto. Houve algumas críticas de vários partidos, incluindo a partir de pioneiros criptografia de chave pública Martin Hellman e Whitfield Diffie, citando uma encurtado comprimento da chave eo misterioso " . ", Como evidência de interferência indevida da NSA caixas S A suspeita era de que o algoritmo tinha sido secretamente enfraquecido pela agência de inteligência para que eles - mas ninguém mais - poderia facilmente ler mensagens criptografadas Alan Konheim (um dos designers. de DES), comentou: "Enviamos as caixas-S para Washington. Eles voltaram e foram todos diferentes "O. Senado dos Estados Unidos Select Committee on Intelligence avaliação acções da NSA para determinar se tinha havido qualquer ingerência indevida. No resumo não classificados de suas descobertas, publicadas em 1978, a Comissão escreveu:
No desenvolvimento do DES, NSA convencido IBM que um tamanho de chave reduzido foi suficiente; indirectamente assistida no desenvolvimento das estruturas S-box; e certificado de que o algoritmo final DES era, com o melhor de seu conhecimento, livre de qualquer fraqueza estatística ou matemática.
No entanto, também descobriram que
NSA não interferir com o design do algoritmo de qualquer forma. IBM inventou e desenvolveu o algoritmo, fez todas as decisões pertinentes a respeito dele, e concordou que o acordado no tamanho da chave foi mais do que suficiente para todas as aplicações comerciais para os quais o DES foi pretendidos.
Outro membro da equipe de DES, Walter Tuchman, afirmou: "Nós desenvolvemos o algoritmo DES inteiramente dentro IBM usando IBMistas. A NSA não ditou um único fio!" Em contraste, um livro NSA desclassificado na história cryptologic afirma:
Em 1973 NBS solicitou a indústria privada para um padrão de criptografia de dados (DES). As primeiras ofertas foram decepcionantes, então NSA começou a trabalhar em seu próprio algoritmo. Então Howard Rosenblum, vice-diretor de pesquisa e engenharia, descobriu que Walter Tuchman da IBM estava trabalhando em uma modificação de Lúcifer para uso geral. NSA deu Tuchman uma folga e trouxe-o para trabalhar em conjunto com a Agência sobre sua modificação Lucifer ".
e
NSA trabalhou em estreita colaboração com a IBM para fortalecer o algoritmo contra todos, exceto ataques de força bruta e para fortalecer as tabelas de substituição, chamados S-boxes. Por outro lado, NSA tentaram convencer IBM para reduzir o comprimento da chave de 64-48 pedaços. Em última análise, eles comprometida em uma chave de 56 bits.
Algumas das suspeitas sobre fraquezas escondidas nas caixas-S foram dissipadas em 1990, com a descoberta independente e publicação aberta por Eli e Biham Adi Shamir de criptoanálise diferencial, um método geral para quebrar cifras de bloco. Os S-caixas de DES eram muito mais resistentes ao ataque do que se tivessem sido escolhido ao acaso, sugerindo fortemente que a IBM sabia sobre a técnica na década de 1970. Este foi realmente o caso; em 1994, Don Coppersmith publicado alguns dos critérios originais de design para as caixas-S. Conforme Steven Levy, pesquisadores IBM Watson descobriu ataques de criptoanálise diferencial em 1974 e foram convidados pela ANS para manter o segredo técnica. Latoeiro explica decisão de segredo da IBM, dizendo: "isso foi porque [criptoanálise diferencial] pode ser uma ferramenta muito poderosa, usada contra muitos esquemas, e havia a preocupação de que tais informações no domínio público poderia afetar negativamente a segurança nacional." Levy cita Walter Tuchman:. "[T] hey nos pediu para carimbar todos os nossos documentos confidenciais ... Nós realmente colocar um número em cada um e trancou-os em cofres, porque eles eram considerados governo dos EUA classificada Eles disseram fazê-lo assim. Eu fiz isso ". Bruce Schneier observou que "Levou a comunidade acadêmica duas décadas para descobrir o que a NSA 'ajustes' realmente melhorou a segurança de DES."
O algoritmo como uma norma
Apesar das críticas, o DES foi aprovado como um padrão federal em novembro de 1976, e publicado em 15 de Janeiro de 1977, FIPS PUB 46, autorizado para uso em todos os dados não classificados. Posteriormente, foi reafirmada como o padrão em 1983, 1988 (revisto como FIPS-46-1), 1993 (FIPS-46-2), e novamente em 1999 (FIPS-46-3), esta última prescrição " DES triplo "(veja abaixo). Em 26 de Maio de 2002, o DES foi finalmente substituído pelo Advanced Encryption Standard (AES), na sequência de um concurso público. Em 19 de Maio de 2005, FIPS 46-3 foi oficialmente retirado, mas NIST aprovou DES triplo ao longo do ano de 2030 para informações do governo sensível.
O algoritmo também está especificado na ANSI X3.92, NIST SP 800-67 e ISO / IEC 18033-3 (como um componente de TDEA).
Outro ataque teórico, criptoanálise linear, foi publicado em 1994, mas foi um ataque de força bruta em 1998 que demonstrou que o DES poderia ser atacado muito praticamente, e destacou a necessidade de um algoritmo de substituição. Estes e outros métodos de criptoanálise são discutidos em mais detalhes posteriormente neste artigo.
A introdução de DES é considerado como tendo sido um catalisador para o estudo acadêmico da criptografia, em particular de métodos para quebrar cifras de bloco. De acordo com uma retrospectiva sobre NIST DES,
- O DES pode ser dito ter "salto começou" o estudo não-militar eo desenvolvimento de algoritmos de criptografia. Na década de 1970 havia muito poucos criptógrafos, exceto para aqueles em organizações militares ou de inteligência, e pouco estudo acadêmico da criptografia. Existem hoje muitos cryptologists acadêmicos ativos, departamentos de matemática com fortes programas em criptografia, e as empresas de segurança da informação comercial e consultores. Uma geração de cryptanalysts cortou sua análise dentes (que está tentando "quebrar") o algoritmo DES. Nas palavras do criptógrafo Bruce Schneier, "DES fez mais para galvanizar o campo de criptoanálise do que qualquer outra coisa. Agora havia um algoritmo para estudar." Uma ação surpreendente da literatura aberta em criptografia na década de 1970 e 1980 tratou do DES, eo DES é o padrão contra o qual cada algoritmo de chave simétrica desde então tem sido comparado.
Cronologia
Data | Ano | Evento |
---|---|---|
15 de maio | 1973 | NBS publica um primeiro pedido de um algoritmo de criptografia padrão |
27 de agosto | 1974 | NBS publica um segundo pedido de algoritmos de criptografia |
17 de março | 1975 | DES é publicada no Federal Register para comentar |
Agosto | 1976 | Primeiro workshop sobre DES |
Setembro | 1976 | Segundo workshop, discutindo fundação matemática de DES |
Novembro | 1976 | DES é aprovado como um padrão |
15 de janeiro | 1977 | DES é publicado como um padrão FIPS PUB FIPS 46 |
1983 | DES é reafirmada pela primeira vez | |
1986 | Videocipher II, um sistema de codificação de televisão por satélite com base em DES, começa por uso HBO | |
22 de janeiro | 1988 | DES é reafirmada pela segunda vez como FIPS 46-1, substituindo FIPS PUB 46 |
Julho | 1991 | Biham e Shamir redescobrir criptoanálise diferencial, e aplicá-la a um sistema de criptografia 15-round DES-like. |
1992 | Biham e Shamir relatamos o primeiro ataque teórico com menos complexidade do que a força bruta: criptoanálise diferencial. No entanto, isso requer uma irrealista 2 47 plaintexts escolhidos. | |
30 de dezembro | 1993 | DES é reafirmada pela terceira vez como FIPS 46-2 |
1994 | A primeira análise criptográfica experimental de DES é realizada utilizando criptoanálise linear (Matsui, 1994). | |
Junho | 1997 | O DESCHALL Projecto quebra uma mensagem criptografada com DES pela primeira vez em público. |
Julho | 1998 | O EFF do DES biscoito (Deep crack) quebra uma chave DES em 56 horas. |
Janeiro | 1999 | Juntos, Rachadura profunda e distributed.net quebrar uma chave DES em 22 horas e 15 minutos. |
25 de outubro | 1999 | DES é reafirmada pela quarta vez como FIPS 46-3, que especifica o uso preferencial de Triple DES, com DES único permitido apenas em sistemas legados. |
26 de novembro | 2001 | O Advanced Encryption Standard é publicado em FIPS 197 |
26 de maio | 2002 | A AES torna-se eficaz |
26 de julho | 2004 | A retirada de FIPS 46-3 (e um par de padrões relacionados) é proposta no Federal Register |
19 de maio | 2005 | NIST retira FIPS 46-3 (ver Federal Register vol 70, número 96) |
Abril | 2006 | O FPGA máquina paralela com base COPACOBANA das Universidades de Bochum e Kiel, na Alemanha, quebra DES em 9 dias no $ 10.000 custo de hardware. Dentro de um ano melhorias de software reduziu o tempo médio de 6,4 dias. |
Novembro | 2008 | O sucessor de COPACOBANA, a máquina RIVYERA reduziu o tempo médio de menos de um único dia. |
Descrição
- Por questões de brevidade, a descrição seguinte omite as transformações exactas e permutações que especificam o algoritmo; para referência, os detalhes podem ser encontrados nas DES material suplementar.
DES é o arquétipo cipher block - um algoritmo que leva uma seqüência de comprimento fixo de bits de texto sem formatação e transforma-lo através de uma série de operações complicadas em outro bitstring texto cifrado com o mesmo comprimento. No caso de DES, o tamanho do bloco é 64 bits. O SF também utiliza um chave para personalizar a transformação, para que desencriptação só pode supostamente ser realizada por aqueles que conhecem a chave particular usado para criptografar. A chave ostensivamente consiste de 64 bits; no entanto, apenas 56 destes são realmente utilizada pelo algoritmo. Oito bits são utilizados exclusivamente para a verificação paridade, e são depois descartadas. Daí a eficaz comprimento da chave é 56 bits, e é sempre citado como tal.
A chave é, nominalmente, armazenadas ou transmitidas como 8 bytes, cada um com paridade ímpar. De acordo com ANSI X3.92-1981, seção 3.5:
Um pouco em cada byte da chave de 8 bits pode ser utilizada para detecção de erros nos de geração de chaves, distribuição e armazenamento. Os bits 8, 16, ..., 64 são para uso em assegurar que cada byte é de paridade ímpar.
Como outras cifras de bloco, DES por si só não é um meio seguro de criptografia mas deve ser usado em um modo de operação. FIPS-81 especifica vários modos para uso com DES. Comentários adicionais sobre o uso de DES estão contidos em FIPS-74.
Estrutura geral
A estrutura geral do algoritmo é mostrado na Figura 1: existem 16 fases de processamento idênticos, denominados rodadas. Há também uma inicial e final de permutação , denominado IP e FP, que são inversos (IP "desfaz" a acção de PF, e vice-versa). IP e FP têm quase nenhum significado de criptografia, mas aparentemente foram incluídas a fim de facilitar blocos de carga dentro e fora de hardware meados dos anos 1970.
Antes de os principais rodadas, o bloco é dividido em duas metades de 32 bits e processado alternadamente; este entrecruzamento é conhecido como o Esquema de Feistel. A estrutura Feistel garante que descriptografia e criptografia são processos muito semelhantes - a única diferença é que as subchaves são aplicadas na ordem inversa ao descriptografar. O resto do algoritmo é idêntico. Isso simplifica muito a implementação, particularmente em hardware, já que não há necessidade de algoritmos de criptografia e descriptografia separadas.
O símbolo denota a ⊕ EX-OR (XOR) operação. A função F-embaralha metade de um quarteirão em conjunto com alguns dos principais. A saída do F-função é então combinada com a outra metade do bloco, e as metades são trocadas antes da próxima série. Após a rodada final, as metades são trocados; esta é uma característica da estrutura de Feistel que faz criptografia e descriptografia processos semelhantes.
A função Feistel (F)
A função F, ilustrada na Figura 2, opera na metade de um bloco (32 bits) de cada vez e é composto por quatro fases:
- Expansão - a meia quadra de 32 bits é expandido para 48 bits usando a permutação de expansão, denotado E no diagrama, duplicando a metade dos bits. A saída é constituída por oito pedaços de 6 bits (8 * 6 = 48 bits), contendo cada um uma cópia dos correspondentes 4 bits de entrada, de uma cópia do bit imediatamente adjacente a partir de cada uma das peças de entrada para ambos os lados.
- Mistura de chaves - o resultado é combinado com uma subchave usando uma operação XOR. 16 subchaves de 48 bits - um para cada rodada - são derivadas da chave principal utilizando o cronograma chave (descrito abaixo).
- Substituição - após a mistura na subchave, o bloco é dividido em oito pedaços de 6 bits antes do processamento pelo S-caixas ou caixas de substituição. Cada um dos oito S-boxes substitui seus seis bits de entrada com quatro bits de saída de acordo com uma transformação não-linear, fornecida sob a forma de um tabela de pesquisa. As caixas-S fornecer o núcleo de segurança do DES - sem eles, a cifra seria linear, e trivialmente quebrável.
- Permutação - finalmente, as 32 saídas dos S-boxes são reorganizados de acordo com um fixo de permutação , P-box. Este é projetado para bits de saída de que, depois de permutação, cada S-box estão distribuídos em 6 caixas S diferentes na próxima rodada.
A alternância de substituição a partir dos S-boxes, e permutação de bits a partir da caixa P e E-expansão proporciona assim chamado " confusão e difusão ", respectivamente, um conceito identificado por Claude Shannon na década de 1940 como uma condição necessária para uma cifra de seguro, mas prático.
Cronograma Key
A Figura 3 ilustra a programação de chave de encriptação - o algoritmo que gera os subchaves. Inicialmente, 56 bits da chave são seleccionadas a partir do inicial 64 permutada por escolha 1 (PC-1) - os restantes oito bits são eliminados ou usado como bits de verificação de paridade. Os 56 bits são, então, dividida em duas metades 28 bits; cada metade é subsequentemente tratada separadamente. Em sucessivas rodadas, ambas as metades são rodados deixado por um ou dois bits (especificadas para cada rodada), e depois 48 bits subchave são selecionados por Permuted Choice 2 (PC-2) - 24 bits a partir da metade esquerda, e 24 a partir da direita . As rotações (indicado por "<<<" no diagrama) significa que um conjunto diferente de bits é utilizado em cada subchave; cada bit é usado em cerca de 14 dos 16 subchaves.
A programação chave para a descriptografia é semelhante - as subchaves estão em ordem inversa em comparação com criptografia. Além de que a mudança, o processo é o mesmo que para a encriptação. As mesmas 28 bits são passados para todas as caixas de rotação.
Segurança e criptoanálise
Embora mais informação foi publicada na criptoanálise de DES do que qualquer outra cifra de bloco, o ataque mais prática até à data ainda é uma abordagem de força bruta. Várias pequenas propriedades cryptanalytic são conhecidos, e três ataques teóricos são possíveis, que, apesar de terem uma complexidade teórica menos de um ataque de força bruta, exigem um número irrealista de ou conhecido plaintexts escolhidos para realizar, e não são uma preocupação na prática.
Ataque de força bruta
Para qualquer cifra, o método mais básico de ataque é a força bruta - tentando cada chave possível, por sua vez. O comprimento da chave determina o número de chaves possíveis, e, portanto, a viabilidade desta abordagem. Para DES, foram levantadas questões sobre a adequação do seu tamanho de chave no início, antes mesmo de ser adotado como um padrão, e foi o pequeno tamanho de chave, em vez de criptoanálise teórica, que ditou a necessidade de um algoritmo de substituição. Como resultado de discussões envolvendo consultores externos, incluindo a NSA, o tamanho da chave foi reduzido de 128 bits para 56 bits para caber em um único chip.
Na academia, várias propostas para uma máquina DES-cracking foram avançados. Em 1977, Diffie e Hellman propuseram uma máquina com um custo estimado de US $ 20 milhões, o que poderia encontrar uma chave DES em um único dia. Em 1993, Wiener havia proposto uma máquina de chave-search custando US $ 1 milhão que iria encontrar uma chave dentro de 7 horas. No entanto, nenhuma dessas primeiras propostas foram já implementadas, ou, pelo menos, não há implementações foram reconhecidos publicamente. A vulnerabilidade dos DES foi praticamente demonstrada no final de 1990. Em 1997, RSA Security patrocinou uma série de competições, oferecendo um prêmio de US $ 10.000 para a primeira equipe que quebrou uma mensagem criptografada com DES para o concurso. Esse concurso foi ganho pelo DESCHALL Project, liderado por Rocke Verser, Matt Curtin, e Justin Dolske, usando ciclos ociosos de milhares de computadores em todo o Internet. A viabilidade de quebrar DES rapidamente foi demonstrada em 1998, quando um costume DES-cracker foi construído pelo Electronic Frontier Foundation (EFF), um grupo de direitos civis do ciberespaço, ao custo de aproximadamente US $ 250.000 (ver Biscoito EFF DES). Sua motivação era mostrar que o DES era quebrável na prática, bem como na teoria: "Há muitas pessoas que não acreditam uma verdade até que eles possam vê-lo com seus próprios olhos mostrando-lhes uma máquina física que pode quebrar o DES em alguns. dias é a única maneira de convencer algumas pessoas de que eles realmente não pode confiar em sua segurança de DES ". A máquina brute-forçados uma chave em um pouco de pesquisa mais de 2 dias.
A próxima DES cracker foi confirmada a máquina COPACOBANA construído em 2006 por equipes da Universidades de Bochum e Kiel, tanto na Alemanha . Ao contrário da máquina FEP, COPACOBANA consiste disponíveis comercialmente circuitos integrados, reconfiguráveis. 120 destas field-programmable gate arrays (FPGA) do tipo Xilinx Spartan-3 1000 funcionem em paralelo. Eles estão agrupados em 20 módulos DIMM, cada um contendo 6 FPGAs. O uso de hardware reconfigurável faz a máquina aplicável a outras tarefas de código quebrando assim. Um dos aspectos mais interessantes da COPACOBANA é o seu factor de custo. Uma máquina pode ser construído por aproximadamente US $ 10.000. A redução de custos em cerca de um fator de 25 sobre a máquina FEP é um exemplo da melhoria contínua dos hardware digital. Ajuste para a inflação mais de 8 anos produz uma melhoria ainda maior de cerca de 30x. Desde 2007, SciEngines GmbH, uma empresa spin-off dos dois parceiros do projecto de COPACOBANA aprimorou e sucessores de COPACOBANA desenvolvido. Em 2008, a sua COPACOBANA RIVYERA reduziu o tempo para quebrar DES para menos de um dia, com 128 Spartan-3 5000 de. Atualmente SciEngines RIVYERA detém o recorde de brute-force quebrar DES, tendo utilizado 128 Spartan-3 5000 FPGAs. Seu modelo de 256 Spartan-6 LX150 tem ainda reduzido neste momento.
Ataques mais rápido do que de força bruta
Há três ataques conhecidos que pode quebrar o total de 16 rodadas de DES com menos complexidade do que uma pesquisa de força bruta: criptoanálise diferencial (DC), criptoanálise linear (LC), e Ataque de Davies. No entanto, os ataques são teóricas e são inviáveis para montar na prática; esses tipos de ataque às vezes são denominados pontos fracos certificational.
- Criptoanálise diferencial foi redescoberto no final de 1980 por Eli e Biham Adi Shamir; era conhecido anteriormente para ambos IBM e da NSA e mantido em segredo. Para quebrar o total de 16 rodadas, criptoanálise diferencial requer 2 49 plaintexts escolhidos. DES foi concebido para ser resistente a DC.
- Criptoanálise linear foi descoberto por Mitsuru Matsui, e precisa de 2 43 plaintexts conhecidos (Matsui, 1993); o método foi implementado (Matsui, 1994), e foi o primeiro a criptoanálise experimental de DES para ser relatado. Não há evidência de que o DES foi adaptado para ser resistente a este tipo de ataque. Uma generalização de LC - criptoanálise linear múltipla - foi sugerido em 1994 (Kaliski e Robshaw), e foi adicionalmente refinado por Biryukov e outros. (2004); a análise sugere que várias aproximações lineares podem ser usados para reduzir as necessidades de dados do ataque de pelo menos um factor de 4 (isto é, 41 em vez de 2 2 43). Uma redução similar da complexidade de dados podem ser obtidos de uma variante de texto plano escolhido de criptoanálise linear (Knudsen e Mathiassen, 2000). Junod (2001) realizaram vários experimentos para determinar a complexidade da criptoanálise linear tempo real, e relatou que ele foi um pouco mais rápido do que o previsto, o que requer tempo equivalente a duas avaliações 39 -2 41 DES.
- Melhoria Davies 'ataque: enquanto linear e diferencial cryptanalysis são técnicas gerais e pode ser aplicado a uma série de regimes, Davies' ataque é uma técnica especializada para DES, sugerida pela primeira vez por Donald Davies nos anos oitenta, e melhorado por Biham e Biryukov (1997). A forma mais poderosa do ataque requer 2 50 plaintexts conhecidos, tem uma complexidade computacional de 2 a 50, e tem uma taxa de sucesso de 51%.
Também houve ataques contra propostas versões reduzidas-redondas da cifra, ou seja, versões do DES com menos de 16 rodadas. Esta análise apresenta uma visão sobre quantas rodadas são necessários para a segurança, e quanto de uma "margem de segurança" a versão completa retém. Criptoanálise diferencial linear foi proposta por Langford e Hellman em 1994, e combina diferencial e criptoanálise linear em um único ataque. Uma versão melhorada do ataque pode quebrar 9-round DES com duas 15,8 plaintexts conhecidos e tem uma complexidade de tempo 2 29.2 (Biham e outros, 2002).
Propriedades cryptanalytic menores
DES exibe a propriedade complementação, ou seja, que
onde é o bit a bit complemento de indica a criptografia com chave e denotar blocos de texto simples e encriptado, respectivamente. A propriedade complementação significa que o trabalho de um ataque de força bruta pode ser reduzida por um factor de dois (ou um único bit) sob uma pressuposto de texto plano escolhido. Por definição, esta propriedade também se aplica também a TDES cifra.
DES também tem quatro chamada chaves fracas. Encryption (E) e descriptografia (D) sob uma chave fraca têm o mesmo efeito (veja involução):
- ou equivalentemente,
Existem também seis pares de teclas semi-fracas. Criptografia com um dos pares de chaves semiweak, , Opera de forma idêntica a desencriptação com o outro, :
- ou equivalentemente,
É fácil o suficiente para evitar as chaves fracas e semiweak em uma implementação, seja por meio de testes para eles explicitamente, ou simplesmente escolhendo aleatoriamente chaves; as probabilidades de escolher uma chave fraca ou semiweak por acaso são desprezíveis. As chaves não são realmente qualquer mais fraco do que quaisquer outras chaves de qualquer maneira, como eles não dão um ataque de qualquer vantagem.
O SF também tem sido provado não ser um grupo , ou, mais precisamente, o conjunto (Para todas as chaves possíveis ) Sob composição funcional não é um grupo, nem "fechar" a ser um grupo. Esta foi uma questão em aberto por algum tempo, e se tivesse sido o caso, que teria sido possível quebrar DES, e vários modos de criptografia, tais como Triple DES não aumentaria a segurança.
Sabe-se que a máxima segurança criptográfica de DES é limitado a cerca de 64 bocados, mesmo quando se escolhe, independentemente, todos os subchaves redondas em vez de derivar-los a partir de uma chave, que de outro modo permitir uma segurança de 768 bits.
Algoritmos de substituição
Preocupações sobre a segurança ea operação relativamente lenta de DES em software motivado pesquisadores a propor uma variedade de alternativa bloquear projetos de cifra, que começaram a aparecer no final de 1980 e início de 1990: os exemplos incluem RC5, Blowfish, IDEA, NewDES, SAFER, CAST5 e EFCA. A maioria destes desenhos mantido o tamanho do bloco de 64 bits do DES, e poderia actuar como um substituto "drop-in", embora eles normalmente utilizado uma chave de 64 bit ou de 128 bits. Na URSS o GOST 28147-89 algoritmo foi introduzido, com um tamanho de bloco de 64 bits e uma chave de 256 bits, que também foi usado na Rússia mais tarde.
Si DES pode ser adaptada e reutilizado num esquema mais seguro. Muitos ex-usuários DES usar agora Triple DES (TDES), que foi descrito e analisado por um dos titulares de patentes de DES (veja FIPS PUB 46-3); que envolve a aplicação de DES três vezes com dois (2TDES) ou três (3TDES) chaves diferentes. TDES é considerado como seguro de forma adequada, embora seja muito lento. Uma alternativa menos dispendiosa é computacionalmente DES-X, o que aumenta o tamanho da chave por XORing material de chave extra antes e após o DES. GDES foi uma variante DES proposta como um modo de acelerar a criptografia, mas mostrou-se susceptível a criptoanálise diferencial.
Em 2001, depois de uma competição internacional, NIST selecionou uma nova cifra, o Advanced Encryption Standard (AES), como uma substituição. O algoritmo que foi seleccionado como o AES foi apresentado pelos seus criadores sob o nome Rijndael. Outros finalistas do NIST Competição AES incluído RC6, Serpente, MARS, e Twofish.