Geração de senhas
Publicado por Perfil removido (última atualização em 08/07/2011)
[ Hits: 5.634 ]
Estou inciando com Python e aí está minha primeira classe.
Serve para gerar senhas de 7 tipos:
1- int = Inteiro
2- char = Letra
3- schar = Caractere Especial
4- intchar = Inteiro + Letra
5- intschar = Inteiro + Caractere Epecial
6- charschar = Letra + Caractere Epecial
7- fullmode = Inteiro + Letra + Caractere Epecial
Modo de usar:
size = 15
p = Password()
print('INTMODE...............: ', p.generate_int(size))
print('CHARMODE .............: ', p.generate_char(size))
print('SCHARMODE.............: ', p.generate_schar(size))
print('INTCHARMODE...........: ', p.generate_int_char(size))
print('INTSCHARMODE..........: ', p.generate_int_schar(size))
print('CHARSCHARMODE.........: ', p.generate_char_schar(size))
print('FULLMODE .............: ', p.generate_full(size))
Bem, é isso.
[]s
#encoding: UTF-8 ''' Created on 10/05/2011 @author: Orlando Xavier (ox@orlandoxavier.com) ''' import random class Password(object): ''' Gera a senha a partir do tipo e tamanho Os tipos podem ser 7: 1- int = Inteiro 2- char = Letra 3- schar = Caractere Especial 4- intchar = Inteiro + Letra 5- intschar = Inteiro + Caractere Epecial 6- charschar = Letra + Caractere Epecial 7- fullmode = Inteiro + Letra + Caractere Epecial ''' # Inteiros intmode = ['1','2','3','4','5','6','7','8','9'] # Caracteres charmode = ['a','b','c','d','e','f','g','h','i','j','k','l','m', 'n','o','p','q','r','s','t','u','v','w','x','y','z', 'A','B','C','D','E','F','G','H','I','J','K','L','M', 'N','O','P','Q','R','S','T','U','V','W','X','Y','Z'] # Caracteres Especiais scharmode = ['!','@','#','$','%','&amp;','*','(',')','=','+', ',','.',';','?','/','\\','|',':',';'] # Todos os modos juntos fullmode = ['1','2','3','4','5','6','7','8','9', 'a','b','c','d','e','f','g','h','i','j','k','l','m', 'n','o','p','q','r','s','t','u','v','w','x','y','z', 'A','B','C','D','E','F','G','H','I','J','K','L','M', 'N','O','P','Q','R','S','T','U','V','W','X','Y','Z', '!','@','#','$','%','&amp;','*','(',')','=','+', ',','.',';','?','/','\\','|',':',';'] # Lista auxiliar: serve para fazer decisões durante a geração de alguns modos list_int_aux = [0,1,2,3,4,5,6,7,8,9] def __init__(self): ''' Constructor ''' def generate_int(self, size): ''' Gera a senha com inteiros ''' if size > 0: generated = '' loop = 0 while (loop < size): random.shuffle(self.intmode) generated += self.intmode[0] loop += 1 return generated else: return False def generate_char(self, size): ''' Gera a senha com caracteres ''' if size > 0: generated = '' loop = 0 while (loop < size): random.shuffle(self.charmode) generated += self.charmode[0] loop += 1 return generated else: return False def generate_schar(self, size): ''' Gera a senha com caracteres especiais ''' if size > 0: generated = '' loop = 0 while (loop < size): random.shuffle(self.scharmode) generated += self.scharmode[0] loop += 1 return generated else: return False def generate_int_char(self, size): ''' Gera a senha com caracteres comuns e caracteres ''' if size > 0: generated = '' loop = 0 while (loop < size): random.shuffle(self.list_int_aux) if self.list_int_aux[0] % 2 == 0: random.shuffle(self.intmode) generated += self.intmode[0] else: random.shuffle(self.charmode) generated += self.charmode[0] loop += 1 return generated else: return False def generate_int_schar(self, size): ''' Gera a senha com inteiros e caracteres especiais ''' if size > 0: generated = '' loop = 0 while (loop < size): random.shuffle(self.list_int_aux) if self.list_int_aux[0] % 2 == 0: random.shuffle(self.intmode) generated += self.intmode[0] else: random.shuffle(self.scharmode) generated += self.scharmode[0] loop += 1 return generated else: return False def generate_char_schar(self, size): ''' Gera a senha com caracteres comuns e caracteres especiais ''' if size > 0: generated = '' loop = 0 while (loop < size): random.shuffle(self.list_int_aux) if self.list_int_aux[0] % 2 == 0: random.shuffle(self.charmode) generated += self.charmode[0] else: random.shuffle(self.scharmode) generated += self.scharmode[0] loop += 1 return generated else: return False def generate_full(self, size): ''' Gera a senha com todos os tipos de caractere ''' if size > 0: generated = '' loop = 0 while (loop < size): random.shuffle(self.fullmode) generated += self.fullmode[0] loop += 1 return generated else: return False
Mini-dicionário de termos em Python e PyQT
Um novo hello World, com checkbox
Gerador de grafos no formato .gif
Conversor entre as moedas real e dolar
Atualizando o Passado: Linux no Lenovo G460 em 2025
aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
O macete do Warsaw no Linux Mint e cia
Um modo leve de ouvir/ver áudio/vídeo da internet em máquinas pererecas
Resolver algumas mensagens de erro do SSH
Instalar módulo de segurança do Banco do Brasil Warsaw do tipo .run
Sem espaço na partição home (2)
O que você está ouvindo agora? [2] (190)
Procrastinação e autossabotagem são problemas muito comuns na sociedad... (5)