Generator losowych haseł w Pythonie
Generuj bezpieczne, losowe hasła w Pythonie. Naucz się używać modułu losowego wraz ze stałymi łańcuchowymi, aby tworzyć niezawodne narzędzia bezpieczeństwa.
Przegląd
Generatory haseł wymagają dostępu do funkcji liczb losowych i mapowania ich na zestawy znaków ASCII.
Standardowa biblioteka Pythona udostępnia funkcje „losowe” i „tajne” umożliwiające dokonywanie bezstronnych, losowych wyborów.
Ze względu na potrzeby kryptograficzne lub wymagające wysokiego bezpieczeństwa moduł „tajemnice” Pythona jest preferowany zamiast modułu „losowego”, ponieważ jest silny kryptograficznie.
Dane wyjściowe kodu i wykonania
Łączenie wielkich i małych liter, cyfr i symboli w celu uzyskania 16-znakowego bezpiecznego ciągu.
import random
import string
def generate_password(length=12):
# Combine all character sets
characters = string.ascii_letters + string.digits + string.punctuation
# Randomly select characters until the desired length
password = ''.join(random.choice(characters) for _ in range(length))
return password
print("Generating 3 secure passwords:")
for i in range(3):
print(f"Password {i+1}: {generate_password(16)}")Generating 3 secure passwords:
Password 1: a!7T#nP@zQ8k*L1w
Password 2: xY9^vB4$mC2&pR5j
Password 3: dF3%hK6*tW9@nM1q
(Output will be random during real execution)Wdrażanie krok po kroku
- Automatyczne przypisywanie danych uwierzytelniających użytkownika
- Generowanie próbnych danych dla zestawów testów penetracyjnych
- Skrypty narzędzia administratora systemu do wdrażania serwera
Często zadawane pytania
Czy moduł `random` jest bezpieczny dla prawdziwych haseł?
Moduł `random` jest pseudolosowy. Do generowania faktycznie bezpiecznych haseł w środowisku produkcyjnym należy użyć modułu „tajemnice” Pythona, który wykorzystuje bezpieczną entropię na poziomie systemu operacyjnego.
Powiązane tematy
Zbuduj prosty kalkulator w Pythonie. Dowiedz się, jak mapować operatory matematyczne, wykonywać przepływy wykonywania przez użytkowników i natywnie obsługiwać logikę.
Gra polegająca na zgadywaniu liczb w PythonieKlasyczny projekt w Pythonie dla początkujących. Zbuduj interaktywną grę polegającą na zgadywaniu liczb, która wykorzystuje generowanie losowe, pętle while i sprawdzanie poprawności danych wejściowych użytkownika.