Я использую crunch для создания словаря, который будет содержать все комбинации для 8 символов. Он перестал создавать словарь через некоторое время, потому что он требует 56 ТБ места.
Как я могу это исправить?
решение1
Ну. Если вы запустите его для всех комбинаций из 8 символов, вы получите
(26 * 2) ^ 8 * 8 = 427677828251648
символов. Это примерно 389 ТБ пространства (несжатого). Вы пытаетесь создать слишком большой словарь. Чтобы уменьшить его, вы можете
- Ограничьте набор символов или
- длина паролей
В качестве альтернативы вы можете ограничить проблему (но не решить ее) следующим образом:
- сжимая его с помощью
-z
option (это не поможет в полной мере, так как сжатие случайных строк не очень эффективно) - ограничение дубликатов с помощью параметров
-d
или-p
. - разделение вывода на несколько файлов (см
-o START
. )
Выдержки из man 1 crunch
:
-z gzip, bzip2, lzma, and 7z
Compresses the output from the -o option. Valid parameters are
gzip, bzip2, lzma, and 7z. gzip is the fastest but the compression
is minimal. bzip2 is a little slower than gzip but has better
compression. 7z is slowest but has the best compression.
-d numbersymbol
Limits the number of duplicate characters. -d 2@ limits the lower
case alphabet to output like aab and aac. aaa would not be
generated as that is 3 consecutive letters of a. The format is
number then symbol where number is the maximum number of consecutive
characters and symbol is the symbol of the the character set
you want to limit i.e. @,%^ See examples 17-19.
-p charset OR -p word1 word2 ...
Tells crunch to generate words that don't have repeating characters.
By default crunch will generate a wordlist size of
#of_chars_in_charset ^ max_length. This option will instead
generate #of_chars_in_charset!. The ! stands for factorial.
For example say the charset is abc and max length is 4.. Crunch
will by default generate 3^4 = 81 words. This option will instead
generate 3! = 3x2x1 = 6 words (abc, acb, bac, bca, cab, cba).
THIS MUST BE THE LAST OPTION! This option CANNOT be used with
-s and it ignores min and max length however you must still specify
two numbers.