Flux rss

Cryptographie - Introduction à DES


Cryptography - Introduction to DESCriptografía - Introducción a DES
Criptologia Codificação por substituição Codificação simétrica Codificação assimétrica Public Key Infractructure (PKI) Cryptosystemes Legislação Protocolos protegidos Mais informações

DES, A codificação à chave secreta

15 de maio de 1973 o NBS (National Institute of Standards and Technology) lançou uma chamada Federal Register (o equivalente a Estado-Unix do Jornal Oficial em França) para a criação de um algoritmo de codificação que responde aos critérios seguintes:

  • possuir um elevado nível de segurança ligado à uma chave pequena que serve à codificação e déchiffrement
  • ser compreensível
  • não depender da confidencialidade do algoritmo
  • ser adaptável e económico
  • ser eficaz e exportável

Fim 1974, IBM propõe “Lucifer”, que, graças ao NSA (National Security Agency), é alterado 23 de novembro de 1976 para dar o DES (Datar Encriptação Standard). O DES foi finalmente verão aprovado em 1978 pelo NBS. O DES foi normalizado pelo ANSI (American Cidadão Standard Institute) sob o nome de ANSI X3.92, mais conhecido sob a denominação DEA (Data Encryption Algorithm).

Princípio do DES

Trata-se de um sistema de codificação simétrico por blocos de 64 bits, das quais de 8 bits (um byte) servem de teste de paridade (para verificar a integridade da chave). Cada bit de paridade da chave (1 todas as 8 bits) serve a testar um dos bytes da chave por paridade ímpar, quer dizer que cada uma das bits de paridade é ajustado de forma a ter um número ímpar “de 1” no byte à quem pertence. A chave possui por conseguinte um comprimento “útil” de 56 bits, que significa que únicas 56 bits servem realmente no algoritmo.

O algoritmo consiste a efetuar combinações, substituições e permutações entre o texto a calcularem e a chave, fazendo de modo que as operações possam fazer-se nos dois sentidos (para déchiffrement). A combinação entre substituições e permutações é chamada código produzido.

A chave é codificada das 64 bits e formada de 16 blocos de 4 bits, geralmente notados k1 à k16. Já que as“únicas” 56 bits servem certamente a calcular, pode existir 256 (quer dizer 7.2*1016) chaves diferentes!

O algoritmo do DES

As grandes linhas do algoritmo são as seguintes:

  • Fracionamento do texto em blocos de 64 bits (8 bytes);
  • Permutação inicial dos blocos;
  • Corte dos blocos em duas partes: esquerda e direita, nomeadas G e D;
  • Etapas de permutação e de substituição repetidas 16 vezes (chamados redondos);
  • Recollement das partes esquerdo e direita seguidamente permutação inicial oposto.

algorithme du DES

Fracionamento do texto

Permutação inicial

Inicialmente, cada bit de um bloco é apresentada à permutação inicial, podendo ser representada pela matriz de permutação inicial (notado PI) seguinte:

PI
585042342618102
605244362820124
625446383022146
645648403224168
57494133251791
595143352719113
615345372921135
635547393123157

Esta matriz de permutação indica, percorrendo a matriz da esquerda para a direita seguidamente de parte superior inferior, que o 58ème bit do bloco de texto de 64 bits reencontra-se em primeira posição, o 50ème em segunda posição e assim de sequência.

Scindement em blocos de 32 bits

Uma vez a permutação inicial realizada, o bloco de 64 bits é cindido em dois blocos de 32 bits, notadas respetivamente G e D (para esquerda e direita, a notação anglo-saxona L e R para Left and Right). Nota-se G0 e D0 o estado inicial destes dois blocos:

G0
585042342618102
605244362820124
625446383022146
645648403224168

D0
57494133251791
595143352719113
615345372921135
635547393123157


É interessante observar que G0 contem todas as bits que possuem uma posição igual na mensagem inicial, enquanto D0 contem as bits de posição ímpar.

