Quelqu'un sache pourquoi il s'appelle Table de Rainbow? Je viens de rappeler que nous avons appris qu'il y a une attaque appelée "attaque de dictionnaire". Pourquoi ce n'est pas un dictionnaire d'appel? P>
4 Réponses :
Je ne sais pas d'où vient le nom, mais les différences sont: p>
Si vous ne savez pas, vous pouvez essayer wikipedia: en.wikipedia.org/wiki/dictionary_attack Ceci est sur l'attaque pré-calculée du dictionnaire
Pas exactement vrai que le dictionnaire contient peu d'articles et de table arc-en-ciel contient toutes les combinaisons. Tout dépend de quelles chaînes de la valeur de la clé ou de l'arc-en-ciel vous mettez respectivement dans le dictionnaire et la table arc-en-ciel. Les chaînes arc-en-ciel sont tout simplement plus efficaces.
La table arc-en-ciel peut également contenir une partie de l'espace de recherche, par ex. tout alphanumérique de longueur i, ou tout numérique de longueur 2i et ainsi de suite
@osgx: Je ne vois pas ce que tu veux dire. J'ai vérifié la page que vous avez liée et je ne trouve rien à propos de l'emplacement du nom.
GUFFA, il peut y avoir une variante de dictionnaire qui a à la fois des entrées et des sorties (dictionnaire précalculé)
@osgx: Cela n'a pas du tout plus clair. Que veux-tu dire? Y a-t-il quelque chose sur la page que vous avez liée à cela a quelque chose à voir avec où vient le nom?
Rainbow est une variante d'attaque de dictionnaire (attaque de dictionnaire pré-calculé pour être exact), mais il faut moins d'espace que le dictionnaire complet (au prix du temps nécessaire pour trouver une clé dans le tableau). L'autre extrémité de ce compromis de mémoire spatiale est la recherche complète (attaque de force brute = zéro précomputation, beaucoup de temps). P>
Dans la table arc-en-ciel, le dictionnaire précalculé des paires clé-CIPHERText est comprimé dans les chaînes. Chaque étape de la chaîne est faite à l'aide de différentes fonctions de réception. Et la table a beaucoup de chaînes, il ressemble donc à un arc-en-ciel. p>
Dans cette image, différentes fonctions de compression K1, K2, K3 ont une couleur comme dans l'arc-en-ciel: La table, stockée dans le fichier contient uniquement des premières colonnes et les dernières colonnes, car les colonnes du milieu peuvent être recintées. P>
p>
Intéressant. +1. J'ai une compréhension de haut niveau de la façon dont les choses fonctionnent; Je dois lire dans plus de détails je pense!
@ user496949, si vous avez besoin d'une explication supplémentaire, demandez simplement. J'ai lu plusieurs papiers à ce sujet et comprendre le principe de la table arc-en-ciel
Parce qu'il contient tout le "spectre" des possibilités.
Une attaque d'un dictionnaire est une technique bruteforce de juste des possibilités d'essayer. Comme ceci (python pseudo code) p> Cependant, une table arc-en-ciel fonctionne différemment, car il s'agit d'inverser les hachages. Un aperçu de haut niveau d'un hachage est qu'il comporte un certain nombre de bacs: p> qui correspondent aux parties binaires de la chaîne de sortie - c'est la manière dont la chaîne finit la longueur est. Comme le produit Hash, cela affecte les différentes parties des bacs de différentes manières. Donc, le premier octet (ou tout le champ de saisie est accepté) L'entrée affecte (disons, simplistes) les bacs 3 et 4. L'entrée suivante affecte 2 et 6. et ainsi de suite. P> une table arc-en-ciel est un calcul de toutes les possibilités em> d'une corbeille donnée, c'est-à-dire toutes les inverses possibles de cette corbeille, pour chaque bin ... C'est pourquoi il finit si grand. Si la première valeur de la corbeille est Pourquoi n'est-ce pas appelé une attaque de dictionnaire? Parce que ce n'est pas le cas. P> Comme je l'ai vu votre question précédente, laissez-moi développer sur les détails que vous recherchez là-bas. Un hachage cryptographiquement sécurisé doit être sûr, idéalement de la taille des entrées publiques jusqu'à des fichiers entiers. Pour précalcomputer les valeurs d'un hash pour un fichier entier em> prendrait pour toujours. Donc, une table arc-en-ciel est conçue sur un petit sous-ensemble bien compris de sorties, par exemple les permutations de tous les caractères AZ sur un champ de 10 caractères. P> C'est pourquoi le conseil de mot de passe pour vaincre les attaques de dictionnaire fonctionnent ici . Plus les sous-ensembles de l'ensemble complet des entrées possibles vous mettent dans votre entrée pour le hachage, plus une table arc-en-ciel doit contenir pour la recherche. Les tailles de données requises se retrouvent stupidement grand et le temps de rechercher. Alors, pensez-y: p> Ainsi, faire des mots de passe longs et compliqués permet aux tables arc-en-ciel commencent à prendre des disques de tailles de rayons bleues. Ensuite, conformément à votre question précédente, vous commencez à ajouter des fonctions dérivées de salage et de hasch et vous faites une solution générale à la cracking hach (er). P> Le but ici est de rester en avance sur la puissance de calcul disponible . p> p> 0x1 code>, vous devez disposer d'une liste de recherches de toutes les valeurs de bin2 code> et toutes les valeurs de bin3 de travail en arrière via le hachage, ce qui finit par faire Vous une valeur. P>
[A-Z] code> pour 5-8 code> caractères, ce n'est pas trop mauvais une table arc-en-ciel. Li>
[A-Z] [0-9] Code> Vous avez encore plus de recherche. LI>
[A-ZA-Z0-9] code>. Enfin, collez-vous en [\ w] code> c'est-à-dire n'importe quel caractère imprimable que vous pouvez penser, et encore une fois, vous regardez une table massive. Li>
ul>
Il existe une sous-classe d'attaques de dictionnaire qui utilise un dictionnaire précalculé.
Malheureusement, certaines des déclarations ne sont pas correctes. Contrairement à ce qu'on apporte des tables arc-en-ciel postées ne contiennent pas toutes les possibilités d'un point de frappe donné, ce n'est pas ce que ceux générés soient utilisés. Ils peuvent être générés pour couvrir 99,9 mais en raison du caractère aléatoire d'une fonction de hachage, il n'y a pas de gurantee que chaque clairexuel est couvert. P>
Chaque chaîne est composée de liens ou de marches et chaque étape est constituée d'une fonction de hachage et de réduction. Si votre chaîne était longue de 100 liens, vous iriez ce nombre de fonctions de hachage / de réduction, puis tout jeter entre les deux, à l'exception du début et de la fin. P>
Pour trouver la plaine d'un hachage donné, vous effectuez simplement la réduction / hachage x montant de la longueur de votre chaîne. Donc, vous exécutez l'étape une fois et vérifiez contre le noeud final si c'est une manche que vous répéteriez ... jusqu'à ce que vous ayez parcouru toute la longueur de votre chaîne. S'il y a un match, vous pouvez ensuite régénérer la chaîne du point de départ et vous pourrez peut-être trouver la plaine. Si après la régénération, il n'est pas correct, il s'agit d'une fausse alarme. Cela se produit en raison des collisions causées par la fonction de hachage de réduction. Étant donné que la table contient de nombreuses chaînes, vous pouvez effectuer une grande recherche contre tous les points d'extrémité de la chaîne chaque étape, il s'agit essentiellement de la magie qui permet de permettre une vitesse. Cela conduira également à de fausses alarmes, car vous n'avez besoin que de régénérer les chaînes qui vous permettent de sauver beaucoup de temps en sautant des chaînes inutiles. P>
Ils ne contiennent pas de dictionnaires .... Eh bien, pas les tables traditionnelles Il existe des variantes de tables arc-en-ciel qui intègrent l'utilisation de dictionnaires cependant. P>
C'est à ce sujet. Il existe de nombreuses façons que ce processus a été optimisé, notamment en supprimant les chaînes de fusion / dupliquée et de créer des tables parfaites et de les stocker dans différents emballages pour économiser de l'espace et du temps de chargement. P>
Si vous avez un intérêt pour Crypto, je vous recommande de soutenir zone51.stackexchange.com/proposals/15811/Cryptography
FYI, vous avez accepté une réponse invalide. Vérifiez la réponse de résonance par exemple. De plus, dans le papier original, on dit: ( lasec.epfl.ch/ PUB / LASEC / DOC / OECH03.PDF ) Nous appelons nos chaînes arc-en-ciel à Chains. Ils utilisent une fonction de réduction successive pour chaque point de la chaîne. I> Et c'est à ce sujet, ils l'appellent des tables arc-en-ciel, car elles utilisent une fonction de réduction différente B> sur chaque colonne de la table.