저는 크런치를 사용하여 8자의 모든 조합을 포함하는 사전을 만들고 있습니다. 56TB의 공간이 필요하기 때문에 잠시 후 사전 생성을 중지했습니다.
이 문제를 어떻게 해결할 수 있나요?
답변1
잘. 8자의 모든 조합에 대해 실행하면 다음과 같은 결과가 나타납니다.
(26 * 2) ^ 8 * 8 = 427677828251648
문자. 이는 약 389TB의 공간(비압축)입니다. 너무 큰 사전을 생성하려고 합니다. 이를 줄이려면 다음을 수행하십시오.
- 문자 세트를 제한하거나
- 비밀번호의 길이
또는 다음과 같이 문제를 제한할 수 있습니다(수정할 수는 없음).
- 옵션을 사용하여 압축합니다
-z
(임의의 문자열을 압축하는 것은 그리 효율적이지 않기 때문에 거의 도움이 되지 않습니다). -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.