2010-11-11 23 views
0

Comment est-ce que je pourrais utiliser des clés équivalentes de l'algorithme TEA pour obtenir deux clés 32 bits d'un chiffrement TEA à double encodage en utilisant un meet dans l'attaque du milieu, en C?Comment est-ce que je pourrais employer la clef équivalente de faiblesse pour casser le chiffrage de TEA?

J'ai 4 pièces de texte clair connu et le texte de chiffrement correspondant, j'ai besoin de récupérer les 2 clés.

Il est encodée comme ceci:

encode(plaintext,k1); 
encode(plaintext,k2); // plaintext being the result from encode number 1 

Je peux aussi aller dans l'autre avec le décodage, ce qui permet la rencontre dans l'attaque du milieu que je connais un texte chiffré.

Il a une taille de bloc de 32 bits et une clé de 32 bits, la clé est fournie sous forme de deux nombres de 16 bits. Par exemple, j'ai pu constater que ces deux clés produisaient exactement le même texte chiffré; J'ai eu de la chance et suis tombé sur un paper qui m'a montré les chiffres comme une clé de 128 bits (800000000,00000000,00000000,00000000) et une clé (00000000,00000000,800000000,00000000). Je les ai changés en 32 bits (plus d'une supposition mais cela a fonctionné).

screenshot

+1

Je pense que vous devrez nous en dire un peu plus sur la façon dont le chiffrement avec lequel vous travaillez diffère de "vrai" TEA. Ont-ils changé la fonction ronde, l'horaire clé, ou les deux? Ma conjecture immédiate serait seulement l'horaire clé, mais vous ne savez jamais ... –

+0

simple édition ajoutée – molleman

+1

duplication possible de [comment casser un chiffon de thé affaibli?] (Http://stackoverflow.com/questions/4158664/how -to-crack-a-weak-thé-bloc-chiffré) –

Répondre

1

son affaiblissement, car il utilise 2 32 touches de bits pour le chiffrement double. C'est génial de voir que chaque fois que Mike Scott définit une affectation, vous pouvez le voir demandé sur stackoverflow: D

Aussi moleman, c'est un problème identique seulement les clés sont 32 bits et non 16 bits. la raison pour laquelle les deux clés fonctionnent de la même manière s'appelle des clés équivélantes, c'est un défaut connu dans le thé que l'algorithme original avait 4 clés équivalentes.