大家好,歡迎來到今天的教學。今天,我們將使用 Python 建立一個簡單的密碼強度檢查器。我們將逐步解釋該程式碼的工作原理,並提供有關如何改進密碼的提示。
弱密碼會讓駭客更容易透過各種方法猜測或破解,從而使您的個人資訊面臨風險。強密碼是:
讓我們開始建立一個根據這些規則評估密碼強度的工具。
在我們開始編碼之前,請確保您的電腦上安裝了 Python。
建立一個新的 Python 文件,您將在其中編寫程式碼。另外,下載包含最常見密碼的檔案(稍後我們將詳細介紹)並將該檔案保存在與該專案的 Python 檔案相同的目錄中。
import string
字串模組提供了有用的常數來檢查字元類型,如大寫字母、數字和特殊字元。
def check_common_password(password): with open('common-password.txt', 'r') as f: common = f.read().splitlines() if password in common: return True return False
此函數檢查給定的密碼是否在常用密碼清單中。
為什麼這很重要? 許多駭客從嘗試通用密碼開始,因此使用密碼會讓您的帳戶非常容易受到攻擊。
def password_strength(password): score = 0 length = len(password) upper_case = any(c.isupper() for c in password) lower_case = any(c.islower() for c in password) special = any(c in string.punctuation for c in password) digits = any(c.isdigit() for c in password) characters = [upper_case, lower_case, special, digits] if length > 8: score = 1 if length > 12: score = 1 if length > 17: score = 1 if length > 20: score = 1 score = sum(characters) - 1 if score此函數根據多個標準評估密碼的強度。
評分是如何進行的?
def feedback(password): if check_common_password(password): return "Password was found in a common list. Score: 0/7" strength, score = password_strength(password) feedback = f"Password strength: {strength} (Score: {score}/7)\n" if score此功能結合了前兩個功能,提供全面的回饋。
password = input("Enter the password: ") print(feedback(password))
最後一部分只是要求使用者輸入密碼,然後列印回饋。
建立強密碼是維護線上安全的重要組成部分,使用此工具,您可以輕鬆評估密碼的安全性。這個簡單的程式示範如何將基本的 Python 程式設計與網路安全原則結合來解決現實世界的問題。
隨意嘗試程式碼並添加更多功能。
快樂編碼,保持安全!
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3