Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Algorithme d'énumération

2 réponses
Avatar
Pierre Y.
Salut,

Le rapport avec la crypto est assez lointain. Je vous préviens que dans
la suite je risque de tromper un peu dans le vocabulaire mathématique.
J'ai fait quelques recherches, sur le site de Knuth en particulier ou
il propose un algorithme qui ressemble assez à ce que je veux faire
mais que je n'ai pas dû traduire correctement.

En fait je cherche un générateur de la liste exhaustive des tuples de
longueur n d'un ensemble e de départ.

Exemple e=(a,b,c) et n=3

aaa, aab, aac, aba, abb, abc...

Si e=(a,b,c,d) et n=3

aaa, aab, aac, aad, aba, abb, abc, abd...

L'objectif est de faire une attaque "brute force" sur un mot de passe
chiffré avec MD5 (c'est un jeu cette histoire...) et je cherche le
générateur le plus rapide possible. D'après mes recherches il est
possible de trouver un algorithme sans boucle (loopless) basé sur des
dérivés des codes Gray (inventés par Louis Gros dixit Knuth himself
dans ses pré-fascicules au volume 4 de The Art Of Computer Programming)
et que Knuth préférerait appeller des cycles de Gray.

La séquence générée serait

aaa, aab, aac, abc, aba, abb, acb, acc, aca, bca,...

au lieu de

aaa, aab, aac, aba,...

Car le code gray binaire original ne change qu'un bit entre deux
valeurs à la sortie de l'algorithme.

L'algorithme que j'ai trouvé implique un rapport entre la longueur n
des tupes générés et le cardinal de l'ensemble e. Moi ça ne m'arrange
pas et je n'arrive pas à le modifier pour que ça marche.

Vous avez des pistes ? Merci par avance,

Cordialement

Pierre Y.

--
Message généré par MesNews

2 réponses

Avatar
Jacques Caron
Salut,

On Thu, 22 Jul 2004 23:44:59 +0200, Pierre Y.
wrote:

Le rapport avec la crypto est assez lointain. Je vous préviens que dans
la suite je risque de tromper un peu dans le vocabulaire mathématique.
J'ai fait quelques recherches, sur le site de Knuth en particulier ou il
propose un algorithme qui ressemble assez à ce que je veux faire mais
que je n'ai pas dû traduire correctement.

En fait je cherche un générateur de la liste exhaustive des tuples de
longueur n d'un ensemble e de départ.

Exemple e=(a,b,c) et n=3

aaa, aab, aac, aba, abb, abc...

Si e=(a,b,c,d) et n=3

aaa, aab, aac, aad, aba, abb, abc, abd...

L'objectif est de faire une attaque "brute force" sur un mot de passe
chiffré avec MD5 (c'est un jeu cette histoire...) et je cherche le
générateur le plus rapide possible.


La partie génération aura vraisemblablement un poids négligeable par
rapport au chiffrement MD5, alors autant faire le plus simple possible, et
les générer dans l'ordre décrit plus haut (qui est un simple incrément
dans une base non standard), non?

La séquence générée serait

aaa, aab, aac, abc, aba, abb, acb, acc, aca, bca,...

au lieu de

aaa, aab, aac, aba,...

Car le code gray binaire original ne change qu'un bit entre deux valeurs
à la sortie de l'algorithme.


Quel intérêt dans le cas présent?

Jacques.
--
Interactive Media Factory
Création, développement et hébergement
de services interactifs: SMS, SMS+, Audiotel...
http://www.imfeurope.com/

Avatar
Anonymous Anonymat
Merci d'aller voir ma réponse news:cdt875$df0$ sur
news:fr.comp.algorithmes et de la commenter.

Cordialement,
A.A.