Rondas

Os blocos Gn e Dn são apresentados um conjunto de transformação iterativos chamados redondos, esclarecidos neste esquema, e cujos detalhes são dados plus bas:

rondes

Função de expansão

As 32 bits do bloco D0 são estendidas à 48 bits graças à uma mesa (matriz) chamadas conta de expansão (notado E), na qual as 48 bits são misturadas e 16 entre eles são duplicados:

E
3212345
456789
8910111213
121314151617
161718192021
202122232425
242526272829
28293031321

Assim, a última bit de D0 (quer dizer a 7.a bit do bloco de origem) torna-se o primeiro, o primeiro torna-se o segundo,…
De mais, as bits 1,4,5,8,9,12,13,16,17,20,21,24,25,28 e 29 de D0 (respetivamente 57,33,25, l, 59,35,27,3,6l, 37,29,5,63,39,31 e 7 do bloco de origem) são duplicadas e disseminação na matriz.

OU exclusivo com a chave

A matriz resultante de 48 bits é chamada D'0 ou E[D0]. O algoritmo procede de seguidamente às OU exclusivo entre a primeira chave K1 et E[D0]. O resultado deste OU exclusivo é uma matriz de 48 bits que chamaremos D0 por conveniência (não se age do D0 de partida!).

Função de substituição

D0é cindido seguidamente em 8 blocos de 6 bits, notado D0i. Cada um destes blocos passa por funções de seleção (chamados às vezes caixas de substituição ou funções de compressão), notadas geralmente Si.
As primeiras e últimas bits de cada D0idetermina (binário) a linha da função de seleção, as outras bits (respetivamente 2,3,4 e 5) determinam a coluna. A seleção da linha que faz-se sobre duas bits, ele lá A4 possibilidades (0,1,2,3). A seleção da coluna que faz-se das 4 bits, há 16 possibilidades (0 à 15). Graças à esta informação, a função de seleção “seleciona” um valor codificado das 4 bits.


Eis a primeira função de substituição, representado por uma matriz de 4 por 16:

S1
 0123456789101112131415
01441312151183106125907
10157414213110612119538
24114813621115129731050
31512824917511314100613

quer dizer D01 igual à 101110. As primeiras e últimas bits dão 10, quer dizer 2 binário. As bits 2,3,4 e 5 dão 0111, quer dizer 7 binário. O resultado da função de seleção é por conseguinte o valor situado à linha n°2, na coluna n°7. Trata-se do valor 11, quer dizer do 111.


Cada um dos 8 blocos de 6 bits passou na função de seleção correspondente, que dá em saída 8 valores de 4 bits cada uma. Eis as outras funções de seleção:

S2
 0123456789101112131415
01518146113497213120510
13134715281412011069115
20147111041315812693215
31381013154211671205149

S3
 0123456789101112131415
01009146315511312711428
11370934610285141211151
21364981530111212510147
31101306987415143115212

S4
 0123456789101112131415
07131430691012851112415
11381156150347212110149
21069012117131513145284
331506101138 94511127214

S5
 0123456789101112131415
02124171011685315130149
11411212471315015103986
24211110137815912563014
31181271142136150910453

S6
 0123456789101112131415
01211015926801334147511
11015427129561131401138
29141552812370410113116
34321295151011141760813

S7
 0123456789101112131415
04112141508133129751061
11301174911014351221586
21411131237141015680592
36111381410795015142312

S8
 0123456789101112131415
01328461511110931450127
11151381037412561101492
17114191214206101315358
12114741081315129035611

Cada bloco de 6 bits assim é substituído num bloco de 4 bits. Estas bits são agrupadas para formar um bloco de 32 bits.

Permutação

O bloco de 32 bits obtido por último é apresentado à uma permutação P incluindo eis a mesa:

P
167202129122817
11523265183110
282414322739
19133062211425

