Dictionnaire force brute python

 druide

Comment générer un dictionnaire de force brute pour les caractères ascii et les nombres, c'est-à-dire, toutes les combinaisons possible des caractères [a-zA-Z0-9] pour 3 valeurs ?

Encore plus précisément, on souhaite:


'a', 'a', 'a'
'a', 'a', 'b'
'a', 'a', 'c'
...
'b', 'a', 'a'
'b', 'a', 'b'
...
'9', '9', '5'
'9', '9', '6'
'9', '9', '7'
'9', '9', '8'
'9', '9', '9'


Hé bien, python propose des iterator tools qui font ça très bien et très vite!


import itertools, sys, os
from string import ascii_letters

numbers = [str(c) for c in range(10)]
alphabet_and_numbers = [car for car in ascii_letters] + numbers

dictionary = itertools.product(alphabet_and_numbers, repeat=3)



# Si on souhaite l'afficher à des fins de compréhension
for item in dictionary:
    print item


Quand on dit que python c'est puissant...

Links

doc officielle Outil de force brute

Tags: python brutforce dictionary

  • 8 years 3 months before
  • |