{"id":25376648,"url":"https://github.com/alsch092/xorstringfinder","last_synced_at":"2025-04-09T10:31:40.127Z","repository":{"id":274710525,"uuid":"923824181","full_name":"AlSch092/XORStringFinder","owner":"AlSch092","description":"UTF-8 String XOR brute forcer","archived":false,"fork":false,"pushed_at":"2025-01-28T22:20:51.000Z","size":8,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-15T04:36:52.924Z","etag":null,"topics":["xor-cipher","xor-encryption","xor-string"],"latest_commit_sha":null,"homepage":"","language":"C++","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/AlSch092.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":"2025-01-28T22:08:12.000Z","updated_at":"2025-01-30T05:06:57.000Z","dependencies_parsed_at":"2025-01-28T23:22:48.151Z","dependency_job_id":"4d35cb2d-8234-40c3-8823-61680841df93","html_url":"https://github.com/AlSch092/XORStringFinder","commit_stats":null,"previous_names":["alsch092/xorstringfinder"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlSch092%2FXORStringFinder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlSch092%2FXORStringFinder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlSch092%2FXORStringFinder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlSch092%2FXORStringFinder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AlSch092","download_url":"https://codeload.github.com/AlSch092/XORStringFinder/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248020586,"owners_count":21034458,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["xor-cipher","xor-encryption","xor-string"],"created_at":"2025-02-15T04:36:54.598Z","updated_at":"2025-04-09T10:31:40.095Z","avatar_url":"https://github.com/AlSch092.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# XORStringFinder\nCommand line UTF-8 String XOR brute forcer\n\n## Usage\nThe program can be used in the following manner:  \n` ./xor-findString.exe --hex \"78 75 7c 7c 7f 30 67 7f 62 7c 74\" `\nor...\n` ./xor-findString.exe --string idmmn!vnsme `\n\n## Applications\nString dumps from binaries can be saved to a file and each line of it fed into this program for easy discovery of any 'hidden' strings. The program loops through xor keys 1-256, as any keys above 256 become repeats when acting on UTF-8 characters. When using basic XOR encryption in your programs, remember to add or subtract a constant value after your XOR for an added layer of complexity (`(value ^ xor_key) + const_val`), which will often stop programs such as this one.\n\n## Example Output\n\n```\n./xor-findString.exe --string idmmn!vnsme\nStarting search on input: idmmn!vnsme\nPossible plaintext (key = 1): hello world\nPossible plaintext (key = 2): kfool#tlqog\nPossible plaintext (key = 3): jgnnm\"umpnf\nPossible plaintext (key = 6): obkkh'phukc\nPossible plaintext (key = 7): ncjji\u0026qitjb\nPossible plaintext (key = 11): boffe*}exfn\nPossible plaintext (key = 20): }pyyz5bzgyq\nPossible plaintext (key = 28): uxqqr=jroqy\nPossible plaintext (key = 29): typps\u003cksnpx\nPossible plaintext (key = 30): wzssp?hpms{\nPossible plaintext (key = 31): v{rrq\u003eiqlrz\nPossible plaintext (key = 64): )$--.a6.3-%\nPossible plaintext (key = 66): +\u0026//,c4,1/'\nPossible plaintext (key = 67): *'..-b5-0.\u0026\nPossible plaintext (key = 68): - ))*e2*7)!\nPossible plaintext (key = 69): ,!((+d3+6(\nPossible plaintext (key = 70): /\"++(g0(5+#\nPossible plaintext (key = 71): .#**)f1)4*\"\nPossible plaintext (key = 72): !,%%\u0026i\u003e\u0026;%-\nPossible plaintext (key = 73):  -$$'h?':$,\nPossible plaintext (key = 74): #.''$k\u003c$9'/\nPossible plaintext (key = 75): \"/\u0026\u0026%j=%8\u0026.\nPossible plaintext (key = 76): %(!!\"m:\"?!)\nPossible plaintext (key = 77): $)  #l;#\u003e (\nPossible plaintext (key = 78): '*## o8 =#+\nPossible plaintext (key = 79): \u0026+\"\"!n9!\u003c\"*\nPossible plaintext (key = 80): 94==\u003eq\u0026\u003e#=5\nPossible plaintext (key = 81): 85\u003c\u003c?p'?\"\u003c4\nPossible plaintext (key = 82): ;6??\u003cs$\u003c!?7\nPossible plaintext (key = 83): :7\u003e\u003e=r%= \u003e6\nPossible plaintext (key = 84): =099:u\":'91\nPossible plaintext (key = 85): \u003c188;t#;\u002680\nPossible plaintext (key = 86): ?2;;8w 8%;3\nPossible plaintext (key = 87): \u003e3::9v!9$:2\nPossible plaintext (key = 88): 1\u003c556y.6+5=\nPossible plaintext (key = 89): 0=447x/7*4\u003c\nPossible plaintext (key = 90): 3\u003e774{,4)7?\nPossible plaintext (key = 91): 2?665z-5(6\u003e\nPossible plaintext (key = 92): 58112}*2/19\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falsch092%2Fxorstringfinder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falsch092%2Fxorstringfinder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falsch092%2Fxorstringfinder/lists"}