Une histoire de dico...
Discutez d'informatique ici !
-
Sorcier FXK
- Membre Naturel
- Messages: 10
- Enregistré le: 03 Aoû 2008, 18:46
-
par Sorcier FXK » 03 Aoû 2008, 19:09
Bonjour, voila un ptit probleme qui me trote dans la tete.
Je m'interesse a la secu info et tout particulierement a la crypto et les differentes techniques qui servent a decrypter. (c'est legal, je tient a le préciser, car je taf sur MES données)
Il existe plusieurs méthodes bien entendu.
Dans mon cas, je cherche a déterminer la taille d'un dictionnaire avant de le générer. Un dictionnaire est fichier texte contenant une liste de mots ou de combinaisons.
Par exemple:
0001
0002
0003
.....
9999
Voici le probleme en lui meme:
le dictionnaire contient des lignes de 26 caracteres:
00000000000000000000000000 (1er ligne)
99999999999999999999999999 (derniere ligne)
Chaque 0 passera de 0 à 9.
Comment connaitre le nombre de combinaisons ? Et comment connaitre la taille final du fichier ?
Pour le nombre de combinaisons je pensais a ca : (26^26)^10
Mais j'ai un super doute...
Et pour determiner la taille du fichier... là je seche grave...
-
Monsieur23
- Habitué(e)
- Messages: 3966
- Enregistré le: 01 Oct 2006, 17:24
-
par Monsieur23 » 03 Aoû 2008, 19:14
Bonjour.
Dans ton exemple à 4 chiffres, on voit bien qu'il y aura 10 000 "mots" différents.
Pourquoi cela changerait-il avec 26 chiffres ?
On aura 10^26 mots, non ?
« Je ne suis pas un numéro, je suis un homme libre ! »
-
Clembou
- Membre Complexe
- Messages: 2732
- Enregistré le: 03 Aoû 2006, 11:00
-
par Clembou » 03 Aoû 2008, 19:20
Monsieur23 a écrit:Bonjour.
Dans ton exemple à 4 chiffres, on voit bien qu'il y aura 10 000 "mots" différents.
Pourquoi cela changerait-il avec 26 chiffres ?
On aura 10^26 mots, non ?
C'est bien ça, car avec 26 chiffres : le maximum qu'on pourra faire c'est :

+ le code avec que des zéros, on aura donc

codes possibles.
Un octet = un chiffre donc ta taille de fichier fera

