# hashCrack
# [hashcat soruce code](/0ttmSQM3QGmGzczTgjEHDA)
# question
[Gitlab](https://gitlab.td.nchc.org.tw/cchou0519/hipac24-password-recovery/-/tree/main?ref_type=heads)
# resource
## my
[My shell script note](/Za3jagAQSe-hG2hQ6lZ_zA)
[My Git Note](https://hackmd.io/7CZMjboXTRS8VgU6WhBCWA#)
[My Crack Data ](/l3Qm_fHkTeeTUnni0fguzA)
[My Rule Note](/4c7wFr7ySXusXKnpthvKcg)
[hashcat source code Note](https://hackmd.io/0ttmSQM3QGmGzczTgjEHDA?edit)
## other
[gnu bash manual](https://www.gnu.org/software/bash/manual/html_node/Variable-Index.html)
[8xV100 benchmark](https://github.com/siseci/hashcat-benchmark-comparison/blob/master/8x%20Tesla%20V100%20p3.16xlarge%20Hashcat%20Benchmark)
## hashcat offical
[basic cracking knowledge](https://hashcat.net/wiki/doku.php?id=frequently_asked_questions#basic_cracking_knowledge), this ia a helpful article
[more work](https://hashcat.net/wiki/doku.php?id=frequently_asked_questions#how_to_create_more_work_for_full_speed)
>What happens in the mod loop depends on the attack mode. For brute force, a portion of the mask is calculated in the base loop, while the remaining portion of the mask is calculated in the mod loop. For straight mode, words from the wordlist comprise the base loop, while rules are applied in the mod loop (the on-GPU rule engine that executes in the mod loop is our amplifier.) For hybrid modes, words from the wordlist comprise the base loop, while the brute force mask is processed in the mod loop (generating each mask and appending it to base words is our amplifier.)
[work on cluster](https://hashcat.net/wiki/doku.php?id=frequently_asked_questions#how_can_i_distribute_the_work_on_different_computersnodes)
## dict
[english word](https://github.com/david47k/top-english-wordlists)
[SecLists](https://github.com/danielmiessler/SecLists)
[CrackStation](https://crackstation.net/crackstation-wordlist-password-cracking-dictionary.htm)
Weakpass
Hashes.org
r/Netsec
r/AskNetsec
r/CrackMe
Hack The Box
Wordlists:
Pattern Generation
Password Profiling
Crunch
John the Ripper’s Wordlist
## speed, keyspace and benchmark
NOTE: hashcat \--keyspace is not really the keyspace , see this [article](https://hashcat.net/wiki/doku.php?id=frequently_asked_questions#what_is_a_keyspace), \--keyspace reports the size of the base loop that executes on the host
NOTE: This \--benchmark mode is simply a brute force attack with a big-enough mask to create enough workload for your GPUs against a single hash of a single hash-type.
### benchmark
hashcat --benchmark
Hash-Mode 0 (MD5)
Speed.#1.........: 21059.8 MH/s (35.70ms) @ Accel:256 Loops:512 Thr:128 Vec:8
Hash-Mode 500 (md5crypt, MD5 (Unix), Cisco-IOS $1$ (MD5)) [Iterations: 1000]
Speed.#1.........: 8174.7 kH/s (79.82ms) @ Accel:256 Loops:1000 Thr:64 Vec:1
Hash-Mode 3200 (bcrypt $2*$, Blowfish (Unix)) [Iterations: 32]
Speed.#1.........: 45257 H/s (83.20ms) @ Accel:4 Loops:32 Thr:24 Vec:1
## dependence
hashcat v6.2.6
GNU parallel 20210822
[hashcat/maskprocessor](https://github.com/hashcat/maskprocessor)
[pack](https://github.com/iphelix/pack)
```
conda create --name mypython2env python=2.7
conda activate mypython2env
pip install pyenchant==3.0.0a1 #[Note](https://github.com/pyenchant/pyenchant/issues/164)
conda deactivate #leave the env
```
## [dairy](/eoWDhuAiSNi-fsC0Fzp8JA)
# others
[TRASH](/NXM7Avx8QoKjugXhAcbLDA)
## gnu code style
clang-format -style=gnu -dump-config > .clang-format
clang-format -i your_file.c