-
Notifications
You must be signed in to change notification settings - Fork 1
/
ShadowCipher.py
325 lines (298 loc) · 19.3 KB
/
ShadowCipher.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
#!/usr/bin/env python3
import argparse
import random
import string
import time
def generate_wordlist(first_name, last_name, count):
print("\033[92;1mGenerating the wordlist...\033[0m")
start_time = time.time()
wordlist = []
variations = [
f"{first_name.capitalize()[0]}{first_name.lower()[1:]}{last_name.capitalize()}!1",
f"{first_name.capitalize()[0]}{first_name.lower()[1:]}{last_name.capitalize()}!123",
f"{first_name.capitalize()[0]}{first_name.lower()[1:]}{last_name.capitalize()}#1",
f"{first_name.capitalize()[0]}{first_name.lower()[1:]}{last_name.capitalize()}%1",
f"{first_name.capitalize()[0]}{first_name.lower()[1:]}{last_name.capitalize()}123@",
f"{first_name.capitalize()[0]}{first_name.lower()[1:]}{last_name.capitalize()}@1",
f"{first_name.capitalize()[0]}{first_name.lower()[1:]}{last_name.capitalize()}@123",
f"{first_name.capitalize()[0]}{last_name.capitalize()[0]}{random.choice(string.digits)}",
f"{first_name.capitalize()[0]}{last_name.capitalize()[0]}{random.choice(string.punctuation)}",
f"{first_name.capitalize()[0]}{last_name.capitalize()}",
f"{first_name.capitalize()[0]}{last_name.lower()}{first_name.lower()[1:]}!1",
f"{first_name.capitalize()[0]}{last_name.lower()}{first_name.lower()[1:]}!123",
f"{first_name.capitalize()[0]}{last_name.lower()}{first_name.lower()[1:]}#1",
f"{first_name.capitalize()[0]}{last_name.lower()}{first_name.lower()[1:]}%1",
f"{first_name.capitalize()[0]}{last_name.lower()}{first_name.lower()[1:]}123@",
f"{first_name.capitalize()[0]}{last_name.lower()}{first_name.lower()[1:]}@1",
f"{first_name.capitalize()[0]}{last_name.lower()}{first_name.lower()[1:]}@123",
f"{first_name.capitalize()[0]}{random.choice(string.ascii_uppercase)}{last_name.capitalize()[0]}{random.choice(string.ascii_lowercase)}",
f"{first_name.capitalize()[0]}{random.choice(string.ascii_uppercase)}{last_name.capitalize()[0]}{random.choice(string.ascii_uppercase)}",
f"{first_name.capitalize()[0]}{random.choice(string.ascii_uppercase)}{last_name.capitalize()[0]}{random.choice(string.digits)}",
f"{first_name.capitalize()}!1",
f"{first_name.capitalize()}!12",
f"{first_name.capitalize()}!123",
f"{first_name.capitalize()}!{last_name.capitalize()}123",
f"{first_name.capitalize()}#1",
f"{first_name.capitalize()}#12",
f"{first_name.capitalize()}#123",
f"{first_name.capitalize()}#{last_name.capitalize()}1",
f"{first_name.capitalize()}%1",
f"{first_name.capitalize()}%12",
f"{first_name.capitalize()}%123",
f"{first_name.capitalize()}%{last_name.capitalize()}1",
f"{first_name.capitalize()}123#",
f"{first_name.capitalize()}123%",
f"{first_name.capitalize()}123@",
f"{first_name.capitalize()}@1",
f"{first_name.capitalize()}@123",
f"{first_name.capitalize()}@{last_name.capitalize()}123",
f"{first_name.capitalize()}{last_name.capitalize()}!1",
f"{first_name.capitalize()}{last_name.capitalize()}!12",
f"{first_name.capitalize()}{last_name.capitalize()}!123",
f"{first_name.capitalize()}{last_name.capitalize()}",
f"{first_name.capitalize()}{last_name.capitalize()}#1",
f"{first_name.capitalize()}{last_name.capitalize()}#12",
f"{first_name.capitalize()}{last_name.capitalize()}#123",
f"{first_name.capitalize()}{last_name.capitalize()}%1",
f"{first_name.capitalize()}{last_name.capitalize()}%12",
f"{first_name.capitalize()}{last_name.capitalize()}%123",
f"{first_name.capitalize()}{last_name.capitalize()}123#",
f"{first_name.capitalize()}{last_name.capitalize()}123%",
f"{first_name.capitalize()}{last_name.capitalize()}123@",
f"{first_name.capitalize()}{last_name.capitalize()}@1",
f"{first_name.capitalize()}{last_name.capitalize()}{random.choice(string.digits)}",
f"{first_name.capitalize()}{last_name.capitalize()}{random.choice(string.punctuation)}",
f"{first_name.capitalize()}{last_name.lower()}!1",
f"{first_name.capitalize()}{last_name.lower()}!123",
f"{first_name.capitalize()}{last_name.lower()}",
f"{first_name.capitalize()}{last_name.lower()}#1",
f"{first_name.capitalize()}{last_name.lower()}%1",
f"{first_name.capitalize()}{last_name.lower()}123@",
f"{first_name.capitalize()}{last_name.lower()}@1",
f"{first_name.capitalize()}{last_name.lower()}@123",
f"{first_name.capitalize()}{last_name.lower()}{first_name.lower()}123@",
f"{first_name.capitalize()}{last_name.lower()}{first_name.lower()}@1",
f"{first_name.capitalize()}{last_name.lower()}{first_name.lower()}@123",
f"{first_name.capitalize()}{random.choice(string.ascii_letters)}{random.choice(string.digits)}",
f"{first_name.capitalize()}{random.choice(string.ascii_letters)}{random.choice(string.punctuation)}",
f"{first_name.capitalize()}{random.choice(string.ascii_lowercase)}{random.choice(string.ascii_lowercase)}",
f"{first_name.capitalize()}{random.choice(string.ascii_lowercase)}{random.choice(string.punctuation)}",
f"{first_name.capitalize()}{random.choice(string.ascii_uppercase)}{random.choice(string.punctuation)}",
f"{first_name.capitalize()}{random.choice(string.digits)}!",
f"{first_name.capitalize()}{random.choice(string.digits)}@",
f"{first_name.capitalize()}{random.choice(string.digits)}{random.choice(string.ascii_letters)}",
f"{first_name.capitalize()}{random.choice(string.digits)}{random.choice(string.digits)}",
f"{first_name.capitalize()}{random.choice(string.digits)}{random.choice(string.digits)}{random.choice(string.digits)}",
f"{first_name.capitalize()}{random.choice(string.digits)}{random.choice(string.digits)}{random.choice(string.punctuation)}",
f"{first_name.capitalize()}{random.choice(string.digits)}{random.choice(string.punctuation)}",
f"{first_name.capitalize()}{random.choice(string.punctuation)}",
f"{first_name.capitalize()}{random.choice(string.punctuation)}{random.choice(string.digits)}",
f"{first_name.capitalize()}{random.choice(string.punctuation)}{random.choice(string.punctuation)}",
f"{first_name.lower()[0]}{last_name.lower()[0]}{random.choice(string.digits)}",
f"{first_name.lower()[0]}{last_name.lower()[0]}{random.choice(string.punctuation)}",
f"{first_name.lower()[0]}{last_name.lower()}",
f"{first_name.lower()}!123",
f"{first_name.lower()}#123",
f"{first_name.lower()}%123",
f"{first_name.lower()}123!",
f"{first_name.lower()}123#",
f"{first_name.lower()}123%",
f"{first_name.capitalize()}123@",
f"{first_name.lower()}{last_name.capitalize()}",
f"{first_name.lower()}{last_name.lower()}!123",
f"{first_name.lower()}{last_name.lower()}",
f"{first_name.lower()}{last_name.lower()}$123",
f"{first_name.lower()}{last_name.lower()}%123",
f"{first_name.lower()}{last_name.lower()}123!",
f"{first_name.lower()}{last_name.lower()}123$",
f"{first_name.lower()}{last_name.lower()}123%",
f"{first_name.lower()}{last_name.lower()}{random.choice(string.digits)}",
f"{first_name.lower()}{last_name.lower()}{random.choice(string.punctuation)}",
f"{first_name.lower()}{random.choice(string.ascii_letters)}{random.choice(string.digits)}",
f"{first_name.lower()}{random.choice(string.ascii_letters)}{random.choice(string.punctuation)}",
f"{first_name.lower()}{random.choice(string.digits)}!",
f"{first_name.lower()}{random.choice(string.digits)}@",
f"{first_name.lower()}{random.choice(string.digits)}{random.choice(string.ascii_letters)}",
f"{first_name.lower()}{random.choice(string.digits)}{random.choice(string.punctuation)}",
f"{first_name.lower()}{random.choice(string.punctuation)}",
f"{first_name.lower()}{random.choice(string.punctuation)}{random.choice(string.digits)}",
f"{last_name.capitalize()[0]}{first_name.lower()}{last_name.lower()[1:]}!1",
f"{last_name.capitalize()[0]}{first_name.lower()}{last_name.lower()[1:]}!123",
f"{last_name.capitalize()[0]}{first_name.lower()}{last_name.lower()[1:]}#1",
f"{last_name.capitalize()[0]}{first_name.lower()}{last_name.lower()[1:]}%1",
f"{last_name.capitalize()[0]}{first_name.lower()}{last_name.lower()[1:]}123@",
f"{last_name.capitalize()[0]}{first_name.lower()}{last_name.lower()[1:]}@1",
f"{last_name.capitalize()[0]}{first_name.lower()}{last_name.lower()[1:]}@123",
f"{last_name.capitalize()[0]}{last_name.lower()[1:]}{first_name.capitalize()}!1",
f"{last_name.capitalize()[0]}{last_name.lower()[1:]}{first_name.capitalize()}!12",
f"{last_name.capitalize()[0]}{last_name.lower()[1:]}{first_name.capitalize()}!123",
f"{last_name.capitalize()[0]}{last_name.lower()[1:]}{first_name.capitalize()}#1",
f"{last_name.capitalize()[0]}{last_name.lower()[1:]}{first_name.capitalize()}#12",
f"{last_name.capitalize()[0]}{last_name.lower()[1:]}{first_name.capitalize()}#123",
f"{last_name.capitalize()[0]}{last_name.lower()[1:]}{first_name.capitalize()}%1",
f"{last_name.capitalize()[0]}{last_name.lower()[1:]}{first_name.capitalize()}%12",
f"{last_name.capitalize()[0]}{last_name.lower()[1:]}{first_name.capitalize()}%123",
f"{last_name.capitalize()[0]}{last_name.lower()[1:]}{first_name.capitalize()}@1",
f"{last_name.capitalize()}!1",
f"{last_name.capitalize()}!12",
f"{last_name.capitalize()}!123",
f"{last_name.capitalize()}#1",
f"{last_name.capitalize()}#12",
f"{last_name.capitalize()}#123",
f"{last_name.capitalize()}#{first_name.capitalize()}1",
f"{last_name.capitalize()}%1",
f"{last_name.capitalize()}%12",
f"{last_name.capitalize()}%123",
f"{last_name.capitalize()}%{first_name.capitalize()}1",
f"{last_name.capitalize()}@1",
f"{last_name.capitalize()}{first_name.capitalize()}!1",
f"{last_name.capitalize()}{first_name.capitalize()}!12",
f"{last_name.capitalize()}{first_name.capitalize()}!123",
f"{last_name.capitalize()}{first_name.capitalize()}#1",
f"{last_name.capitalize()}{first_name.capitalize()}#12",
f"{last_name.capitalize()}{first_name.capitalize()}#123",
f"{last_name.capitalize()}{first_name.capitalize()}%1",
f"{last_name.capitalize()}{first_name.capitalize()}%12",
f"{last_name.capitalize()}{first_name.capitalize()}%123",
f"{last_name.capitalize()}{first_name.capitalize()}1$",
f"{last_name.capitalize()}{first_name.capitalize()}123%",
f"{last_name.capitalize()}{first_name.capitalize()}123@",
f"{last_name.capitalize()}123@",
f"{last_name.capitalize()}{first_name.capitalize()}@1",
f"{last_name.capitalize()}{first_name.capitalize()}@123",
f"{last_name.capitalize()}{first_name.lower()}!1",
f"{last_name.capitalize()}{first_name.lower()}!123",
f"{last_name.capitalize()}{first_name.lower()}#1",
f"{last_name.capitalize()}{first_name.lower()}%1",
f"{last_name.capitalize()}{first_name.lower()}123@",
f"{last_name.capitalize()}{first_name.lower()}@1",
f"{last_name.capitalize()}{first_name.lower()}@123",
f"{last_name.capitalize()}{random.choice(string.digits)}!",
f"{last_name.capitalize()}{random.choice(string.digits)}@",
f"{last_name.capitalize()}{random.choice(string.digits)}{random.choice(string.ascii_letters)}",
f"{last_name.capitalize()}{random.choice(string.digits)}{random.choice(string.digits)}",
f"{last_name.capitalize()}{random.choice(string.digits)}{random.choice(string.digits)}{random.choice(string.digits)}",
f"{last_name.capitalize()}{random.choice(string.digits)}{random.choice(string.digits)}{random.choice(string.punctuation)}",
f"{last_name.capitalize()}{random.choice(string.digits)}{random.choice(string.punctuation)}",
f"{last_name.capitalize()}{random.choice(string.punctuation)}",
f"{last_name.capitalize()}{random.choice(string.punctuation)}{random.choice(string.digits)}",
f"{last_name.capitalize()}{random.choice(string.punctuation)}{random.choice(string.punctuation)}",
f"{last_name.lower()}!123",
f"{last_name.lower()}#123",
f"{last_name.lower()}%123",
f"{last_name.lower()}123!",
f"{last_name.lower()}123#",
f"{last_name.lower()}123%",
f"{last_name.lower()}{first_name.capitalize()[0]}{first_name.lower()[1:]}!1",
f"{last_name.lower()}{first_name.capitalize()[0]}{first_name.lower()[1:]}!123",
f"{last_name.lower()}{first_name.capitalize()[0]}{first_name.lower()[1:]}#1",
f"{last_name.lower()}{first_name.capitalize()[0]}{first_name.lower()[1:]}%1",
f"{last_name.lower()}{first_name.capitalize()[0]}{first_name.lower()[1:]}@1",
f"{last_name.lower()}{first_name.lower()}!123",
f"{last_name.lower()}{first_name.lower()}$123",
f"{last_name.lower()}{first_name.lower()}%123",
f"{last_name.lower()}{first_name.lower()}123!",
f"{last_name.lower()}{first_name.lower()}123$",
f"{last_name.lower()}{first_name.lower()}123%",
f"{last_name.lower()}{random.choice(string.digits)}!",
f"{last_name.lower()}{random.choice(string.digits)}#",
f"{last_name.lower()}{random.choice(string.digits)}@",
f"{last_name.lower()}{random.choice(string.digits)}{random.choice(string.ascii_letters)}",
f"{last_name.lower()}{random.choice(string.digits)}{random.choice(string.punctuation)}",
f"{last_name.lower()}{random.choice(string.punctuation)}",
f"{last_name.lower()}{random.choice(string.punctuation)}{random.choice(string.digits)}",
f"{random.choice(string.ascii_lowercase)}{first_name.capitalize()[0]}{random.choice(string.ascii_lowercase)}{last_name.capitalize()[0]}",
f"{random.choice(string.ascii_lowercase)}{first_name.capitalize()[0]}{random.choice(string.digits)}{last_name.capitalize()[0]}",
f"{random.choice(string.ascii_uppercase)}{last_name.capitalize()}{random.choice(string.ascii_lowercase)}",
f"{random.choice(string.ascii_uppercase)}{last_name.capitalize()}{random.choice(string.ascii_uppercase)}",
f"{random.choice(string.ascii_uppercase)}{last_name.capitalize()}{random.choice(string.digits)}",
f"{random.choice(string.ascii_uppercase)}{last_name.capitalize()}{random.choice(string.punctuation)}",
###### Add more variations using f-strings here [---- DO NOT REMOVE THIS COMMENT -----] ######
]
variations.append(f"{first_name.capitalize()}{last_name.capitalize()}")
variations.append(f"{first_name.lower()}{last_name.lower()}")
variations.append(f"{first_name.capitalize()[0]}{last_name.capitalize()}")
variations.append(f"{first_name.lower()[0]}{last_name.lower()}")
variations.append(f"{first_name.capitalize()}{last_name.lower()}")
variations.append(f"{first_name.lower()}{last_name.capitalize()}")
for _ in range(count):
wordlist.append(random.choice(variations))
end_time = time.time()
elapsed_time = end_time - start_time
print(f"Generated wordlist in {format_time(elapsed_time)}")
return wordlist
def format_time(seconds):
hours = int(seconds // 3600)
minutes = int((seconds % 3600) // 60)
second = int(seconds % 60)
return f"{hours:02d}h:{minutes:02d}m:{second:02d}s"
def save_wordlist(wordlist, filename):
with open(filename, "w") as file:
for word in wordlist:
file.write(word + "\n")
def main():
parser = argparse.ArgumentParser(description="Wordlist Generator")
parser.add_argument("first_name", help="First name")
parser.add_argument("last_name", help="Last name")
parser.add_argument(
"-n",
"--count",
type=int,
default=100,
help="Number of wordlist entries to generate (default: 100)",
)
parser.add_argument(
"-sv",
"--save",
metavar="filename",
help="Save wordlist to the specified file",
)
args = parser.parse_args()
if args.count > 50000000:
print(
'\033[91m\033[1mWARNING: Generating a large wordlist may slow down your device. If you want to stop, press "CTRL + C"\033[0m'
)
print("Running the script in 3...")
time.sleep(1)
print("2...")
time.sleep(1)
print("1...")
time.sleep(1)
wordlist = generate_wordlist(args.first_name, args.last_name, args.count)
if args.save:
save_wordlist(wordlist, args.save)
print(
"\033[92m\u2713\ufe0f Generated",
len(wordlist),
"words and saved it in",
args.save,
"\U0001F389\033[0m",
)
else:
print(wordlist)
if __name__ == "__main__":
print(
"\033[94;1m-----------------------------------------------------------------------------------------------------------------------------------\033[0m"
)
print(
"\033[34m"
"""
░██████╗██╗░░██╗░█████╗░██████╗░░█████╗░░██╗░░░░░░░██╗░█████╗░██╗██████╗░██╗░░██╗███████╗██████╗░
██╔════╝██║░░██║██╔══██╗██╔══██╗██╔══██╗░██║░░██╗░░██║██╔══██╗██║██╔══██╗██║░░██║██╔════╝██╔══██╗
╚█████╗░███████║███████║██║░░██║██║░░██║░╚██╗████╗██╔╝██║░░╚═╝██║██████╔╝███████║█████╗░░██████╔╝
░╚═══██╗██╔══██║██╔══██║██║░░██║██║░░██║░░████╔═████║░██║░░██╗██║██╔═══╝░██╔══██║██╔══╝░░██╔══██╗
██████╔╝██║░░██║██║░░██║██████╔╝╚█████╔╝░░╚██╔╝░╚██╔╝░╚█████╔╝██║██║░░░░░██║░░██║███████╗██║░░██║
╚═════╝░╚═╝░░╚═╝╚═╝░░╚═╝╚═════╝░░╚════╝░░░░╚═╝░░░╚═╝░░░╚════╝░╚═╝╚═╝░░░░░╚═╝░░╚═╝╚══════╝╚═╝░░╚═╝
"""
"\033[0m"
)
print(
"\033[94;1m-----------------------------------------------------------------------------------------------------------------------------------\033[0m"
)
print(
"\033[38;5;208mPassword WordList Generator\033[0m \033[38;5;46mDiscord/Twitter: @rezydev\033[0m"
)
print(
"\033[94;1m-----------------------------------------------------------------------------------------------------------------------------------\033[0m"
)
main()