Exclusivo


O conjunto destes resultados em saída de P é apresentado às OU Exclusivo com o G0 de partida (como indicado sobre o primeiro esquema) para dar D1, enquanto o D0 inicial dá G1.

Iteração

O conjunto das etapas precedentes (rondas) é reiterado 16 vezes.

Permutation initiale inverse

No fim das iterações, os dois blocos G16 e D16“recollés, seguidamente apresentados à permutação inicial oposto:

PI-1
408481656246432
397471555236331
386461454226230
375451353216129
364441252206028
353431151195927
342421050185826
33141949175725


O resultado em saída é um texto codificado de 64 bits!

Geração das chaves

Já que o algoritmo do apresentado acima é público, toda a segurança descansa sobre a complexidade chaves de codificação.


O algoritmo abaixo mostra como obter partir de uma chave de 64 bits (composto de 64 caráteres alfanuméricos quaisquer) 8 chaves diversificadas de 48 bits cada uma que serve no algoritmo do DES :

algorithme de generation des cles DES

Inicialmente as bits de paridade da chave são eliminadas a fim de obter uma chave de um comprimento útil de 56 bits.

A primeira etapa consiste numa permutação notada CP-1 cuja matriz é apresentada abaixo:

CP-1
57494133251791585042342618
10259514335271911360524436
635547393123157625446383022
1466153453729211352820124


Esta matriz pode com efeito escrever-se sob forma de dois matriz Gi e Di (para esquerda e direita) compostas cada um de 28 bits:

Gi
5749413325179
1585042342618
1025951433527
1911360524436

Di
63554739312315
7625446383022
1466153453729
211352820124

Nota-se G0 e D0o resultado desta primeira permutação.

Estes dois blocos sofrem seguidamente uma rotação à esquerda, de tais maneiras que as bits em segunda posição tomam a primeira posição, os em terceira posição o segundo,…As bits em primeira posição passam em última posição.

Os 2 blocos de 28 bits são agrupados seguidamente num bloco de 56 bits. Este passa por uma permutação, notada CP-2, fornecendo em saída um bloco de 48 bits, representando a chave Ki.

CP-2
14171124153281562110
23191242681672720132
415231374755304051453348
444939563453464250362932

Iterações do algoritmo permitem dar as 16 chavesK1 à K16 utilizadas no algortihme.

LS
124681012141517192123252728

TDES, uma alternativa o DES

Em 1990 de Eli Biham e Adi Shamir puseram ao ponto o cryptanalyse diferencial que procura pares de texto em claridade e pares de texto calculados. Este método anda até a um número de rondas inferior à 15, ora número de 16 rondas está um presente no algoritmo apresentado acima.

Por outro lado, ainda que uma chave de 56 bits dá um número enorme de possibilidades, numerosos processadores permitem calcular mais de 106 chaves por segundo, assim, utilizados a paralelamente sobre um elevado número de máquinas, possível para um grande organismo (um Estado por exemplo) encontrar a boa chave…

Uma solução a curto prazo consiste a encadear três codificação DES à ajuda de duas chaves de 56 bits (que équivait à uma chave de 112 bits). Este método é chamado Triplo DES, notado TDES (às vezes 3DES ou 3-DES).

Triple DES - 3DES

O TDES permite aumentar significativamente a segurança, contudo tem o inconveniente essencial de pedir igualmente mais recursos para a codificação e déchiffrement.

Distingue-se habitualmente vários tipos de codificação tripla DES :

  • DES-EEE3 :3 codificações DES com 3 chaves diferentes;
  • DES-EDE3 : uma chave diferente para cada uma das 3 operações DES (codificação, déchiffrement, codificação);
  • DES-EEE2 et DES-EDE2 : uma chave diferente para a segunda operação (déchiffrement).


Em 1997 o NIST lançou uma nova chamada à projeto para elaborar o AES (Advanced Encryption Standard), um algoritmo de codificação destinado a substituir o DES.

