Trong bài viết này, chúng ta sẽ xem cách chúng ta có thể tạo các số Ngẫu nhiên an toàn có thể được sử dụng làm mật khẩu một cách hiệu quả. Cùng với các số Ngẫu nhiên, chúng tôi cũng có thể thêm các chữ cái và các ký tự khác để làm cho nó tốt hơn.
với những bí mật
Mô-đun bí mật có một chức năng được gọi là lựa chọn có thể được sử dụng để tạo mật khẩu có độ dài cần thiết bằng cách sử dụng hàm vòng lặp for và phạm vi.
Ví dụ
import secrets import string allowed_chars = string.ascii_letters + string.digits + string.printable pswd = ''.join(secrets.choice(allowed_chars) for i in range(8)) print("The generated password is: \n",pswd)
Đầu ra
Chạy đoạn mã trên cho chúng ta kết quả sau -
The generated password is: $pB7WY
với điều kiện tối thiểu
Chúng ta có thể buộc các điều kiện như chữ thường và chữ hoa cũng như chữ số phải là một phần của trình tạo mật khẩu. Một lần nữa ở đây chúng tôi sử dụng mô-đun bí mật.
Ví dụ
import secrets import string allowed_chars = string.ascii_letters + string.digits + string.printable while True: pswd = ''.join(secrets.choice(allowed_chars) for i in range(8)) if (any(c.islower() for c in pswd) and any(c.isupper() for c in pswd) and sum(c.isdigit() for c in pswd) >= 3): print("The generated pswd is: \n", pswd) break
Đầu ra
Chạy đoạn mã trên cho chúng ta kết quả sau -
The generated pswd is: p7$7nS2w
Mã thông báo ngẫu nhiên
Khi xử lý các url nếu bạn muốn Mã thông báo ngẫu nhiên là một phần của URL, chúng ta có thể sử dụng các phương pháp dưới đây từ mô-đun bí mật.
Ví dụ
import secrets # A random byte string tkn1 = secrets.token_bytes(8) # A random text string in hexadecimal tkn2 = secrets.token_hex(8) # random URL-safe text string url = 'https://thename.com/reset=' + secrets.token_urlsafe() print("A random byte string:\n ",tkn1) print("A random text string in hexadecimal: \n ",tkn2) print("A text string with url-safe token: \n ",url)
Đầu ra
Chạy đoạn mã trên cho chúng ta kết quả sau -
A random byte string: b'\x0b-\xb2\x13\xb0Z#\x81' A random text string in hexadecimal: d94da5763fce71a3 A text string with url-safe token: https://thename.com/reset=Rd8eVookY54Q7aTipZfdmz-HS62rHmRjSAXumZdNITo