Releases: suchsoak/Strong-Password-Python
v.1.0.3
__________ ___
\______ \____ ______ _______ _ __ ____ _______ __| _/
| ___/__ \ / ___// ___/ \/ \/ // __ \\_ __ \/ __ |
| | / __ \_\___ \ \___ \ \ /( \_\ )| | \/ /_/ |
|____| (____ /____ \____ \ \/\_/ \____/ |__| \____ |
\/ \/ \/ \/
BY: suchsoak
Github: https://github.com/suchsoak
V.1.0.3
[1] Strong
[2] Weak
[3] Email (API)
[4] Email Hash
[5] Company
[6] Have i been pwned
News
We've had some fixes and changes to the code, but not much has changed. The biggest news is the new scripts that are all explained below.
- clear = os.system("clear")
- Email (API)
- Email Hash
- Company
Email API
This is a request to find out if your email has been leaked on the dark web, using the Have i Been pwned API. But for that you need the API key
Then, You will put the email and your API key
You need have the API key
Put your API key: admin@gmail.com
Put your API key: 01010.00100.010.101
Part of the script
email = input("Put the email:")
API = input("Put your API key:")
url = f"https://haveibeenpwned.com/api/v3/breachedaccount/{email}"
headers = {"hibp-api-key": "{API}"}
Email Hash
The Email hash
it creates a hash of the email you put in and checks if that hash has already been leaked, it's an attempt to use the API for free. But it's not 100% that it will work.
It's the same thing you do as option 6 sends a hash that checks whether or not it's already been leaked
.
Part of the code
email_1 = input("Put your Email:" )
colorama.init()
print(Fore.RED)
print("\t")
Email = email_1
hash_password = hashlib.sha1(Email.encode('utf-8')).hexdigest().upper()
url = f"https://api.pwnedpasswords.com/range/{hash_password[:5]}"
req = requests.get(url)
hashes = req.text.split('\n')
pwned = False
for hash in hashes:
if hash.startswith(hash_password[5:]):
pwned = True
break
if pwned:
print("[!] Yes, your email has been pwned.")
else:
print("[!] No, your email has not been pwned.")
If you want see more details
API | Link |
---|---|
haveibeenpwned | https://haveibeenpwned.com/API/v3#BreachModel |
Company
Company
This option checks if any information from a company has already been leaked, such as sony.
Put the number: 5
Put the Company:sony
{"Name":"Sony","Title":"Sony","Domain":"sony.com","BreachDate":"2011-06-02","AddedDate":"2013-12-04T00:00:00Z","ModifiedDate":"2013-12-04T00:00:00Z","PwnCount":37103,"Description":"In 2011, Sony suffered breach after breach after breach — it was a <em>very</em> bad year for them. The breaches spanned various areas of the business ranging from the PlayStation network all the way through to the motion picture arm, Sony Pictures. A SQL Injection vulnerability in <a href=\"http://www.sonypictures.com\" target=\"_blank\" rel=\"noopener\">sonypictures.com</a> lead to <a href=\"http://www.troyhunt.com/2011/06/brief-sony-password-analysis.html\" target=\"_blank\" rel=\"noopener\">tens of thousands of accounts across multiple systems being exposed</a> complete with plain text passwords.","LogoPath":"https://haveibeenpwned.com/Content/Images/PwnedLogos/Sony.png","DataClasses":["Dates of birth","Email addresses","Genders","Names","Passwords","Phone numbers","Physical addresses","Usernames"],"IsVerified":true,"IsFabricated":false,"IsSensitive":false,"IsRetired":false,"IsSpamList":false,"IsMalware":false,"IsSubscriptionFree":false}
Don't have nothing about this company: sony
Note that for this to work you need to get the curl tool which in turn is already standard for any operating system to get it
s.system(f'\ncurl https://haveibeenpwned.com/api/v3/breach/{Company}\n')
License & Copyright
MIT License Copyright (c) 2024 ~#M?x
Libraries | Links |
---|---|
haveibeenpwned | https://haveibeenpwned.com/API/v3#BreachModel |
OS | https://docs.python.org/3/library/os.html |
Have I Been Pwned | https://haveibeenpwned.com/API/Key |
Strong-Password-Python
__________ ___
\______ \____ ______ _______ _ __ ____ _______ __| _/
| ___/__ \ / ___// ___/ \/ \/ // __ \\_ __ \/ __ |
| | / __ \_\___ \ \___ \ \ /( \_\ )| | \/ /_/ |
|____| (____ /____ \____ \ \/\_/ \____/ |__| \____ |
\/ \/ \/ \/
BY: suchsoak
Github: https://github.com/suchsoak
V.1.0.1
[1] Strong
[2] Weak
Details
The password generator script uses the Python programming language and utilizes a variety of Python libraries such as colorama, random, string, and zxcvbn.
To generate a strong or weak password, the user must enter the number "1" or "2" when prompted.
If the user enters "1", the script generates a strong password using all ASCII characters, including lowercase, uppercase, digits, and punctuation. The length of the password is determined by the user's input.
If the user enters "2", the script generates a weak password using only lowercase and uppercase ASCII characters. The length of the password is determined by the user's input.
In both cases, the script stores the generated password in a text file named "password.txt". Additionally, the script uses the zxcvbn library to estimate the strength of the generated password and provides information about the password, such as its estimated strength, entropy, and a detailed breakdown of its composition.
To improve the script, consider adding features like the ability to generate multiple passwords, save generated passwords in separate files, or create passwords that meet specific strength requirements.
Have i been pwned integrated
__________ ___
\______ \____ ______ _______ _ __ ____ _______ __| _/
| ___/__ \ / ___// ___/ \/ \/ // __ \\_ __ \/ __ |
| | / __ \_\___ \ \___ \ \ /( \_\ )| | \/ /_/ |
|____| (____ /____ \____ \ \/\_/ \____/ |__| \____ |
\/ \/ \/ \/
BY: suchsoak
Github: https://github.com/suchsoak
V.1.0.2
[1] Strong
[2] Weak
[3] Have i been pwned
....................~~...~. ..
........... .. .~..... . +~
......... ....~.~. ........~.
...... . ...... ......... .
......~~~~.~~~~......... .~. .
....~~~~~~~~~..~~~~~~ ... . .
..~~~+~~~~~.~~~~~+oooo++~.....
~~~~~~~~~.~.~~~+++ooooo++.....
..~~~~~~~.~~+~+++ooo+++~......
... . ..~~~+++++oo+++.........
..... . .++++ooo+~. .........
........ . .~++~.. ...........
........... .~.. .............
Have i been pwned
Now the script determines whether the password that was generated regardless of your choice weak or strong, if it has already been leaked on the dark web.
Important
Have mind that for it work you need instal hashlib and requests
print("Have I Been Pwned")
Password = Password
hash_password = hashlib.sha1(Password.encode('utf-8')).hexdigest().upper()
url = f"https://api.pwnedpasswords.com/range/{hash_password[:5]}"
req = requests.get(url)
hashes = req.text.split('\n')
pwned = False
for hash in hashes:
if hash.startswith(hash_password[5:]):
pwned = True
break
if pwned:
print("[!] Yes, your password has been pwned.")
else:
print("[!] No, your password has not been pwned.")
time.sleep(2)
[3] Have i been pwned
You can now put an option to verify a specific password of yours that you may or may not have already leaked on the dark web
Strong, Weak or Have i been pwned: 3
/\ /\ __ ___ ___
/ |_| \_____ ___ __ ____ |__|\_ |__ ____ ____ ____ ______ __ _ __ ____ ____ __| _/
/ \__ \ \ \/ // __ \ | | | __ \_/ __ \_/ __ \ / \ \____ \ \/ \/ // \_/ __ \ / __ |
\ _ // __ \_\ /\ ___/_| | | \_\ \ ___/_ ___/_ | \| |_\ \ /| | \ ___/_ /_/ |
\ | | /(____ / \_/ \___ /|__| |___ /\___ /\___ /___| /| ___/ \/\_/ |___| /\___ /____ |
\/ \/ \/ \/ \/ \/ \/ \/ |__| \/ \/ \/
Put your PASSWORD: