{"id":19207722,"url":"https://github.com/gill-singh-a/dictionary-attack","last_synced_at":"2026-05-12T12:39:15.480Z","repository":{"id":214179936,"uuid":"735886962","full_name":"Gill-Singh-A/Dictionary-Attack","owner":"Gill-Singh-A","description":"A Python program that loads words from a file, caculates their respective hashes according to the Hash Algorithm Provided and then compares with the feeded Hashes to implement a Dictionary Attack, hence attempting to crack the given hashes","archived":false,"fork":false,"pushed_at":"2024-02-28T05:51:03.000Z","size":8,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-23T06:46:11.555Z","etag":null,"topics":["brute-force","dictionary-attack","encryption","hashing","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Gill-Singh-A.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-12-26T11:10:56.000Z","updated_at":"2023-12-27T15:49:08.000Z","dependencies_parsed_at":"2024-11-09T13:22:51.224Z","dependency_job_id":"e292450a-586e-49cd-9cc2-8d13be23b12f","html_url":"https://github.com/Gill-Singh-A/Dictionary-Attack","commit_stats":null,"previous_names":["gill-singh-a/dictionary-attack"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Gill-Singh-A/Dictionary-Attack","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gill-Singh-A%2FDictionary-Attack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gill-Singh-A%2FDictionary-Attack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gill-Singh-A%2FDictionary-Attack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gill-Singh-A%2FDictionary-Attack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Gill-Singh-A","download_url":"https://codeload.github.com/Gill-Singh-A/Dictionary-Attack/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gill-Singh-A%2FDictionary-Attack/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32940101,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-12T09:19:52.626Z","status":"ssl_error","status_checked_at":"2026-05-12T09:17:33.438Z","response_time":102,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["brute-force","dictionary-attack","encryption","hashing","python"],"created_at":"2024-11-09T13:22:17.056Z","updated_at":"2026-05-12T12:39:15.461Z","avatar_url":"https://github.com/Gill-Singh-A.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dictionary Attack\nA Python program that loads words from a file, caculates their respective hashes according to the Hash Algorithm Provided and then compares with the feeded Hashes to implement a Dictionary Attack, hence attempting to crack the given hashes.\n\n## Requirements\nLanguage Used = Python3\u003cbr /\u003e\nModules/Packages used:\n* hashlib\n* pathlib\n* datetime\n* optparse\n* colorama\n* time\n\u003c!-- --\u003e\nInstall the dependencies:\n```bash\npip install -r requirements.txt\n```\n\n## Input\nIt takes the following command line arguments:\n* '-l', \"--load\": List of Wordlists (seperated by ',')\n* '-H', \"--hash\": Hashes/Hash Files to Load (seperated by ',')\n* '-a', \"--hashing-algorithm\": Hashing Algorithm (md5,sha1,sha224,sha256,sha384,sha3_224,sha3_256,sha3_384,sha3_512,sha512)\n* '-w', \"--write\": \"Name of the File for the data to be dumped (default=current data and time)\"\n* '-t', \"--save-type\": File type to dump the data into (text, csv, json, pickle, Default=text)\n\n### Note\nFor Large Wordlists, the program may give memory error as it may not be able to load all the passwords at once into the memory. To overcome this, we can use *split* command in linux to split the Wordlist into smaller files. \u003cbr /\u003e\nFor example: **-l** argument of *split* divided the file into small files each containing lines equal to the value provided in the **-l** argument (the last file would have lines equal to the total number of lines present in the initial wordlist modulus value provided in the **-l** argument)\n```bash\nsplit -l {lines} {name_of_the_file}\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgill-singh-a%2Fdictionary-attack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgill-singh-a%2Fdictionary-attack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgill-singh-a%2Fdictionary-attack/lists"}