def generate_random(self, size, alphabet=None): """Generate a random password, consisting of `size` characters from the alphabet `alphabet`. """ if alphabet: alphabet = self._expand_alphabet(alphabet) characters = [crypto.random_element(alphabet) for i in range(size)] return ''.join(characters)
def generate_diceware(self, size): """Generate a Diceware passwords of *size* words.""" words = [crypto.random_element(self.wordlist) for i in range(size)] return ' '.join(words)