O sistema de codificação DES trazido 5 todos os anos. Em 2000 aquando da última revisão, após um processo de avaliação que durou 3 anos, o algoritmo concebido conjuntamente por dois candidatos belgas, Senhores Vincent Rijmen e Joan Daemen era escolhidos como novo standard pelo NIST. Este novo algoritmo baptizado RIJNDAEL pelos seus inventores, substituirá doravante o DES.


Mais informações

Ce document intitulé « Cryptographie - Introduction à DES » issu de Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.

Résultats pour Cryptographie

Cryptographie Pourquoi la cryptographie? L'homme a toujours ressenti le besoin de dissimuler des informations, bien avant même l'apparition des premiers ordinateurs et de machines à calculer. Depuis sa création, le réseau Internet a tellement évolué qu'il est... www.commentcamarche.net/contents/crypto/crypto.php3
Cryptographie - Enigma "N’accordez jamais une confiance aveugle à un système de cryptographie " - Gilles Dubertret L'histoire de Enigma C'est à la fin de la première guerre mondiale qu'est apparue la nécessité de crypter les messages (bien que les techniques de... www.commentcamarche.net/contents/crypto/enigma.php3
Logiciels de Cryptographie et Stéganographie 1. Cryptographie 1.1 Cryptozor 1.2 Krypto Zone 1.3 TrueCrypt 1.3 Autres logiciels 2. Stéganographie 2.1 JPEGX 2.2 Autres logiciels 1. Cryptographie Pour bien comprendre le principe de la cryptographie, je vous conseillerais de visiter... www.commentcamarche.net/faq/sujet-109-logiciels-de-cryptographie-et-steganographie

Résultats pour Cryptographie

