I need to generate 10M (10000000) unquie random password everyday, per my code below,I will get 2~3 duplicated password in 10M.
- can use set() to remove duplicated password.
- tried to use a fixed letter (eg,A) as the first letter, then generators 7 random letters+ numbers, then use a fixed letter (B) as the second letter,etc.
length:12 prefer: 8 letter front,4 numbers.
Do you have any other solutions for this generating a serial of unqiue password?
from os import urandom
numbers = "23456789"
letters = "ABCDEFGHJKLMNPRSTUVWXYZ"
def generatePassword():
password = "".join(letters[ord(c) % len(letters)] for c in urandom(8))
password += "".join(numbers[ord(c) % len(numbers)] for c in urandom(4))
return password
password_lists = []
for index in xrange(100000000):
password_lists.append(generatePassword())
unqiue_password = set(password_lists)# removed duplicated password
Aucun commentaire:
Enregistrer un commentaire