octets...
-
Sorcier FXK
- Membre Naturel
- Messages: 10
- Enregistré le: 03 Aoû 2008, 18:46
-
par Sorcier FXK » 03 Aoû 2008, 20:22
Quelle réactivitée !!! :zen:
Merci bien les gars !
Donc:
Pour obtenir le nombre de combinaisons d'un dico on prend le charset* qu'on eleve à la puissance du nombre de caractere.
Exemple
un dico avec 6 caracteres alphabétiques
aaaaaa (1er ligne) charset miniscule
zzzzzzz (derniere ligne)
Donc le nombre de combinaison est egale à 6^26
J'ai bien compris ?
Je demande car je vais codé un ptit tool en C pour m'aider et faudrai qu'il me sorte des aneries lol :we:
En tout cas merci de votre aide !
ah oui j'oublié: Un charset c'est ca par exemple "0 1 2 3 4 5 6 7 8 9" ou "abcdefghijklmnopqrstuvwxyz"
-
Clembou
- Membre Complexe
- Messages: 2732
- Enregistré le: 03 Aoû 2006, 11:00
-
par Clembou » 03 Aoû 2008, 20:30
Sorcier FXK a écrit:Quelle réactivitée !!! :zen:
Merci bien les gars !
Donc:
Pour obtenir le nombre de combinaisons d'un dico on prend le charset* qu'on eleve à la puissance du nombre de caractere.
Exemple
un dico avec 6 caracteres alphabétiques
aaaaaa (1er ligne) charset miniscule
zzzzzzz (derniere ligne)
Donc le nombre de combinaison est egale à 6^26
J'ai bien compris ?
Je demande car je vais codé un ptit tool en C pour m'aider et faudrai qu'il me sorte des aneries lol :we:
En tout cas merci de votre aide !
ah oui j'oublié: Un charset c'est ca par exemple "0 1 2 3 4 5 6 7 8 9" ou "abcdefghijklmnopqrstuvwxyz"
Tu as tout à fait compris :++: Bon courage et bonne continuation pour la construction de ton tool en C :we:
-
Sorcier FXK
- Membre Naturel
- Messages: 10
- Enregistré le: 03 Aoû 2008, 18:46
-
par Sorcier FXK » 03 Aoû 2008, 20:54
Bon je vient de me rendre compte que je m'egarai en tentant de générer ce dictionnaire.
10^26 octet (soit la taille du fichier finit en octets)
Pour le ramener en Go par exemple...
10^26 / 10^9 = 10^17go (si je me suis tromper faut le dire !!!)
Donc pas réalisable a ce jour...
Ou du moins pas dans un seul fichier, faut le tronquer pendant la génération.
-
Clembou
- Membre Complexe
- Messages: 2732
- Enregistré le: 03 Aoû 2006, 11:00
-
par Clembou » 03 Aoû 2008, 21:40
Sorcier FXK a écrit:Bon je vient de me rendre compte que je m'egarai en tentant de générer ce dictionnaire.
10^26 octet (soit la taille du fichier finit en octets)
Pour le ramener en Go par exemple...
10^26 / 10^9 = 10^17go (si je me suis tromper faut le dire !!!)
Donc pas réalisable a ce jour...
Ou du moins pas dans un seul fichier, faut le tronquer pendant la génération.
Je crois même que tu ne pourras pas le stocker sur le plus gros disque dur du monde...
-
Anonyme
par Anonyme » 03 Aoû 2008, 21:45
Vous être au courant de la compression :lol2:
Je pense qu'un bonne compression peut diminuer largement tout cela, enfin je pense ...
-
Clembou
- Membre Complexe
- Messages: 2732
- Enregistré le: 03 Aoû 2006, 11:00
-
par Clembou » 03 Aoû 2008, 21:51
--flens-- a écrit:Vous être au courant de la compression :lol2:
Je pense qu'un bonne compression peut diminuer largement tout cela, enfin je pense ...
N'étant pas codeur professionnel en C (plutôt LaTeX), je n'ai pas du tout pensé à la compression. Mais C vrai que ça existe... :p
-
rene38
- Membre Légendaire
- Messages: 7135
- Enregistré le: 01 Mai 2005, 11:00
-
par rene38 » 03 Aoû 2008, 22:05
... et avec un taux de compression de 1 000 000/1 (on peut rêver !) le fameux fichier n'occupe plus que ...

Go.
-
abcd22
- Membre Complexe
- Messages: 2426
- Enregistré le: 13 Jan 2006, 14:36
-
par abcd22 » 03 Aoû 2008, 23:04
Bonsoir,
Sorcier FXK a écrit:un dico avec 6 caracteres alphabétiques
aaaaaa (1er ligne) charset miniscule
zzzzzzz (derniere ligne)
Donc le nombre de combinaison est egale à 6^26
Si on veut former tous les mots de 6 caractères avec l'alphabet {a, b, c, ... y, z}, il y a 26^6 possibilités et pas 6^26.
-
Sorcier FXK
- Membre Naturel
- Messages: 10
- Enregistré le: 03 Aoû 2008, 18:46
-
par Sorcier FXK » 04 Aoû 2008, 23:33
Merci de me corriger, je repond trop vite defois !
Et tout cas merci a vous tous de m'avoir aider ! Vous etes vraiment sympas !
J'ai commmencé a coder le tool, quand j'aurai finis je pourrai vous passer le code source, si ca peut interesser quelqu'un. Je compte aussi le perfectionner avec des ptites options en plus, genre nombre de DVD ou CD ect.
Pour la compression :
On a compressé un dico de 17go en 100mo, pour l'info.
On ne peut pas compresser le dico pour des raisons techniques. Ce dico servira seulement a générer une rainbowtable qui elle sera beaucoup moi grosse que le dico d'origine. Mais pour créé la rainbowtable il faut le dico non compressé. De plus c'est pas possible de compresser pendant la génération. Par contre on peut le spliter en parti egale, histoire de le repartir sur les serveurs, mais vu la taille (10^17go) va falloir qu'on se casse la tete pour trouver une soluce.
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 3 invités