Andmed on tänapäeva digimaailmas ülitähtis vara. Igal aastal langeb häkkerite ohvriks üle kaheksa miljoni inimese ja iga päev toimub üle 2200 küberrünnaku. Sellise murettekitava küberkuritegevuse määra juures on häkkerite eest kaitsmise parimate tavade kasutamine prioriteetne. Iga konto üks olulisemaid aspekte on selle parool.
Kui häkker rikub teie parooli, pääseb ta mõne minutiga ligi teie isiklikule teabele ja isegi teie pangakontole. Kuigi see kõlab hirmutavalt, saate õppida oma paroolide kaitsmiseks parimaid tavasid, luues oma Pythoni programmi, et kontrollida selle tugevust.
Erinevad tugevate paroolide seadistamise reeglid
Mõned tugevad paroolireeglid, mille rakendamist võiksite kaaluda, on järgmised:
- Parool peab olema vähemalt 12 tähemärki pikk. Mida pikem on parool, seda väiksem on võimalus, et toore jõu rünnak seda ohustab.
- Parool peaks sisaldama väiketähtede, suurtähtede, numbrite ja erimärkide kombinatsiooni.
- Vältige paroolis märkide kordamist.
- See ei tohiks sisaldada isikuandmeid, nagu nimed, telefoninumbrid ega midagi, mida keegi võib kergesti ära arvata.
- See ei tohiks olla tavaline sõnaraamatusõna, kuigi võite sõnu kasutada ka pikemates paroolifraasides.
- Parool ei tohiks mitme konto puhul olla sama. Sa saad seadistage paroolihaldur erinevate saitide erinevate paroolide automaatseks täitmiseks, neid kõiki meeles pidamata.
Selleks on erinevaid viise looge purunematu parool, mida saate meeles pidada. Mõned neist kasutavad lasteaia riime, tsitaate filmidest, tööstuse kõnepruuki ja palju muud.
Kuidas kontrollida oma parooli tugevust Pythoni abil
Saate luua programmi parooli tugevuse testimiseks, kontrollides ülaltoodud omadusi. Selle konstruktsiooni jaoks vajate kahte moodulit: string ja kollektsioonid.
Võite kasutada ka saada pass moodul parooli peitmiseks, kui kasutaja selle sisestab. See aitab kaitsta teie parooli, kui peate selle avalikult sisestama. Getpassi installimiseks kohalikku keskkonda avage terminal ja tippige:
pip installida saada pass4
Klassi String abil saate kontrollida, kas märk on täht, number või sümbol. Saate kasutada kogusid, et kontrollida, kas paroolis on korduvaid märke.
Nimega funktsiooni määratlemiseks kasutage märksõna def check_password_strength() ja edastage sellele parameetrina saadav parool.
Initsialiseerige kuus muutujat: madalam_alfa_arv, ülemine_alfa_arv, number_count, erisüsi_arv, pikkus, levinud nullini. Need kontrollivad väiketähtede, suurtähtede, numbrite, erimärkide, pikkuste ja märkide kordumise olemasolu paroolis.
Edastage kasutajalt saadud parool aadressile nimekiri() funktsiooni, et teisendada see märkide loendiks. Kordage tsüklit for abil loendi iga tähemärki. Kasutage if-else lauset, et kontrollida, kas tähemärk on väiketähe, suurtäht, number või erimärk, ja värskendage vastavalt arvu.
Võite eeldada, et kõik muu tähestikust või numbrist on erimärk. Piirangute suurendamiseks võite salvestada erimärgid stringina ja kontrollida, kas parooli märk on selles. Lisaks võimaldavad mõned veebisaidid kasutada paroolis tühikuid. Saate määrata erineva muutuja ja seda suurendada või arvestada seda erimärkide arvus endas.
importida string
importida kollektsiooniddefcheck_password_strength(parool):
alumine_alfa_arv = ülemine_alfa_arv = arvu_arv = eritunnuste_arv = pikkus = tavaline = 0
jaoks sisse süvenema nimekirja(parool):
kuichar string.ascii_lowercase:
madalam_alfa_arv += 1
elif char string.ascii_uppercase:
ülemine_alfa_arv += 1
elif char string.digits:
number_count += 1
muidu:
eritunnuste_arv += 1
Teil on vaja parooliloendit või andmebaasi, et kontrollida, kas kasutaja parool on tavaline. Saate alla laadida miljoni kõige populaarsema parooli loendi saidilt SecListsi ühismandaatide GitHubi hoidla.
Salvestage tekstifail nimega common_password_list.txt. Erandite käsitlemiseks ja paroolifaili avamiseks lugemisrežiimis kasutage käsku with. Kasuta loe () funktsiooni, et saada failis olev sisu ja salvestada see muutuja nimega sisusse.
Kui kasutaja sisestatud parooli tavaparoolide loendis pole, suurendage ühise muutuja väärtust ühe võrra.
koosavatud("common_password_list.txt", 'r') nagufaili:
sisu = fail.read()
kui parooli sisus pole:
tavaline += 1
Parooli pikkuse kontrollimiseks edastage see lihtsalt aadressile len() funktsiooni ja kontrollige, kas see on suurem või võrdne kaheteistkümnega. Kui jah, siis suurendage pikkusmuutuja väärtust.
kuilen(parool) >= 12:
pikkus += 1
Tähemärkide kordumise kontrollimiseks paroolis kasutage kogude alamklassi loendur. Loendur on võtme- ja väärtusepaaride järjestamata kogum, kus võti on element ise ja väärtus on elementide arv.
Kasutage loendi mõistmise meetodit, et koostada kogude abil saadud sõnastikust korduvate tähemärkide loend. Korda sõnaraamatut ja kontrolli, kas märkide arv on suurem kui üks. Kui arv on suurem, lisage see loendisse ja salvestage see korduvalt.
countOfWords = kogud. Loendur (parool)
korduv = [i for i in countOfWords, kui countOfWords[i] > 1]
Nüüd, kui teil on individuaalsete omaduste väärtused, lähtestage muutuja nimega tugevus nulliks. Nagu nimigi ütleb, näete seda muutujat parooli tugevuse kontrollimiseks. Hindamissüsteem on seitsmest, üks punkt iga märgi lisamise ja tugeva parooli tunnuse eest.
Kontrollige, kas väiketähtede, suurtähtede, numbrite ja erimärkide arv on suurem või võrdne ühega, ja suurendage iga kohaloleku tugevust ühe võrra. Samamoodi kontrollige, kas pikkus ja ühine muutuja on ühega ja kas korduva märgi pikkus on võrdne nulliga. Kui see on tõene, suurendage tugevusmuutuja väärtust.
tugevus = 0
kui madalam_alfa_arv >= 1:
tugevus += 1kui ülemine_alfa_arv >= 1:
tugevus += 1kui number_count >= 1:
tugevus += 1kui eritunnuste_arv >= 1:
tugevus += 1kui pikkus == 1:
tugevus += 1kui tavaline == 1:
tugevus += 1
kuilen(korduv)== 0:
tugevus += 1
Kasutage mitmerealist stringi (kolm jutumärki), et kuvada ühes trükilauses mitu rida teksti. Kasutage karakteristikute arvu kuvamiseks sõnasõnalist Sringi interpolatsiooni või f-stringe või. Saate seda saavutada kirjutades f stringi alguses printlauses ja lisage muutujad lokkis sulgudesse. Kasutate stringide interpoleerimist, kuna printlause sisu on string, kuid muutujate väärtus on täisarv.
printida(f"""Teie paroolis on:
{lower_alpha_count} väiketähte
{upper_alpha_count} suurtähte
{number_count} numbrit
{special_char_count} erimärki
{length} pikkus
{common} levinud
{kordus} kordas
"Parooli skoor: {strength}/7""")
Lõpuks kasutage kasutajalt parooli saamiseks sisendlauset ja edastage see kasutajale check_password_strength funktsiooni. Parooli tugevuse põhjal kuvab programm skoori koos paroolis olevate omaduste arvuga.
parool = input("Sisestage parool:")
check_password_strength (parool)
Parooli tugevuse kontrollija väljund
Tugeva parooli sisestamisel mainitud omaduste põhjal kuvab Pythoni programm selle tugevuse 7/7:
Nõrga ja levinud parooli sisestamisel kuvab Pythoni programm tugevuse 1/7:
Paroolid ja turvalisus
Kuigi saate määrata kõigi aegade tugevaima parooli, võib häkker teie süsteemi sisse murda ka muudel viisidel. 95% küberrünnakutest on inimliku eksimuse tagajärg. Üks häkkerite levinumaid meetodeid on sotsiaalne manipuleerimine. Häkker võib saata teile võltslingid sotsiaalmeedia või e-kaubanduse veebisaitidele, mis näivad seaduslikud, kuid ohustavad teie parooli, kui te neid kasutate.
Nende tehnikate eest kaitsmiseks avage kindlasti ainult usaldusväärsest allikast pärinevad lingid ja sisestage või salvestage turvaliselt ainult oluline teave.