A biztonság életünk egyik legfontosabb része. A biztonság jelentősége napról napra növekszik, mivel a legtöbb dolog az interneten történik. A jelszavak napvilágra kerülnek, amikor a biztonságról beszélünk.
Ebben a cikkben létrehozunk egy jelszógenerátort, amely segít gyorsan generálni véletlenszerű és erős jelszavakat.
Miért van szükségünk jelszógenerátorra?
Mert nem tudunk azonnal különféle jelszavak mintáira gondolni.
De ez nem ugyanaz a helyzet a számítógépekkel. A számítógépek másodpercek alatt képesek véletlenszerű és erős jelszavakat generálni testreszabásaink alapján. Számos jelszógenerátor áll rendelkezésre.
Létrehozhatjuk saját magunkat a nekünk tetsző testreszabásokkal?
Igen, biztosan létrehozhatunk egyet. És itt megmutatjuk, hogyan kell ezt csinálni.
Hozzunk létre egy jelszógenerátort.
Tartalomjegyzék
Jelszógenerátor 💻
A saját jelszógenerátor létrehozásában az a legjobb, hogy tetszés szerint testreszabhatjuk.
Először létrehozunk egy jelszógenerátort, amely megkérdezi a jelszó hosszát, és véletlenszerűen generál egy számokat, ábécét és speciális karaktereket tartalmazó jelszót.
Ezután javítani fogjuk azáltal, hogy megkérdezzük az egyes karaktertípusok számát, például a számjegyek, ábécék és speciális karakterek számát.
Tehát minden további nélkül lássuk a jelszógenerátor Python használatával történő létrehozásának lépéseit.
Lépések
- Tárolja az összes karaktert listaként. Használhatjuk a Python karakterlánc-modulját, vagy beírhatjuk mindegyiket.
- Kérje meg a felhasználót, hogy adja meg a jelszó hosszát.
- Keverje meg a karaktereket a random.shuffle módszerrel.
- Inicializáljon egy üres listát a jelszó tárolásához.
- Írj egy ciklust, amely a hossz-szereket iterálja.
- Válasszon ki egy véletlenszerű karaktert az összes karakter közül a random.choice módszerrel.
- Adja hozzá a véletlenszerű karaktert a jelszóhoz.
- Keverje meg a kapott jelszólistát, hogy véletlenszerűbbé tegye.
- Konvertálja a jelszólistát karakterláncsá a csatlakozási módszerrel.
- Nyomtassa ki a jelszót.
Kövesse a fenti lépéseket, és próbáljon meg kódot írni. Ne aggódjon, még akkor sem, ha nem tudja megírni a kódot. Nézze meg az alábbi kódot.
Kód
import string import random ## characters to generate password from characters = list(string.ascii_letters + string.digits + "[email protected]#$%^&*()") def generate_random_password(): ## length of password from the user length = int(input("Enter password length: ")) ## shuffling the characters random.shuffle(characters) ## picking random characters from the list password = [] for i in range(length): password.append(random.choice(characters)) ## shuffling the resultant password random.shuffle(password) ## converting the list to string ## printing the list print("".join(password)) ## invoking the function generate_random_password()
A fenti kód magától értetődő. Most követtük a leírt lépéseket a kód írásához. Tehát nem fog problémát találni a kód megértésében, ha elolvassa a lépéseket.
Most futtassa a kódot, és hozzon létre egy jelszót. Egy példa kimenet a következő lesz.
Enter password length: 10 d&amIzK%d)
Figyelje meg a jelszót a fenti kimenetben. Van valami számjegy? Nem. Mert nincs garancia arra, hogy a program számjegyeket fog tartalmazni.
Ezután igyekszünk garantálni, hogy a program számjegyeket és speciális karaktereket tartalmazzon, és megkérjük a felhasználót, hogy adja meg a kívánt számjegyek, ábécék és speciális karakterek számát.
Amikor a felhasználó beírja az egyes típusokhoz tartozó karakterek számát, a program beírja a megfelelő számú karaktertípust a jelszóba.
Lássuk azt a kódot, amely minden típusnál elfogadja a karakterszámot és generálja a jelszót.
import string import random ## characters to generate password from alphabets = list(string.ascii_letters) digits = list(string.digits) special_characters = list("[email protected]#$%^&*()") characters = list(string.ascii_letters + string.digits + "[email protected]#$%^&*()") def generate_random_password(): ## length of password from the user length = int(input("Enter password length: ")) ## number of character types alphabets_count = int(input("Enter alphabets count in password: ")) digits_count = int(input("Enter digits count in password: ")) special_characters_count = int(input("Enter special characters count in password: ")) characters_count = alphabets_count + digits_count + special_characters_count ## check the total length with characters sum count ## print not valid if the sum is greater than length if characters_count > length: print("Characters total count is greater than the password length") return ## initializing the password password = [] ## picking random alphabets for i in range(alphabets_count): password.append(random.choice(alphabets)) ## picking random digits for i in range(digits_count): password.append(random.choice(digits)) ## picking random alphabets for i in range(special_characters_count): password.append(random.choice(special_characters)) ## if the total characters count is less than the password length ## add random characters to make it equal to the length if characters_count < length: random.shuffle(characters) for i in range(length - characters_count): password.append(random.choice(characters)) ## shuffling the resultant password random.shuffle(password) ## converting the list to string ## printing the list print("".join(password)) ## invoking the function generate_random_password()
Tehát mi a különbség az előző kód és ez a kód között?
- Minden karaktertípushoz külön ciklusokat írtunk, hogy hozzáadjuk őket a jelszóhoz.
- Két feltételes ellenőrzés van a teljes karakterszám érvényesítésére a jelszó hosszával.
Hozzáadtunk néhány extra kódot. De a minta hasonló az előző kódhoz. Tehát nem fog nehézséget találni a megértésében.
Most itt az ideje végrehajtani és ellenőrizni a kimenetet. Tekintse meg a következő próbaüzemet.
Enter password length: 10 Enter alphabets count in password: 3 Enter digits count in password: 2 Enter special characters count in password: 3 V2(&#XlQq1
Ha látja a jelszót, amely ezúttal generált, akkor az a felhasználó által kívánt minimális számú karakterből áll. És a program tartalmaz még 2 véletlenszerű karaktert, hogy a jelszó hossza megegyezzen a felhasználói bevitellel.
Hurrá! van egy komplett erős jelszógenerátorunk. 😎
Következtetés
Láttuk, hogyan hozhatunk létre jelszógenerátort a semmiből. Adhatunk hozzá további funkciókat? Igen, annyit adhatunk hozzá, amennyit akarunk. De győződjön meg arról, hogy az eredményül kapott jelszó elég erős.
Hozza létre a jelszavakat a kódból, és használja őket következő online fiókjához.
Miközben ezt teszi, használja a etoppc.com Random Password Generatort biztonságos jelszavak létrehozásához.
Tanulja meg, hogyan írjon egyenlő vagy nem egyenlő kódot, és hogyan készítsen tic-tac-toe játékot Pythonban.
Boldog kódolást! 👩💻