Légalité de la cryptographie en FranceUne personne physique possède le droit d'utiliser un logiciel de cryptographie capable de crypter avec une clé supérieure à 128 bits sans avoir à le déclarer. Par contre, pour une entreprise, il faut obligatoirement déclarer le logiciel (il ne s'agit... www.commentcamarche.net/faq/sujet-130-legalite-de-la-cryptographie-en-france
Sécurité sur réseaux sans filVoici 4 règles de base pour avoir un "sans fil" relativement sécurisé. 1. Changer le SSID par défaut 2. Eviter le broadcast SSID 3. Cryptage 4. Filtrage par adresse MAC Notes et remerciements 1. Changer le SSID par défaut Par défaut,... www.commentcamarche.net/faq/sujet-1778-securite-sur-reseaux-sans-fil
Se logguer à distance avec ssh ( Windows )( Pour ceux qui voudraient avoir un rappel sur ssh : http://www.commentcamarche.net/crypto/ssh.php3 ) Contrairement à la plupart des distributions Linux, Windows ne possède pas de client ssh en natif. Il faut donc en installer un. ... www.commentcamarche.net/faq/sujet-80-se-logguer-a-distance-avec-ssh-windows

Résultats pour Cryptographie

Algorithme de cryptage (Résolu)je voudrais bien savoir quels sont les algorithme de cryptage les plus utilisés sur le marché .Merci de votre réponse.ca sera trés important pour moi www.commentcamarche.net/forum/affich-1309644-algorithme-de-cryptage
Win32/CryptExe (Résolu)Bonjour! j'ai fais un scan avec AVG et il me dit que mon ordi est infecté par Win32/CryptExe, j'ai regardé les messages envoyés précecdemment a ce propos, mais je comprends plus ou moins ce qu'il faut faire, est-ce que quelqu'un... www.commentcamarche.net/forum/affich-2717132-win32-cryptexe
Virus win32:SkiMorph ( cryp ) (Résolu)Bonjour, j'ai mon antivurus avast a detecter ce virus win32 : SkiMorph (cryp) . pouvez vous m'aidez .merci www.commentcamarche.net/forum/affich-8403833-virus-win32-skimorph-cryp

Résultats pour Cryptographie

Télécharger Crypt For Freec'est un utilitaire gratuit de cryptage de données.Vous pourrez crypter vos fichier en utilisant trois algorithmes de chiffrages, le Blowfish (448 bits), AES (256 bits) et DESX (128 bits). Vous pourrez envoyer des courriels chiffrés via le module... www.commentcamarche.net/telecharger/telecharger-34055795-crypt-for-free
Télécharger Zero Footprint CryptZero Footprint Crypt est un puissant programme de cryptage. En quelques minutes vous serez capable de crypter et de cacher des fichiers sensibles ; plus besoin de vous soucier des espions et des yeux balladeurs. L'interface de l'utilisateur est... www.commentcamarche.net/telecharger/telecharger-34056227-zero-footprint-crypt
Télécharger Crypt Edit Crypt Edit est un puissant éditeur de texte en remplacement à Windows NotePad et WordPad. Il comprend des fonctions intéressantes telles que la cryptographie (algorithmes RC4, MD5). Il peut également exporter facilement les documents au format... www.commentcamarche.net/telecharger/telecharger-34055812-crypt-edit

Résultats pour Cryptographie

Belkin G+ MIMO Modem RouterSupport NAT,Firewall,Algorithme de cryptage:WPA Pre-Shared Key,WPA (Radius Server),128bit WEP,64bit Encryption,Fréquence:2.4GHz,Protocole de Switching :Ethernet,Vitesse max du réseau sans fil:108 Mbps,Protocole Data Link :Ethernet,Fast Ethernet,... www.commentcamarche.net/guide-achat/belkin-g-mimo-modem-router-639954-fiche-technique
D-Link DSL-G624TG 624 624 T 624T 624T,Firewall,Protocole de Routing :Static Routing,RIP v.1,RIP v.2,Fréquence:2.4GHz,Algorithme de cryptage:64/128 bits WEP data encryption,Wi-Fi Protected Access (WPA) security,Protocole de Switching :Ethernet,Protocole de Remote... www.commentcamarche.net/guide-achat/d-link-dsl-g624t-619494-fiche-technique
Linksys WAP54G Wireless Access PointWAP 54 54 G 54G 54G,Hauteur:4.8 cm,Poids:0.5 Kg,Portes LAN:1,Nombre de antennes:2,Largeur:18.6 cm,Profondeur:17.5 cm,Fréquence:2.4GHz,Algorithme de cryptage:128-bit WEP,64-bit WEP,Line coding format:DBPSK,DQPSK,CCK,OFDM,Vitesse max du réseau... www.commentcamarche.net/guide-achat/linksys-wap54g-wireless-access-point-187249-fiche-technique

Résultats pour Cryptographie

Le chiffrement de VigenèreLe chiffrement de Vigenère Le chiffrement de Vigenère est un cryptosystème symétrique, ce qui signifie qu'il utilise la même clé pour le chiffrement et le déchiffrement. Le chiffrement de Vigenère ressemble beaucoup au chiffrement de César, à la... www.commentcamarche.net/contents/crypto/vigenere.php3
PGP - Pretty Good PrivacyIntroduction à PGP PGP (Pretty Good Privacy) est un cryptosystème (système de chiffrement) inventé par Philip Zimmermann, un analyste informaticien. Philip Zimmermann a travaillé de 1984 à 1991 sur un programme permettant de faire fonctionner RSA... www.commentcamarche.net/contents/crypto/pgp.php3
Les systèmes à clé publiquesle principe du chiffrement à clé publique Le principe de chiffrement asymétrique (appelé aussi chiffrement à clés publiques) est apparu en 1976, avec la publication d'un ouvrage sur la cryptographie par Whitfield Diffie et Martin Hellman. Dans un... www.commentcamarche.net/contents/crypto/clepublique.php3