Cod Python si C++ care sa genereze o parola formata din litere, cifre si caractere speciale de o lungime introdusa de la tastatura
Parolele trebuie să fie cât mai complexe pentru a fi cât mai greu de ghicit sau spart de către persoanele neautorizate. Atacatorii cibernetici pot folosi diverse metode, precum atacuri brute force, dicționare de parole sau phishing, pentru a obține acces la conturile noastre și la datele personale. Dacă parolele noastre sunt slabe sau ușor de ghicit, hackerii pot avea acces ușor la acestea și pot cauza daune serioase, cum ar fi furtul de identitate sau pierderea de informații personale.
Prin folosirea unei parole complexe, formată dintr-o combinație de litere, cifre și caractere speciale, se reduce șansa ca aceasta să fie ghicită sau spartă. Cu cât o parolă este mai complexă și mai lungă, cu atât este mai greu de ghicit. De asemenea, este important să nu folosim aceeași parolă pentru mai multe conturi, pentru a evita ca un atacator să obțină acces la mai multe dintre acestea.
În concluzie, parolele complexe sunt esențiale pentru a proteja datele și informațiile personale de acces neautorizat. Este important să folosim parole puternice și să le actualizăm frecvent pentru a preveni atacurile cibernetice și pentru a ne asigura că datele noastre sunt în siguranță.
O problemă comună în informatică este generarea de parole sigure și complexe. Pentru a proteja datele și informațiile personale de acces neautorizat, este important să folosim parole puternice, formate dintr-o combinație de litere, cifre și caractere speciale.
O soluție pentru această problemă este să scriem un cod care să genereze o parolă sigură cu o lungime specificată de utilizator. Putem folosi limbajul de programare Python sau C++ pentru a crea un astfel de program.
Iată cum putem scrie codul în Python:
import random import string def genereaza_parola(lungime: int) -> str: """Generează o parolă puternică și aleatorie cu o lungime specificată. Args: lungime (int): Lungimea dorită a parolei. Returns: str: Parola generată. Raises: ValueError: Dacă lungimea este mai mică decât 6. """ if lungime < 6: raise ValueError("Lungimea parolei trebuie să fie cel puțin 6 caractere.") caractere = string.ascii_letters + string.digits + string.punctuation parola = ''.join(random.choice(caractere) for i in range(lungime)) return parola if __name__ == '__main__': try: lungime = int(input("Introduceți lungimea parolei dorite: ")) parola = genereaza_parola(lungime) print("Parola generată este:", parola) except ValueError as e: print("Eroare:", e)
În acest cod, utilizatorul este întâmpinat cu un prompt de la tastatură pentru a introduce lungimea parolei dorite. Apoi, programul generează o parolă aleatorie cu caractere selectate din lista de litere, cifre și caractere speciale prin utilizarea modulului random
și string
. Codul afișează parola generată la sfârșitul rulării.
Iată cum putem scrie codul pentru a genera o parolă în limbajul C++:
#include <iostream> #include <string> #include <ctime> #include <cstdlib> using namespace std; string genereaza_parola(int lungime) { /* Generează o parolă puternică și aleatorie cu o lungime specificată. Args: lungime (int): Lungimea dorită a parolei. Returns: str: Parola generată. Raises: invalid_argument: Dacă lungimea este mai mică decât 6. */ if (lungime < 6) { throw invalid_argument("Lungimea parolei trebuie să fie cel puțin 6 caractere."); } string caractere = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()_+{}[];':\"<>,.?/\\|"; srand(time(NULL)); string parola = ""; for (int i = 0; i < lungime; i++) { int index = rand() % caractere.length(); parola += caractere[index]; } return parola; } int main() { try { int lungime; cout << "Introduceți lungimea parolei dorite: "; cin >> lungime; string parola = genereaza_parola(lungime); cout << "Parola generată este: " << parola << endl; } catch (invalid_argument& e) { cout << "Eroare: " << e.what() << endl; } return 0; }
În această versiune a codului C++, am adăugat o funcție genereaza_parola
care primește lungimea parolei ca argument și returnează parola generată. Funcția aruncă, de asemenea, o excepție de tipul invalid_argument
dacă lungimea parolei este prea mică.
Am adăugat, de asemenea, un mesaj de eroare și anotări de tipuri pentru a face codul mai clar și mai ușor de înțeles. Pentru anotări, am folosit un stil similar cu cel din Python pentru a indica tipurile de date și tipurile de excepții.
În funcția main
, am adăugat un bloc try-catch
pentru a trata excepțiile generate de funcția genereaza_parola
.
Nu uita: Învață, exersează, repetă!
Author: Sebastian Chetroni
Website: https://zcoder.ro
Articole recente
- Olimpiada Nationala de Informatica 2023. Rezolvare problema „Cadouri” in C++, clasa a V-a
- Olimpiada Nationala de Informatica 2023. Rezolvare problema „Patinaj” in C++, clasa a V-a
- Olimpiada Judeteana de Informatica 2018. Rezolvare problema „Forus” in C++, clasa a V-a
- Olimpiada Judeteana de Informatica 2018. Rezolvare problema „Patrate” in C++, clasa a V-a
- Olimpiada Judeteana de Informatica 2019. Rezolvare problema „Cartele” in C++, clasa a V-a
Comentarii recente